feat(claude): record agents-component parity evidence under G5 gate - #346
Conversation
🦋 Changeset detectedLatest commit: c90a2fb The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c90a2fb234
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| }, | ||
| "observedCliVersion": "2.1.250", | ||
| "plugin": { | ||
| "agents": { |
There was a problem hiding this comment.
Reconcile the added agent row with existing provenance
Adding plugin.agents makes the capability table internally contradictory: the pre-existing provenance entry at claude-2.1.250.json:553 still states that no agents capability row will be published until the component is admitted, while this change publishes fifteen such rows without admitting it. Consumers auditing the pinned evidence cannot determine whether the gate prohibits only emission or also capability rows, so update that provenance statement to reflect the new unavailable-row policy.
Useful? React with 👍 / 👎.
| if (target === 'claude') { | ||
| expect(sha256Hex(capability)).toBe('4db46064cce1e3f74bceb9e36a4c6da860acf183c1c1ccbb65f692d22d4e17d6'); |
There was a problem hiding this comment.
Remove the repository-owned capability-table hash pin
This exact-content assertion means every future Claude capability evidence edit fails the metadata suite until an unrelated digest literal is re-pinned. That is the churn the documented hashing policy explicitly prohibits in packages/agent-bundle/README.md:550-553, where repository-owned capability tables are intentionally versioned by Git and adapterRevision rather than hashes; keep hashing the external schema snapshots, but do not add a byte hash for this capability JSON.
Useful? React with 👍 / 👎.
Summary
Slice 4 of the #187 Claude parity pass: agents-component parity evidence under the G5 gate.
The plugin
agents/component stays deliberately deferred per the #100 stage-2 G5 narrowing (PR #220, #107 revision 3) — re-admitting agents needs its own evidence-backed increment. This PR delivers the parity evidence the gate permits, with no new emission surface:agentscapability rows incapabilities/claude-2.1.250.json, allunavailablewith reasons citing the G5 deferral and dated doc evidence: the component itself, every documented frontmatter field (name,description,model,effort,maxTurns,tools,disallowedTools,skills,memory,background,isolation: worktree), and the plugin-agent security contract (hooks,mcpServers,permissionModeare documented as ignored for plugin-shipped agents).agents/agents.<field>capability keys on the Claude adapter and intersected through the unified plugin adapter.claude plugin validate --strictaccepts a plugin agent exercising every documented field, and also accepts a negative fixture declaringhooks,mcpServers, andpermissionMode: bypassPermissionswithout warning — strict validation does not enforce the loader-side ignore contract. Recorded in the capability evidence and a newagentsComponentNotesPROVENANCE entry.settings.agentis unchanged and remains the only compiler touchpoint.Revisions
adapterRevision: claude1.17.0→1.18.0, unified plugin1.15.0→1.16.0; capability-table sha re-pinned.Test plan
AGENT_BUNDLE_NATIVE_HOST_CONTRACTS=1): 407 tests, 0 failed, 0 skippedpnpm -w typecheckpnpm -w lintPart of #187.