chore(sdk): upgrade @paperclipai/plugin-sdk to 2026.525.0

200-version bump from 2026.325.0 → 2026.525.0 (matches host).

**Why now**: host is already on 2026.525.0; staying on 325 was unnecessary
technical debt. Production logs showed real bugs ("missing, expired,
or unknown invocation scope") that newer SDK versions are known to
have fixed.

**Compatibility**:
- TS build clean with zero changes to worker.ts or legal-api.ts.
- apiVersion: 1 still the schema (no v2 yet).
- Plugin activated successfully — 8 tools + 3 jobs + 1 webhook + 2 event
  subs all registered, worker reports "Legal AI plugin ready".

**Manifest gaps fixed**: added 3 capabilities that the worker actually
uses (one of them was the root cause of repeated host-side errors):
* `agents.invoke` — required by `ctx.agents.invoke()` calls (CEO wakeup
  from event handlers + comment routing). Previously the plugin was
  invoking agents without the declared capability, raising
  "missing scope" errors on every issue.created event.
* `issue.comments.read` — required by `ctx.issues.listComments()`
  calls in the comment routing path.
* `issue.interactions.create` — forward-looking capability for the
  AskUserQuestion-like flows the SDK exposes via `createInteraction`.

**Backup**: full 5-layer snapshot at /tmp/plugin-legal-ai-backup-*.tar.gz
+ tag `pre-sdk-upgrade-2026-05-26` (pushed). Rollback: `git reset --hard
pre-sdk-upgrade-2026-05-26 && npm ci && npm run build && reinstall`.

Closes TaskMaster #26.
This commit is contained in:
2026-05-26 12:19:04 +00:00
parent a8999b70c2
commit 6388062cdc
3 changed files with 12 additions and 9 deletions

16
package-lock.json generated
View File

@@ -8,7 +8,7 @@
"name": "@marcusgroup/plugin-legal-ai", "name": "@marcusgroup/plugin-legal-ai",
"version": "0.1.0", "version": "0.1.0",
"dependencies": { "dependencies": {
"@paperclipai/plugin-sdk": "^2026.325.0" "@paperclipai/plugin-sdk": "^2026.525.0"
}, },
"devDependencies": { "devDependencies": {
"@biomejs/biome": "2.4.11", "@biomejs/biome": "2.4.11",
@@ -180,12 +180,12 @@
} }
}, },
"node_modules/@paperclipai/plugin-sdk": { "node_modules/@paperclipai/plugin-sdk": {
"version": "2026.325.0", "version": "2026.525.0",
"resolved": "https://registry.npmjs.org/@paperclipai/plugin-sdk/-/plugin-sdk-2026.325.0.tgz", "resolved": "https://registry.npmjs.org/@paperclipai/plugin-sdk/-/plugin-sdk-2026.525.0.tgz",
"integrity": "sha512-axAIK90QVrRihlCXcGoePDc0qaf0weqOwUagWsp88v6T2NXAWXALCzFtY4IipPnaVli6xZe5ZsuC+gTlPXhMKQ==", "integrity": "sha512-7ivXbFSwH7cS+/2WNbPwQve5vVtLnqgxX5lmqTKn+i3fOY03d5KHaYF2bbI5zeTkAAwwEJ0Nz3rfBWNPguRRUw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@paperclipai/shared": "2026.325.0", "@paperclipai/shared": "2026.525.0",
"zod": "^3.24.2" "zod": "^3.24.2"
}, },
"bin": { "bin": {
@@ -201,9 +201,9 @@
} }
}, },
"node_modules/@paperclipai/shared": { "node_modules/@paperclipai/shared": {
"version": "2026.325.0", "version": "2026.525.0",
"resolved": "https://registry.npmjs.org/@paperclipai/shared/-/shared-2026.325.0.tgz", "resolved": "https://registry.npmjs.org/@paperclipai/shared/-/shared-2026.525.0.tgz",
"integrity": "sha512-l0ZeaQhswxjAyJ6G/TdgyrfbEgFKqdkly4zn4QgOPCu+x8j8Gma51Xf45M2Br3ILJlIx93HhT3hAzWKChdxgMg==", "integrity": "sha512-fbVrEx96oxkxXbRBFDLAgW5Z0lRC7Ii+BeCNhKqKRCg9m2IwtP97CGoOeAROdRrvRpP8Neb3vgaaDbDjXT74lQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"zod": "^3.24.2" "zod": "^3.24.2"

View File

@@ -15,7 +15,7 @@
"biome:fix": "biome check --write src/" "biome:fix": "biome check --write src/"
}, },
"dependencies": { "dependencies": {
"@paperclipai/plugin-sdk": "^2026.325.0" "@paperclipai/plugin-sdk": "^2026.525.0"
}, },
"devDependencies": { "devDependencies": {
"@biomejs/biome": "2.4.11", "@biomejs/biome": "2.4.11",

View File

@@ -12,8 +12,11 @@ export default {
"issues.read", "issues.read",
"issues.create", "issues.create",
"issues.update", "issues.update",
"issue.comments.read",
"issue.comments.create", "issue.comments.create",
"issue.interactions.create",
"agent.tools.register", "agent.tools.register",
"agents.invoke",
"http.outbound", "http.outbound",
"plugin.state.read", "plugin.state.read",
"plugin.state.write", "plugin.state.write",