Task-scoped software evidence with explicit gate results and versioned local integrity records. Sovereign Software Witness Protocol for deterministic build attestation and supply-chain integrity verification.
SSWP MCP has well-structured schemas with proper JSON Schema validation (AJV), clear risk classifications (WRITE/READ_ONLY), and explicit approval-gating for sensitive operations. However, parameter descriptions are sparse or missing entirely, most params lack explanatory text beyond type constraints. Tool descriptions are domain-specific but assume deep familiarity with SSWP attestation concepts; they would benefit from clearer WHEN/WHY guidance for LLM selection. No output schemas are documented, forcing LLMs to infer response structure. Error handling is present but minimal, no recovery guidance or actionable error messages visible in the dispatch logic.
Local metadata checks. Flags unpinned versions and missing integrity declarations; does not establish maliciousness, CVE coverage or package safety.
Run individually approved witness actions. Each item requires its own one-use approval receipt.
Read-only Git execution and lockfile-presence checks; no project build scripts run.
Retry durable delivery of committed attestations to Brain. Delivery is idempotent; Brain consumption status is separate.
Versioned local ledger and verification status. Historical records are preserved separately and are not certified by this chain.
Find registry nodes by literal name, description or path.
Parameter descriptions missing or minimal. 'repoPath', 'task_id', 'approval', 'query', 'limit', 'packages' lack explanatory text beyond type constraints. LLMs cannot infer when to use 'query' vs 'name' or what format 'approval' expects.
No output schemas documented. Tool descriptions state what they return (e.g. 'Latest check per node', 'Versioned local ledger') but do not specify field names, types, or structure. LLMs must guess response format.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Latest check per node with historical timestamps, current path availability, capture delivery status and v2 ledger integrity.
Check all nested fields of a v2 attestation against its content hash. Legacy formats are unverified. A matching hash establishes internal consistency, not authorship or truth.
Run explicitly configured checks within an operator-approved project. Requires a task-bound, one-use receipt from omega_authorize_action. Missing evidence is INCONCLUSIVE; a successful build does not prove reproducibility.
Error handling is minimal. The dispatch() function validates schemas and throws generic errors ('Unknown tool', 'Invalid input') with no recovery guidance. No actionable error messages or classification (retryable vs fatal).
Tool descriptions assume domain expertise. Phrases like 'task-bound, one-use receipt', 'v2 attestation', 'materialization', and 'ledger integrity' are domain-specific jargon. LLMs unfamiliar with SSWP cannot determine when to call these tools.
Approval parameter structure undocumented. 'approval' is typed as {type: 'object'} with no nested schema, description, or example. LLMs cannot construct valid approval objects without external documentation.