Untitled — Signet Docs

Docs

Untitled

Knowledge Graph Control Plane Inventory

This is an implementation inventory for the current ontology and knowledge graph control plane. It is not a speculative product spec.

Tables And Migrations

SurfaceMigrationExposureMutation modelNotes
entities002, 005, 019, 022, 027, 037, 064, 070CLI/APIapply-first audited operations; proposal review for large refactorsAgent-scoped after 019. 070 adds status, archive metadata, and proposal provenance. Name/canonical selectors must resolve to one same-agent active row.
relations002, 005hidden/internalinternal graph legacyKept for legacy entity relation compatibility. New control-plane links use entity_dependencies.
memory_entity_mentions002, 005hidden/internalinternal write-time linkerLinks memories to entities; source memories remain immutable provenance.
entity_aspects019, 070CLI/APIapply-first audited operations; proposal review for large refactors070 adds archive metadata and proposal provenance. Default reads should treat archived aspects as hidden.
entity_attributes019, 059, 060, 064, 067, 070CLI/APIapply-first audited operations; pipeline/supersession helpers also writeClaim slots use group_key + claim_key. 070 adds first-class versions: version, version_root_id, previous_attribute_id. Default reads show active rows; history reads can inspect all versions.
entity_dependencies019, 031, 036, 039, 050, 064, 067, 070CLI/APIapply-first audited operations; structural workers also writeLink operations create/update/archive rows here. Reason/confidence/proposal/source provenance are preserved.
entity_dependency_history050hidden/internalaudit triggerTrigger-backed history for dependency insert/update/delete.
task_meta019, 054hidden/internaltask/procedural helpersAgent-scoped task metadata, not part of this control-plane CLI slice.
ontology_proposals067CLI/APIrefactor proposal queue and applied operation ledgerPending proposals are for broad graph refactors or explicit review. Direct operations create applied rows inside the same transaction as graph mutation so provenance remains queryable.
epistemic_assertions071CLI/APIsource-attributed assertion ledgerRecords who claimed, believed, observed, decided, preferred, denied, or questioned something, with confidence, evidence, source provenance, status, and optional link to an applied claim attribute. Assertions do not by themselves make the statement current ontology truth.
dreaming_state, dreaming_passes055CLI/API via dream status/triggerdreaming workerExisting dreaming pass records/status. Dream promotion is apply-first with provenance; generated or ambiguous candidates remain preview/questions until explicitly applied.
memory_artifacts051, 061, 062API/internalimmutable source artifact recordsSource-backed evidence for proposals and applied graph rows. Ontology updates must not rewrite these rows.
session_transcripts040, 045, 047API/internalimmutable transcript/index recordsProposal extraction can cite transcripts; graph mutation must preserve transcript provenance.

Daemon Routes

