-
Notifications
You must be signed in to change notification settings - Fork 1
feat(archon): MiSSinGLinC validator AgentMintSpec — QA-gated Wave-0 mint staging #2510
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,179 @@ | ||
| # MiSSinGLinC — External Peer-Review Validator: AgentMintSpec (Wave-0 staging) | ||
|
|
||
| > Mint ritual: `.claude/commands/archon/mint-agent.md` · Contract: | ||
| > `pmoves/docs/handoffs/ARCHON_MINT_CONTRACT_REVIEW.md` · Format precedent: | ||
| > `pmoves/docs/pilots/fordham-hill/05-room-agents-mint-specs.md`. | ||
| > | ||
| > Provenance: drafted by Agent Zero (work order `archon-update-ocr-6dbb43e2`, | ||
| > deliverable 2026-08-08), **reviewed and code-verified** by 5090-CLAUDE | ||
| > (Claude Fable 5) on 2026-08-09 against `PMOVES-mike @ 204d2d5` — every | ||
| > claimed build-base module confirmed present (see § Verification). Operator | ||
| > anchor: DARKXSIDE directive, 5090 session 2026-08-07 (mint MiSSinGLinC from | ||
| > PMOVES-mike; external-peer-review frame, persona alias DangerRuss). | ||
|
|
||
| ## Why this agent | ||
|
|
||
| MiSSinGLinC does not draft — it audits. It is the external-peer-review | ||
| validator for PMOVES agent output: adversarial claim validation, | ||
| evidence-chain construction, and citation verification against source | ||
| documents and external authorities, returning structured verdicts with | ||
| cryptographic evidence chains. The build base is PMOVES-mike (fork of MikeOSS, | ||
| an open-source TypeScript legal-AI platform), whose existing modules map | ||
| directly onto the validator's needs — reuse, not rebuild. | ||
|
|
||
| ## AgentMintSpec | ||
|
|
||
| ```yaml | ||
| apiVersion: archon.mint.agent.v1 | ||
| kind: AgentMintSpec | ||
| metadata: | ||
| agent_name: missinglinc-validator | ||
| agent_id: f52112c8-82ec-428b-8337-8215ae3e6a55 # staged; Archon factory may reissue | ||
| room_id: 4090-field.room.control # reviewer role-class → Control body | ||
| stage: rehearsal | ||
| owning_persona: DARKXSIDE | ||
| creator_id: "<supabase auth.users.id — resolved at mint Step 0 (operator OAuth)>" | ||
| persona_alias: DangerRuss | ||
| frame: external-peer-review | ||
| tags: [validator, peer-review, evidence-chain, citations, chit, dangerruss] | ||
| spec: | ||
| role: >- | ||
| External-peer-review validator. Consumes other agents' outputs, extracts | ||
| claims, verifies each against an evidence corpus and optional external | ||
| authorities, and returns a structured validation verdict with per-claim | ||
| evidence chains and cryptographic proofs. Audits only — never drafts, | ||
| never adjudicates beyond the verdict schema. | ||
| role_class: reviewer # AGNOTE4482 Three-Body surface: Control | ||
| team_ref: orchestration # bare key per pmoves/configs/agent-teams.yaml | ||
| node_affinity: [powerfulmoves, pmoves-laptop] # 5090 + 4090 | ||
| model: | ||
| provider: tensorzero | ||
| routing: hybrid | ||
| fallback: ollama | ||
| build_base: | ||
| repository: github.com/POWERFULMOVES/PMOVES-mike | ||
| verified_at: "204d2d5" | ||
| language: TypeScript | ||
| architecture: Express backend + Next.js frontend | ||
| key_modules: # each verified present 2026-08-09 | ||
| - backend/src/lib/chat/verifyCitations.ts # exact-match quote verification | ||
| - backend/src/lib/chat/citations.ts # citation extraction/parsing | ||
| - backend/src/lib/manifestSigning.ts # Ed25519 signing (pkcs8 der) | ||
| - backend/src/lib/chat/tools/toolDispatcher.ts # validation orchestration loop | ||
| - backend/src/lib/courtlistener.ts # external case-law verification | ||
| - backend/src/routes/caseLaw.ts | ||
| capabilities: | ||
| - claim_extraction # structured claims from agent output (tabular review pattern) | ||
| - quote_verification # surface level — verifyCitations exact match | ||
| - semantic_validation # deep level — LLM-judge equivalence + multi-hop chains | ||
| - counter_evidence_search # adversarial level — Hi-RAG corpus sweep for contradictions | ||
| - evidence_chain_graph # claim→evidence→source graph (JSON-LD; Neo4j optional) | ||
| - chit_verdict_packets # verdict encoded as CGP for Hi-RAG ingest + bus broadcast | ||
| validation_depths: [surface, deep, adversarial] | ||
| skills: | ||
| - pmoves-cipher-memory | ||
| voice: | ||
| persona: persona.makeda.missinglinc # FlOO$ Makeda scoped child (taxonomy v0.2.0) | ||
| allowed_moods: [professional, assertive] | ||
| verdict_tones: | ||
| verified: makeda_assertive | ||
| partially_verified: makeda_formal | ||
| failed: makeda_assertive | ||
| counter_evidence: makeda_formal | ||
| chit_tier: Partial # emits signed CGP verdict packets; not a full | ||
| # CHIT-aware service yet — see | ||
| # pmoves/docs/audit/CHIT_INTEGRATION_STATUS.md | ||
| nats: | ||
| consume: | ||
| - voice.agent.response.v1 # registered agent-output subject (nats-subjects.md) | ||
| - ingest.file.added.v1 | ||
| - validation.run.requested.v1 | ||
| publish: | ||
| - validation.verdict.ready.v1 | ||
| - validation.evidence.chain.v1 | ||
| - validation.counter.evidence.v1 | ||
| # validation.* is a new branded namespace — subjects registered in | ||
| # .claude/context/nats-subjects.md in this PR; the namespace table row in | ||
| # .claude/context/self-hosted-defaults.md is STAGED FOR OPERATOR APPLY | ||
| # (protected file — see Open gate 0). | ||
| service_dependencies: | ||
| required: | ||
| - {service: pmoves-mike-backend, endpoint: "POST /api/chat"} | ||
| - {service: nats, port: 4222} | ||
| optional: | ||
|
Comment on lines
+99
to
+103
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
When Useful? React with 👍 / 👎. |
||
| - {service: hi-rag-gateway-v2, port: 8086, endpoint: "POST /hirag/query"} | ||
| - {service: courtlistener-api, endpoint: "GET https://www.courtlistener.com/api/rest/v4/"} | ||
| - {service: neo4j, port: 7687} | ||
| compute: {gpu: optional, memory: 4GB, timeout_seconds: 300} | ||
| proofs: | ||
| source_hashing: sha256_per_document | ||
| span_hashing: sha256_per_text_span | ||
| signing: chit_cgp_v0.1 | ||
| signing_context: "missinglinc-validation-v1\n" | ||
| key_management: ed25519_pkcs8_der | ||
| guardrails: | ||
| authority: verdict-only # audits and reports; never drafts content | ||
| drafting: forbidden # consumes others' output, produces verdicts only | ||
| adjudication: verdict-schema-only # no authority beyond the structured verdict | ||
| evidence_required: true # every verdict claim carries an evidence chain | ||
| transparency_only: true | ||
| agent_zero: { subordinate: true, report_to: agent_zero } | ||
| lifecycle: { emits_on_mint: archon.mint.agent.v1, confirms_with: archon.mint.confirmed.v1 } | ||
| ``` | ||
|
|
||
| ## Persona doc (ritual Step 4 template — staged until `PMOVES-agents.md/` populated) | ||
|
|
||
| ```markdown | ||
| --- | ||
| name: missinglinc-validator | ||
| role: External-peer-review validator — audits agent output via claim extraction, evidence-chain verification, and citation checks; never drafts | ||
| role_class: reviewer | ||
| room: 4090-field.room.control | ||
|
Comment on lines
+127
to
+131
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
When the staged persona artifact is used for QA, the schema check fails: Useful? React with 👍 / 👎. |
||
| owning_persona: DARKXSIDE | ||
| creator_id: <pending Step-0 OAuth> | ||
| minted_at: 2026-08-09 | ||
| status: provisional | ||
| --- | ||
| # MiSSinGLinC (DangerRuss) | ||
| ## Mandate | ||
| Adversarial external peer review of PMOVES agent output with cryptographic | ||
| evidence chains. Verdicts are read out through FlOO$ Makeda's missinglinc | ||
| scope (professional/assertive only — never warm tones for verdicts). | ||
| ## Mint trail | ||
| - Archon agent_id: f52112c8-82ec-428b-8337-8215ae3e6a55 (staged) | ||
| - NATS mint event: archon.mint.agent.v1 (staged below) | ||
| ``` | ||
|
|
||
| ## Staged NATS payloads (schema: `pmoves/contracts/schemas/archon/mint.agent.v1.schema.json`) | ||
|
|
||
| ```json | ||
| {"subject": "archon.mint.agent.v1", "payload": {"agent_id": "f52112c8-82ec-428b-8337-8215ae3e6a55", "agent_name": "missinglinc-validator", "room_id": "4090-field.room.control", "owning_persona": "DARKXSIDE", "ts": "<RFC3339 at publish>"}} | ||
| ``` | ||
|
|
||
| `archon.mint.confirmed.v1` follows operator confirmation (ritual Step 7). | ||
|
|
||
| ## Verification (review pass, 2026-08-09) | ||
|
|
||
| - All six `key_modules` exist at `PMOVES-mike @ 204d2d5` (checked file-by-file). | ||
| - Ed25519 signing confirmed in `manifestSigning.ts` (+ tests); nonce-based | ||
| untrusted-content boundary confirmed in `chat/contextBuilders.ts`, | ||
| `prompts.ts`, `streaming.ts`. | ||
| - Room `4090-field.room.control` validated against `pmoves/config/rooms/catalog.json`. | ||
| - Voice scoping matches Agent Zero's persona taxonomy | ||
| (`tac-tree-persona-taxonomy.yaml` v0.2.0, `persona.makeda.missinglinc`). | ||
|
|
||
| ## Open gates | ||
|
|
||
| 0. **Branded-namespace table row** (operator apply — the file is | ||
| damage-control protected): add to `.claude/context/self-hosted-defaults.md` | ||
| namespace table: | ||
| `| `validation.*` | MiSSinGLinC external peer-review validation | `validation.run.requested.v1`, `validation.verdict.ready.v1`, `validation.evidence.chain.v1`, `validation.counter.evidence.v1` |` | ||
| (The four subjects are already registered in | ||
| `.claude/context/nats-subjects.md` §Validation Subjects.) | ||
| 1. **Step 0 creator OAuth** (operator): Supabase Google sign-in resolves | ||
| `creator_id` before factory submission. | ||
| 2. **Archon factory call**: Wave-2 (`archon:create-agent` MCP tool / REST | ||
| `POST /api/agents`) — staged manifest is the Wave-0 artifact per contract. | ||
| 3. **QA gate**: archon-qa-agent pass recorded in the mint PR. | ||
| 4. Full A0 source brief: work order `archon-update-ocr-6dbb43e2` deliverable | ||
| (Agent Zero workdir; harvested copy in 5090 session scratchpad 2026-08-09). | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When this manifest is submitted to the current
archon-qa-agent, all fourvalidation.*subjects fail its branded-namespace check:.claude/agents/archon-qa-agent.mdonly accepts namespaces registered in.claude/context/self-hosted-defaults.md, whose minted-artifact rule requires a new namespace addition before merge. Staging that row for a later operator action therefore makes the recorded QA PASS non-reproducible and blocks the factory gate; land the namespace row with this staging change or do not mark the agent as QA-passed yet.Useful? React with 👍 / 👎.