بنقرة واحدة
frozen-public-contracts
How to ship diagnostics without breaking a frozen MCP/JSON contract
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
How to ship diagnostics without breaking a frozen MCP/JSON contract
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Resolve knowledge gaps: fetch unresolved gaps, assess sensitivity, generate research queries, ingest findings, and close gaps with a resolution slug.
Interrupt-driven alerts: detect and surface new contradictions, stale pages, resolved gaps, and embedding drift. Priority-classified with deduplication.
Ingest meeting notes, articles, documents, and conversations into Quaid. Handles idempotent ingestion for exact-byte duplicates and vault-backed sync.
Keep the brain healthy: detect and resolve contradictions via the correction / supersede workflow, validate referential integrity, triage knowledge gaps, find orphaned pages, and compact the database.
Answer questions from the brain using FTS5 + semantic search + structured queries. Synthesize across multiple pages. Cite sources.
Agent-guided binary upgrades: version check, channel detection, download via install.sh (or manual asset fetch + SHA-256 verify), and post-upgrade validation.
| name | frozen-public-contracts |
| description | How to ship diagnostics without breaking a frozen MCP/JSON contract |
| domain | release-gating, API contracts |
| confidence | high |
| source | earned — vault-sync-engine Batch 1/2 repairs |
Use this when an OpenSpec slice says a public surface is frozen (for example, an MCP tool with an exact-key test) but a new batch wants to expose more diagnostics. This pattern is for Quaid's mixed CLI + MCP surfaces, especially when src/mcp/server.rs has schema-locking tests.
If a test asserts that a JSON object has exactly N keys, the surface is frozen. Do not add fields "just for this batch" unless the OpenSpec explicitly reopens the contract, updates design/spec artifacts, and updates the exact-key test in the same patch.
When operators need more diagnostics urgently, add them to quaid collection info (plain text and --json) instead of widening frozen MCP output. CLI widening is still a public contract, but it avoids breaking agents pinned to the MCP schema.
--json are separate truth surfacesDo not mark a task closed if only the human-readable CLI output shows the new field. A #[serde(skip_serializing)] or similar omission means the JSON contract still lacks the feature.
If the implementation plan originally says "surface X in MCP + CLI" but reviewer-approved artifacts later freeze MCP, update implementation_plan.md and tasks.md to the narrowed contract before closing the task. A green checkbox must describe the accepted contract, not the superseded draft.
memory_collections frozen at 13 fields in task 13.6 + exact-key test in src/mcp/server.rsquaid collection info while MCP stayed unchangedtests/collection_cli_truth.rs updated so collection info --json proves the field is truly surfaced--json