Commit Graph
28 Commits
Author SHA1 Message Date
Michel Roegl-Brunner e15db754a6 github: close PRs that do not follow the PR template
Add a workflow that validates description, prerequisites, and type-of-change checkboxes, with exemptions for bots, maintainers, and the keep open label.
2026-07-16 11:46:06 +02:00
Michel Roegl-Brunner 29c25a0ab8 bot blacklist 2026-06-16 13:01:26 +02:00
Michel Roegl-BrunnerandCursor e60c1f31c2 Stop spinner for deleted/disabled info messages
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-16 11:11:23 +02:00
Michel Roegl-Brunner 28411ecb5f New workflow to delete stale branches 2026-06-03 11:13:00 +02:00
Michel Roegl-BrunnerandClaude Opus 4.8 354ceef128 fix(pocketbase-ai-bot): open CT-defaults sync PR with built-in GITHUB_TOKEN
The App installation token lacks contents:write, so creating the
pocketbase-sync/<slug> branch failed with 403 "Resource not accessible by
integration". Mirror the slash bot: run the CT-defaults branch/commit/PR
operations with the built-in GITHUB_TOKEN (workflow now requests
contents:write + pull-requests:write), while the App token still posts the
user-facing comments/reactions. ensureBranch/upsertCtDefaultsPr shadow
ghRequest with a GITHUB_TOKEN-authenticated ghDefault.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 14:11:43 +02:00
Michel Roegl-BrunnerandClaude Opus 4.8 1a6dbb0bf8 fix(pocketbase-ai-bot): use @pocketbase-bot handle and harden confirm flow
- Trigger and all user-facing text now use @pocketbase-bot (the bare
  @pocketbase handle collides with an existing account)
- Confirm flow only trusts a pocketbase-pending marker found in a comment
  authored by this bot app (performed_via_github_app.id == PB_BOT_APP_ID),
  preventing a forged-marker spoof; decoded operations are re-validated
  against the field/op allow-lists before applying (shared sanitizeOperations)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 14:03:17 +02:00
Michel Roegl-BrunnerandClaude Opus 4.8 f14eca3bc9 feat(pocketbase-ai-bot): natural-language @pocketbase bot via GitHub Models
Adds an isolated workflow that lets maintainers manage PocketBase script
records in plain English by mentioning @pocketbase in an issue/PR comment
(e.g. "@pocketbase change RAM to 4096 on zigbee2mqtt").

- Interprets the request with GitHub Models (built-in GITHUB_TOKEN + models:read)
- Posts under a dedicated GitHub App identity (PB_BOT_APP_ID/PB_BOT_APP_PRIVATE_KEY)
- Propose-then-confirm: replies with the parsed change set and a hidden marker;
  applies only after "@pocketbase confirm"
- Reuses the slash bot's field/note/method allow-lists, validation, revalidate,
  and CT-defaults sync PR logic; self-author guard prevents trigger loops
- Existing /pocketbase slash bot is untouched (triggers do not overlap)

Inert until the GitHub App is created and its two secrets are added.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 13:54:12 +02:00
Michel Roegl-BrunnerandClaude Opus 4.8 d4b4880e0d fix(pocketbase-bot): recognize /pocketbase command on any line of a comment
- Job gate uses contains() instead of startsWith() so comments with leading
  text still trigger the bot
- Script scans all lines for the first one starting with /pocketbase, instead
  of only reading line 0
- Command-line detection moved above the permission check so mid-sentence
  mentions exit silently without a "not authorized" reply

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 11:52:47 +02:00
Michel Roegl-BrunnerandClaude Opus 4.8 9dc08aa8c1 ci(workflows): harden new-script close, slug-match VED issue close, 7-day lock
- close-new-script-prs: trigger on added script file OR label, exempt by
  author_association (OWNER/MEMBER/COLLABORATOR) instead of team API
- close_issue_in_dev: match VED issues by derived slug, close all matches
- lock-issue: lock closed issues after 7 days instead of 3

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 11:43:08 +02:00
Michel Roegl-Brunner 513e58b5d1 enhance pocketbase bot 2026-04-28 10:10:05 +02:00
Michel Roegl-Brunner 968e96e2c7 Delete removed scripts from pocketbase 2026-03-11 13:37:35 +01:00
Michel Roegl-Brunner 516d8d7a0f toggle is_dev to false when a new script gets merged 2026-03-10 16:07:51 +01:00
Michel Roegl-Brunner a11f282a43 Update workflow 2026-03-10 15:44:28 +01:00
Michel Roegl-Brunner eba96a55d2 New workflow to update last updated field in Database when a script gets changed, also adds last_update_link to link to the latest changes 2026-03-10 15:33:15 +01:00
Michel Roegl-Brunner 37f4585110 New workflow to update last updated field in Database when a script gets changed, also adds last_update_link to link to the latest changes 2026-03-10 15:33:15 +01:00
Michel Roegl-Brunner 88d1494e46 Adapt workflow 2026-03-02 16:28:35 +01:00
Michel Roegl-Brunner 3701737eff Workflow test 2026-03-02 15:35:41 +01:00
Michel Roegl-Brunner b39e296684 Workflow test 2026-03-02 15:35:28 +01:00
Michel Roegl-Brunner d8a7620c64 Workflow test 2026-03-02 15:26:52 +01:00
Michel Roegl-Brunner 7d5900de18 Add workflow to push json changes to pocketbase 2026-03-02 15:26:41 +01:00
Michel Roegl-Brunner 5c246310f4 Workflow test 2026-03-02 14:46:46 +01:00
Michel Roegl-Brunner bdad2cc941 Add workflow to push json changes to pocketbase 2026-03-02 14:46:31 +01:00
Michel Roegl-Brunner 564a8136a5 Workflow test 2026-03-02 14:38:01 +01:00
Michel Roegl-Brunner 00047c95b8 Add workflow to push json changes to pocketbase 2026-03-02 14:37:50 +01:00
Michel Roegl-Brunner 9849ce79a7 Workflow test 2026-03-02 14:36:14 +01:00
Michel Roegl-Brunner cea9858193 Add workflow to push json changes to pocketbase 2026-03-02 14:36:02 +01:00
Michel Roegl-Brunner ee8ea672ef Workflow test 2026-03-02 14:33:35 +01:00
Michel Roegl-Brunner fc59910bd2 Add workflow to push json changes to pocketbase 2026-03-02 14:15:44 +01:00