Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"name": "agents-shipgate",
"source": "./plugins/claude-code",
"description": "Run Agents Shipgate Tool-Use Readiness workflows from Claude Code: detect whether Shipgate applies, bootstrap the advisory gate, verify agent-capability PRs, and triage findings without fabricating human approval. Requires the agents-shipgate CLI (pipx install agents-shipgate, runtime contract 15).",
"version": "0.16.0b4",
"version": "0.16.0b5",
"author": {
"name": "Three Moons Lab",
"url": "https://threemoonslab.com/"
Expand Down
34 changes: 17 additions & 17 deletions .well-known/agents-shipgate.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"name": "agents-shipgate",
"display_name": "Agents Shipgate",
"tagline": "The deterministic merge gate for AI-generated agent capability changes",
"version": "0.16.0b4",
"version": "0.16.0b5",
"license": "Apache-2.0",
"publisher": {
"name": "Three Moons Lab",
Expand Down Expand Up @@ -172,16 +172,16 @@
"codex_boundary_result_schema_path": "docs/codex-boundary-result-schema.v2.json",
"agent_boundary_result_schema_version": "shipgate.agent_boundary_result/v1",
"agent_boundary_result_schema_path": "docs/agent-boundary-result-schema.v1.json",
"report_schema_version": "0.32",
"packet_schema_version": "0.10",
"verifier_schema_version": "0.3",
"report_schema_version": "0.33",
"packet_schema_version": "0.11",
"verifier_schema_version": "0.4",
"verify_run_schema_version": "shipgate.verify_run/v2",
"agent_handoff_schema_version": "shipgate.agent_handoff/v3",
"agent_handoff_schema_path": "docs/agent-handoff-schema.v3.json",
"agent_handoff_schema_version": "shipgate.agent_handoff/v4",
"agent_handoff_schema_path": "docs/agent-handoff-schema.v4.json",
"agent_handoff_artifact": "agents-shipgate-reports/agent-handoff.json",
"contract_version": "15",
"contract_version": "16",
"minimum_control_contract_version": "14",
"local_agent_contract_schema_version": "4",
"local_agent_contract_schema_version": "5",
"inputs": [
"mcp",
"openapi",
Expand Down Expand Up @@ -242,8 +242,8 @@
"scenario": "scenario.json",
"governance_benchmark_result": "benchmark/agent-pr-governance/results/result.json"
},
"capability_lock_schema_version": "0.5",
"capability_lock_diff_schema_version": "0.6",
"capability_lock_schema_version": "0.6",
"capability_lock_diff_schema_version": "0.7",
"preflight_schema_version": "0.3",
"attestation_schema_version": "0.4",
"registry_schema_version": "0.3",
Expand All @@ -252,7 +252,7 @@
"host_grants_baseline_schema_version": "0.2",
"host_grants_drift_schema_version": "0.2",
"trigger_catalog_schema_version": "0.2",
"capability_standard_version": "0.4",
"capability_standard_version": "0.5",
"governance_benchmark_catalog_schema_version": "0.2",
"governance_benchmark_result_schema_version": "0.2",
"supporting_provisional_surfaces": [
Expand Down Expand Up @@ -396,17 +396,17 @@
"static_verdict_disclaimer": "This verdict covers deterministic static evidence only. Agents Shipgate did not execute the agent or prove runtime behavior, tool routing, credential enforcement, or safety.",
"schemas": {
"manifest": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/manifest-v0.1.json",
"report": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/report-schema.v0.32.json",
"report": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/report-schema.v0.33.json",
"agent_result": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/agent-result-schema.v2.json",
"agent_boundary_result": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/agent-boundary-result-schema.v1.json",
"codex_boundary_result": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/codex-boundary-result-schema.v2.json",
"verifier": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/verifier-schema.v0.3.json",
"verifier": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/verifier-schema.v0.4.json",
"verify_run": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/verify-run-schema.v2.json",
"agent_handoff": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/agent-handoff-schema.v3.json",
"packet": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/packet-schema.v0.10.json",
"agent_handoff": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/agent-handoff-schema.v4.json",
"packet": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/packet-schema.v0.11.json",
"preflight": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/preflight-schema.v0.3.json",
"capability_lock": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/capability-lock-schema.v0.5.json",
"capability_lock_diff": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/capability-lock-diff-schema.v0.6.json",
"capability_lock": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/capability-lock-schema.v0.6.json",
"capability_lock_diff": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/capability-lock-diff-schema.v0.7.json",
"governance_benchmark_catalog": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/governance-benchmark-catalog-schema.v0.2.json",
"governance_benchmark_result": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/governance-benchmark-result-schema.v0.2.json",
"feedback": "https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/docs/feedback-schema.v0.1.json",
Expand Down
23 changes: 12 additions & 11 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Agents Shipgate · Agent Instructions

Authoritative instructions for AI coding agents (Claude Code, Codex, Cursor, Aider, Cline, Windsurf, Devin, or any other harness — see [`docs/agents/any-coding-agent.md`](docs/agents/any-coding-agent.md)) working **with** this repository or a project that uses Agents Shipgate.
Expand Down Expand Up @@ -363,7 +363,7 @@
- Audit envelopes: `release_decision.contribution_rules[]`, `policy_audit`,
`privacy_audit`, `heuristics_filter` — explanatory, never a second gate

The current schema is [`docs/report-schema.v0.32.json`](docs/report-schema.v0.32.json). Emitted reports carry `report_schema_version: "0.32"`; v0.32 adds the required Conductor OSS framework summary over v0.31's root-reachable binding contract. A `passed` result requires a complete root-reachable static binding graph plus complete, conflict-free identity, effect, and authority evidence for every reachable action, evaluation of all applicable controls, and no policy condition requiring review. Every release decision explicitly carries `static_analysis_only: true`, `runtime_behavior_verified: false`, and `static_verdict_disclaimer`; packet §1 mirrors them. Binding and semantic gaps are not Findings and cannot be suppressed or baselined. See [`docs/passed-verdict-contract.md`](docs/passed-verdict-contract.md) for the exact claim and [`docs/agent-contract-current.md`](docs/agent-contract-current.md) for version history. v0.31 remains frozen at [`docs/report-schema.v0.31.json`](docs/report-schema.v0.31.json).
The current schema is [`docs/report-schema.v0.33.json`](docs/report-schema.v0.33.json). Emitted reports carry `report_schema_version: "0.33"`; typed predicate support prevents heuristic evidence from being upgraded by policy severity or block metadata. A `passed` result requires a complete root-reachable static binding graph plus complete, conflict-free identity, effect, authority, and applicable-policy evidence for every reachable action. Every release decision explicitly carries `static_analysis_only: true`, `runtime_behavior_verified: false`, and `static_verdict_disclaimer`; packet §1 mirrors them. Binding, semantic, and policy-applicability gaps are not Findings and cannot be suppressed or baselined. See [`docs/passed-verdict-contract.md`](docs/passed-verdict-contract.md) for the exact claim and [`docs/agent-contract-current.md`](docs/agent-contract-current.md) for version history. v0.32 remains frozen at [`docs/report-schema.v0.32.json`](docs/report-schema.v0.32.json).

**Release gating signal**: prefer `release_decision.decision` (`"blocked" | "review_required" | "insufficient_evidence" | "passed"`) over `summary.status`. The new field is **baseline-aware** — a baseline-matched critical surfaces in `release_decision.review_items` (accepted debt), not `release_decision.blockers`. `summary.status` stays baseline-blind for v0.7 compatibility, so a baseline-matched-only critical produces both `summary.status = "release_blockers_detected"` AND `release_decision.decision = "review_required"` (intentional divergence — see [STABILITY.md](STABILITY.md#release_decisiondecision-vs-summarystatus)). `insufficient_evidence` (added v0.14) signals that the scan saw too many low-confidence tools or source-loader warnings to be trustworthy; consumers that switch on the enum must fall back to `review_required` for unknown future values.

Expand Down Expand Up @@ -443,7 +443,7 @@
### Where is the report schema?

Parse `agents-shipgate-reports/report.json` and validate against
[`docs/report-schema.v0.32.json`](docs/report-schema.v0.32.json) (current).
[`docs/report-schema.v0.33.json`](docs/report-schema.v0.33.json) (current).
Older reports (`report_schema_version: "0.10"`) validate against the
frozen [`docs/report-schema.v0.10.json`](docs/report-schema.v0.10.json).
Do not scrape Markdown when JSON is available.
Expand Down Expand Up @@ -481,7 +481,8 @@
| What | Path | Stable |
|---|---|---|
| Manifest schema | [`docs/manifest-v0.1.json`](docs/manifest-v0.1.json) | `0.1` |
| Report schema (current) | [`docs/report-schema.v0.32.json`](docs/report-schema.v0.32.json) | `0.32` |
| Report schema (current) | [`docs/report-schema.v0.33.json`](docs/report-schema.v0.33.json) | `0.33` |
| Report schema (v0.32 frozen reference) | [`docs/report-schema.v0.32.json`](docs/report-schema.v0.32.json) | `0.32` |
| Report schema (v0.31 frozen reference) | [`docs/report-schema.v0.31.json`](docs/report-schema.v0.31.json) | `0.31` |
| Report schema (v0.30 frozen reference) | [`docs/report-schema.v0.30.json`](docs/report-schema.v0.30.json) | `0.30` |
| Report schema (v0.29 frozen reference) | [`docs/report-schema.v0.29.json`](docs/report-schema.v0.29.json) | `0.29` |
Expand All @@ -490,7 +491,7 @@
| Report schema (v0.26 frozen reference) | [`docs/report-schema.v0.26.json`](docs/report-schema.v0.26.json) | `0.26` |
| Report schema (v0.25 frozen reference) | [`docs/report-schema.v0.25.json`](docs/report-schema.v0.25.json) | `0.25` |
| Verify-run schema | [`docs/verify-run-schema.v2.json`](docs/verify-run-schema.v2.json) | `shipgate.verify_run/v2` |
| Agent handoff schema | [`docs/agent-handoff-schema.v3.json`](docs/agent-handoff-schema.v3.json) | `shipgate.agent_handoff/v3` |
| Agent handoff schema | [`docs/agent-handoff-schema.v4.json`](docs/agent-handoff-schema.v4.json) | `shipgate.agent_handoff/v4` |
| Agent boundary result schema | [`docs/agent-boundary-result-schema.v1.json`](docs/agent-boundary-result-schema.v1.json) | `shipgate.agent_boundary_result/v1` |
| Codex boundary result schema (deprecated frozen projection) | [`docs/codex-boundary-result-schema.v2.json`](docs/codex-boundary-result-schema.v2.json) | `shipgate.codex_boundary_result/v2` |
| Report schema (v0.24 frozen reference) | [`docs/report-schema.v0.24.json`](docs/report-schema.v0.24.json) | `0.24` |
Expand All @@ -512,17 +513,17 @@
| Report schema (v0.8 frozen reference) | [`docs/report-schema.v0.8.json`](docs/report-schema.v0.8.json) | `0.8` |
| Report schema (v0.7 frozen reference) | [`docs/report-schema.v0.7.json`](docs/report-schema.v0.7.json) | `0.7` |
| Report schema (v0.6 frozen reference) | [`docs/report-schema.v0.6.json`](docs/report-schema.v0.6.json) | `0.6` |
| Packet schema (Release Evidence Packet, latest) | [`docs/packet-schema.v0.10.json`](docs/packet-schema.v0.10.json) | `0.10` |
| Packet schema (Release Evidence Packet, latest) | [`docs/packet-schema.v0.11.json`](docs/packet-schema.v0.11.json) | `0.11` |
| Agent result schema (current) | [`docs/agent-result-schema.v2.json`](docs/agent-result-schema.v2.json) | `agent_result_v2` |
| Verifier schema (current) | [`docs/verifier-schema.v0.3.json`](docs/verifier-schema.v0.3.json) | `0.3` |
| Agent handoff schema (current) | [`docs/agent-handoff-schema.v3.json`](docs/agent-handoff-schema.v3.json) | `shipgate.agent_handoff/v3` |
| Verifier schema (current) | [`docs/verifier-schema.v0.4.json`](docs/verifier-schema.v0.4.json) | `0.4` |
| Agent handoff schema (current) | [`docs/agent-handoff-schema.v4.json`](docs/agent-handoff-schema.v4.json) | `shipgate.agent_handoff/v4` |
| Preflight schema (current) | [`docs/preflight-schema.v0.3.json`](docs/preflight-schema.v0.3.json) | `0.3` |
| Host-grants inventory schema | [`docs/host-grants-inventory-schema.v0.2.json`](docs/host-grants-inventory-schema.v0.2.json) | `0.2` |
| Host-grants baseline schema | [`docs/host-grants-baseline-schema.v0.2.json`](docs/host-grants-baseline-schema.v0.2.json) | `0.2` |
| Host-grants drift schema | [`docs/host-grants-drift-schema.v0.2.json`](docs/host-grants-drift-schema.v0.2.json) | `0.2` |
| Capability standard | [`docs/capability-standard.md`](docs/capability-standard.md) | `0.4` |
| Capability lock schema | [`docs/capability-lock-schema.v0.5.json`](docs/capability-lock-schema.v0.5.json) | `0.5` |
| Capability lock diff schema | [`docs/capability-lock-diff-schema.v0.6.json`](docs/capability-lock-diff-schema.v0.6.json) | `0.6` |
| Capability standard | [`docs/capability-standard.md`](docs/capability-standard.md) | `0.5` |
| Capability lock schema | [`docs/capability-lock-schema.v0.6.json`](docs/capability-lock-schema.v0.6.json) | `0.6` |
| Capability lock diff schema | [`docs/capability-lock-diff-schema.v0.7.json`](docs/capability-lock-diff-schema.v0.7.json) | `0.7` |
| Governance benchmark catalog schema | [`docs/governance-benchmark-catalog-schema.v0.2.json`](docs/governance-benchmark-catalog-schema.v0.2.json) | `0.2` |
| Governance benchmark result schema | [`docs/governance-benchmark-result-schema.v0.2.json`](docs/governance-benchmark-result-schema.v0.2.json) | `0.2` |
| Check catalog | [`docs/checks.json`](docs/checks.json) | regenerated each release |
Expand Down Expand Up @@ -582,7 +583,7 @@
`agents-shipgate evidence-packet --from <packet.json|report.json>` to
re-render. The full packet contract (fixed sections, disclaimers,
`evidence_matrix` rules) lives in
[STABILITY.md §Release Evidence Packet](STABILITY.md#release-evidence-packet-v010)
[STABILITY.md §Release Evidence Packet](STABILITY.md#release-evidence-packet-v011)
and [`docs/agent-contract-current.md`](docs/agent-contract-current.md#read-these-for-release-review).

Exit codes (stable):
Expand Down
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,27 @@

## Unreleased

- **Evidence-basis policy gate (P0, `0.16.0b5`).** Semantic claims and risk
hints now carry a typed evidence basis, stable claim IDs, and derived policy
eligibility. Policy-pack and action-policy predicates evaluate to
`matched | not_matched | indeterminate | conflicting`; rule severity,
confidence, `block: true`, manual tags, and risk overrides cannot upgrade
heuristic or incomplete evidence into an authoritative finding.
- **Non-waivable policy applicability gaps.** Heuristic-only, mixed, unknown,
or conflicting applicability is emitted outside Findings and routes to
`insufficient_evidence`. Baselines, suppressions, severity overrides,
acknowledgements, and `--no-heuristics` cannot hide it. Supported findings
expose deterministic predicate support and a `support_hash`; baseline v0.8
requires that hash to remain equal. Pre-v0.8 baselines cannot supply that
binding, so supported findings re-gate as new until a human reviews the new
evidence and re-runs `agents-shipgate baseline save`.
- **Evidence contract versions.** Runtime contract advances to v16; report to
v0.33; packet to v0.11; verifier to v0.4; handoff to v4; policy pack to
v0.4; capability standard to v0.5; lock/diff to v0.6/v0.7; action snapshot
to v0.4; downstream local contract to v5; and safety qualification formats
to v3. Existing finding fingerprints and all prior schema files remain
frozen.

- **Complete zero-config multi-host boundary (`0.16.0b4`).** The local
boundary check now evaluates every recognized changed Codex, Claude Code,
Cursor, VS Code MCP, shared instruction, and GitHub workflow surface through
Expand Down
Loading