RouteExposureMutation modelTests / risk
GET /api/ontology/proposalsCLI/APIread-onlyCovered by ontology proposal tests.
GET /api/ontology/proposals/:idCLI/APIread-onlyCovered by CLI/proposal tests.
POST /api/ontology/proposalsCLI/APIcreates pending proposalCovered by proposal import/create tests.
POST /api/ontology/proposals/batchCLI/APIcreates pending proposals atomicallyCovered by batch proposal tests.
POST /api/ontology/proposals/:id/applyCLI/APIapplies pending proposalCovered by proposal apply tests.
POST /api/ontology/proposals/:id/rejectCLI/APIrejects pending proposalCovered by reject tests.
GET /api/ontology/proposals/:id/evidenceCLI/APIread-onlyCovered by evidence tests.
GET /api/ontology/proposals/conflictsCLI/APIread-onlyCovered by conflict tests.
POST /api/ontology/proposals/repair/duplicatesCLI/APIdry-run candidates or large-refactor proposalsCovered by duplicate repair tests. Clear single merges should use direct entity merge.
GET /api/ontology/assertionsCLI/APIread-onlyLists source-attributed assertions by entity, predicate, speaker, source, status, or text query. Covered by assertion tests.
GET /api/ontology/assertions/:idCLI/APIread-onlyReads one same-agent assertion. Covered by assertion tests.
POST /api/ontology/assertionsCLI/APIcreates source-attributed assertionRequires evidence or source provenance. Covered by assertion tests.
POST /api/ontology/assertions/:id/link-claimCLI/APIlinks assertion to applied claim valueRejects cross-agent and cross-entity links. Covered by assertion tests.
POST /api/ontology/assertions/:id/archiveCLI/APIarchives assertionPreserves assertion evidence. Covered by assertion tests.
POST /api/ontology/assertions/:id/supersedeCLI/APIcreates replacement assertion and supersedes old rowOmitting predicate preserves old predicate. Covered by assertion route tests.
POST /api/ontology/extractCLI/APIdry-run, pending refactor proposals, and/or assertionsExtraction writes assertions for attributed claims and pending proposals only when explicitly requested. Covered by extraction tests.
POST /api/ontology/consolidateCLI/APIdry-run or pending refactor proposalsConsolidates review queues; not the default dreaming maintenance path. Covered by consolidation tests.
POST /api/ontology/operations/applyCLI/APIdry-run, pending refactor proposal, or applied operation + graph mutationDirect operation endpoint. Requires modify. Covered through operation engine and CLI tests.
POST /api/ontology/operations/batchCLI/APIatomic batch dry-run/propose/applyRequires modify; rolls back on invalid operation. Covered by operation batch tests.
GET /api/ontology/claims/evidenceCLI/APIread-onlyCovered by claim evidence tests.
GET /api/ontology/claims/versionsCLI/APIread-onlyCovered by version chain tests.
GET /api/ontology/claims/versionCLI/APIread-onlyCovered by version show tests.
GET /api/ontology/links/:id/evidenceCLI/APIread-onlyCovered by link evidence tests.
GET /api/knowledge/navigation/*CLI/APIread-onlyExisting knowledge navigation tests cover entity/aspect/group/claim browsing.
GET /api/pipeline/status, GET /api/statusCLI/APIread-onlyontology pipeline * uses these to explain graph mutation state.
GET /api/dream/status, POST /api/dream/triggerCLI/APIdreaming workerExisting dream CLI/daemon surface. Ontology dreaming skill uses apply-first operations with provenance by default.

CLI Commands

CommandExposureMutation modelNotes
signet ontology proposalsCLIread-onlyExisting proposal list.
signet ontology proposal <id>CLIread-onlyExisting proposal show.
signet ontology evidence <id>CLIread-onlyExisting proposal evidence.
signet ontology apply <id>CLIapplies pending proposalPreserves proposal history and agent scope.
signet ontology reject <id>CLIrejects pending proposalPreserves rejected proposal history.
signet ontology conflictsCLIread-onlyLists pending claim conflicts.
signet ontology assertionsCLIread-onlyLists source-attributed assertions with filters for entity, predicate, speaker, source, status, query, and agent.
signet ontology assertion show/create/link-claim/archive/supersede/importCLIassertion ledger writesCreates and maintains attributed assertion rows. supersede preserves the old predicate when --predicate is omitted. import accepts a JSON array or { "assertions": [...] }.
signet ontology entity create/rename/merge/archiveCLIdirect operation endpointApplies by default with audit/provenance. Supports --dry-run, --propose, --json, --agent, --actor, --reason, --evidence-file; reserve --propose for broad refactors or explicit review.
signet ontology claim set/versions/show/archive/restoreCLIoperation endpoint for writes, read endpoints for versionsset creates version chains; restore only required for claim versions in this slice.
signet ontology aspect create/rename/archiveCLIdirect operation endpointUses same audited operation path.
signet ontology link create/update/archiveCLIdirect operation endpointUses entity_dependencies.
`signet ontology stream apply <path- >`CLIatomic JSONL operation batch
signet ontology pipeline status/config/explainCLIgraph-state inspectionExplains Pipeline V2 graph flags and write gates.
signet ontology config show/validate/explainCLIcontrol-plane inspectionConfirms audited operation tools are usable and no external graph.yaml policy gate is active in this slice.
signet ontology extractCLIdry-run/refactor proposals/assertions--write-proposals persists pending proposal rows only when review is requested; --write-assertions persists source-attributed assertion rows.
signet ontology consolidateCLIdry-run/refactor proposalsConsolidates existing review queues; normal graph maintenance should use direct operation apply.
signet dream status/triggerCLIexisting dream workerExisting pass status and trigger behavior.

Pipeline V2 Graph Knobs

Current graph-affecting configuration is loaded from memory.pipelineV2 in agent.yaml and surfaced through signet ontology pipeline *:

  • enabled
  • paused
  • shadowMode
  • mutationsFrozen
  • graph.enabled
  • graph.extractionWritesEnabled
  • traversal mode and bounds (traversal.enabled, primary, hop/branch/path limits, confidence, timeout, boost)
  • dampening settings
  • autonomous maintenance (autonomous.enabled, frozen, allowUpdateDelete, mode/polling)
  • extraction provider/workload settings
  • write gates such as minFactConfidenceForWrite
  • queue/worker health through /api/pipeline/status
  • dreaming state through /api/dream/status

Unsafe or ambiguous behavior to keep watching:

  • Legacy graph workers still have internal write paths. Generated LLM changes must remain explicit, audited, and provenance-backed when they target ontology maintenance; pending proposals are for large refactors or explicit review.
  • relations remains a legacy graph table; new audited control-plane links use entity_dependencies.
  • merge_entities still moves graph rows and removes the source entity. Use entity merge-plan for impact inspection and reserve --propose for broad merge campaigns or risky refactors. Use entity archive operations when lineage inspection of the source row matters.
  • A separate $SIGNET_WORKSPACE/ontology/graph.yaml policy is not active yet; adding one should fail closed and must not introduce hidden mutation paths.

Tests

Existing and new coverage:

  • platform/core/src/migrations/migrations.test.ts
  • platform/daemon/src/ontology-proposals.test.ts
  • platform/daemon/src/knowledge-navigation.test.ts
  • platform/daemon/src/knowledge-graph-list.test.ts
  • platform/daemon/src/knowledge-expand-api.test.ts
  • platform/daemon/src/knowledge-graph-hygiene.test.ts
  • platform/daemon/src/pipeline/graph-transactions.test.ts
  • platform/daemon/src/pipeline/dreaming.test.ts
  • platform/daemon/src/dreaming-skill.test.ts
  • surfaces/cli/src/commands/ontology.test.ts
  • surfaces/cli/src/commands/knowledge.test.ts
  • surfaces/cli/src/commands/dream.ts coverage through existing command behavior

New control-plane coverage includes direct operation apply/propose/dry-run, atomic batch rollback, claim version restore/archive, ambiguous selector rejection, default hiding for archived graph rows, and an in-process end-to-end fixture that verifies dry-run, apply, propose, reject, evidence lookup, and raw source artifact immutability.

Remaining thin coverage:

  • Full end-to-end daemon + CLI process fixture using a real running daemon.
  • graph.yaml policy validation, because no active policy file is implemented in this slice.