sift-kg synthesis
Type: agentic-system-analyses/types/agentic-system-synthesis.md
Bounded synthesis
sift-kg is a document-derived knowledge system, not an enclosing agent runtime. It extracts entities and relations, builds a saved graph, offers identity maintenance and derived prose, and returns selected retained state to a caller. This account covers its shipped CLI, library drivers, prompts, agent skill and downstream consumers at commit d786991c024f5401f113fc0cb70aee96dd1bd3bf, with an applicability cutoff of 2026-10-15. The evidence is SRC-1 implementation and doctrine/design, with attributed example reports, not reproduced operation. No target code, tests, providers or examples were executed, and no full execution trace or causal experiment was supplied. External host orchestration, provider internals and deployed permissions are outside the boundary. See boundary and its Source register.
From a document request to retained assertions
The representative workflow is the bundled skill's create/update-and-answer procedure. A host agent receives documents, requests permission for paid extraction, invokes extraction and build, optionally runs resolve/review/apply, then retrieves graph context and answers the user. The host owns these command boundaries and final delivery; the skill does not implement a scheduler. Within each stage Python owns progression, while completion models interpret selected inputs and return data or prose. They do not select arbitrary tools through the inspected adapter. The convenience library pipeline advances extract → build → optional narrate, omitting the separate review branch. See workflow account, RT-BAP-agent-skill and the bounded executor finding RT-ABS-tool-execution.
Extraction reads supported documents, optionally uses OCR, divides text into overlapping character windows and supplies a generated first-chunk summary to chunk calls. Independent calls receive selected domain guidance and text, not an accumulating conversation. Parsed returns escape into per-document JSON; the summary is transient rather than a persisted conversational checkpoint. The parser admits constructible typed items and skips malformed ones. Explicit-source and quotation instructions are model policies, not checks of entailment or verbatim quotation. Imported assertions retain unknown source warrant. See RT-RTE-document-extraction, MEM-OBJ-document-extraction and EPI-RTE-extraction-shape.
These bounds matter during an update. Cache identity checks model string, domain name and chunk size, not source contents or domain contents. Same-stem paths share an output identity. Exhausted chunk failures can yield persisted empty results without a document-level error. A force rerun is recovery, not automatic freshness detection. Bulk cost checks precede semaphore admission and omit earlier discovery/summary work; direct extraction and some narration calls have different coverage. The budget is therefore best-effort accounting, not a hard spend cap. These are conditional implementation findings, not measured error or overspend rates. See RT-RTE-document-extraction.
From retained extractions to a maintained graph
Build reloads retained extraction JSONs into a fresh graph, automatically collapses names, aggregates entities and relation support, and optionally normalizes types and directions. It saves graph state before producing review flags. Pending flags therefore do not quarantine assertions from retrieval. Original-document deletion alone does not remove orphan extraction files, and rebuilding does not automatically preserve prior graph surgery. See RT-RTE-graph-build and the memory report's build annotation.
The graph is not merely a lossless index. Entity aggregation can overwrite attributes or select higher-confidence content. Canonical relations retain mentions and support metadata but expose representative evidence through query; combined confidence is not a validated truth probability or proof of independent observations. A specific normalization rule also changes semantics: with postprocessing enabled and TRAVELED_FROM not valid in the active domain, its mapping to TRAVELED_TO can replace an origin assertion with a destination assertion while keeping endpoints. Under ordinary relation meanings the former does not entail the latter. This supports a conditional source-level conjecture finding, not an observed incident or a classification of all cleanup as conjecture. See MEM-OBJ-graph-data, MEM-OBJ-relation-support and EPI-RTE-relation-normalization.
Optional resolution supplies selected names, aliases and identity attributes in overlapping batches or embedding clusters to a model. It persists sameness/variant proposals with reasons and confidence. Review first applies automatic thresholds, then offers human decisions on remaining drafts; default CLI auto-confirmation starts at 0.85. Separate application admits confirmed entity merges with valid node IDs and removes rejected relation triples. Direct YAML editing is another status-setting path, without authenticated writer identity. Build's earlier pre-deduplication bypasses this proposal gate. Thus the invariant is confirmed-status admission to the surgery engine, not universal human approval. Confirming a proposed variant does not insert an edge. Reasons inform reviewers, but surgery consumes statuses and IDs rather than the reasons as rules. See RT-RTE-entity-resolution, RT-RTE-review-application, RT-CLM-merge-approval and MEM-OBJ-merge-proposals.
Rejection prevents a proposal's surgery; it is not undo of earlier changes. Quitting review can leave earlier automatic confirmations intact. Missing nodes can prevent even confirmed proposals from applying. Rebuild can restore rejected extraction-derived relations and replace previous merges. Exact recovery needs an external saved copy rather than an inspected reversible decision history. See workflow account and MEM-OBJ-relation-review.
From saved state to a later consumer
Optional narration selects ranked graph subsets and name-matched extraction contexts to generate descriptions, themes and narrative. Description prompts cap relations and contexts; name-only joins can share contexts between distinct same-name entities. Regex style checks can trigger one model rewrite, but do not verify factual equivalence. Returned prose is automatically retained. Themes and description sidecars lack a coordinated graph-revision freshness guarantee, and graph surgery does not automatically update existing prose or exports. See RT-RTE-narrative-generation, EPI-RTE-style-rewrite, MEM-OBJ-entity-descriptions and MEM-OBJ-communities.
Later CLI lookup is caller-requested. Query selects an exact ID or substring/alias match, ranks ambiguous candidates by substantive degree and returns a hop-limited neighborhood with selected evidence and support fields. Hop depth is not a token budget. Query omits node contexts, provenance nodes and full mention lists; search and exports deliver different fields and are not universally metadata-filtered. Topology computes properties of the saved graph, not proof of real-world connectivity or absence. Project orientation through info is a separate consumer of counts, statuses and file existence. See RT-RTE-graph-retrieval, MEM-RTE-project-info and RT-RTE-view-export.
The system consequently supports explicit reuse of structured document interpretations across invocations. It also automatically supplies retained domains, graph subsets and statuses to internal consumers after stage invocation; that internal selection is distinct from caller-facing pull and does not establish automatic injection into a host session. Optional embeddings select resolution batches, not a durable vector retrieval store. The skill affords direct loading for small graphs and prescribes topology/query for larger ones, but the host owns context assembly, eviction and subsequent answers. See RT-RTE-schema-discovery, RT-RTE-entity-resolution, RT-RTE-narrative-generation and RT-BAP-agent-skill.
What changes, and what improvement remains unestablished
The strongest supported behavior-shaping contribution is reusable corpus-derived guidance: discovery automatically admits localized domain definitions, and later extraction/build consume them. This changes future inputs and fixed-code transformations. If those definitions are treated as a local theory of corpus organization, the runtime separately supports theory-builder condition 1, localized replaceable content, as afforded; condition 2, consumption, as wired, with model semantic uptake unobserved; condition 3, content-directed criticism, as uninspected; and condition 4, retained criticism shaping a next round, as uninspected. Schema reuse alone establishes neither of the latter conditions. See RT-RTE-schema-discovery and MEM-OBJ-discovered-domain.
Improved capacity for future action through criticism of a consumed theory is not established: no criticism-to-revision trace or independent outcome comparison is supplied. Reflection is independently unestablished because the corpus schema is not shown to represent sift-kg's own operation. Automatic generation does not establish an autonomous theory builder; the internal criticism and iteration operations remain unestablished. Stage automation and external host ownership are separately supported facts, not a general autonomy grade. Exercised self-improvement at this repository boundary is likewise unestablished: reusable guidance reaches later consumers in code, but the records do not close an objective-bearing evidence-to-update-to-subsequent-operation causal chain. Style rewriting concerns an external prose product under unchanged instructions, not demonstrated revision of an operational theory. See RT-RTE-schema-discovery, RT-RTE-narrative-generation and the epistemic bounded conclusion.
For document navigation and explicit neighborhood lookup, the implemented contribution is persistence plus selective delivery. For source-faithful factual answers, universally human-approved identities, coordinated withdrawal or demonstrated learning, that same evidence is insufficient. Retention and operational admission do not establish evidence-consuming factual acceptance or subsequent lifecycle integration. Trace-fed learning also remains undetermined, rather than established absent across all possible document contents and feedback origins. These distinctions are preserved by EPI-RTE-extraction-shape, RT-RTE-review-application and profile verification.
Paired source/output evaluations would change the assessment of extraction and prose fidelity; linked reviewer evidence with criteria, intended use and scope would support narrower acceptance findings. A supplied host-session trace would establish bounded uptake, while a controlled comparison would be needed for answer benefit or component attribution. Content-based invalidation, revision-bound decisions/sidecars and replay or transactional withdrawal would change the identified freshness and recovery guarantees. A retained content-directed criticism, its operative revision and subsequent use would change the theory and self-improvement assessment only for the links it actually establishes. These are resolving conditions for the gaps above, not claims that such mechanisms or outcomes already exist.
Limitations
| Limitation | Affected SRC IDs and record citations | Inspected boundary | Conclusion prevented | Evidence that would resolve it |
|---|---|---|---|---|
| Local info-route attribution conflict retained by report verification | SRC-1; EPI-OBJ-structural-results, RT-RTE-graph-retrieval, MEM-RTE-project-info; verification limit | Frozen CLI: epistemic structural-results container and ledger group info/topology/query under retrieval, while memory identifies info separately | The runtime retrieval route cannot alone support the full info/topology/query family or imply identical inputs/selectors. Structural computation and info consumption remain independently supported. | Correct the epistemic attribution to preserve separate info inputs and its own memory route. |
| No execution, quality or causal comparison evidence | SRC-1; RT-RTE-document-extraction, RT-RTE-review-application, RT-RTE-narrative-generation | Registered implementation, doctrine and attributed examples; no target execution or linked production/check/acceptance trace | Observed activation, extraction/identity accuracy, semantic preservation, actual reviewer acceptance and causal benefit | Linked input/result/check traces, scoped factual evaluations and appropriately controlled comparisons |
| Host behavior and external numerical components are not frozen by the adapters | SRC-1; RT-BAP-agent-skill, RT-CMP-llm-client, RT-CMP-sem-hash, RT-CMP-sentence-transformer, RT-CMP-ocr-backends | Shipped skill and adapter code, excluding host implementation, provider/dependency internals and deployed grants | Reliable session continuity, exact deployed model fixity, provider/OCR reliability, end-to-end privacy and complete dependency-internal selection classification | Pinned component/deployment evidence and scoped host/provider execution evidence |
| General model transformations and anonymous file admission remain unresolved | SRC-1; EPI-RTE-style-rewrite, RT-RTE-narrative-generation, RT-RTE-review-application | Recorded prose-generation/rewrite and direct YAML replacement alternatives | Complete semantic curation classification or attribution of every direct edit to a human; current-generation rewriting does not establish evolution of retained prose | Paired semantic comparisons, a retained-entry update trace and identified admission principals |
| Improvement and trace qualification remain unestablished | SRC-1; RT-RTE-schema-discovery, MEM-OBJ-document-extraction, RT-RTE-review-application; profile verification | Document-fed guidance/knowledge transformations and retained decision metadata | All theory-builder conditions, reflection, autonomous theory building, exercised self-improvement or improved future capacity; neither a positive trace-learning chain nor a system-wide negative | Qualified trace origins and automatic durable-update/read-back evidence; separately, content-directed criticism, retained consequences, subsequent operative use and improvement evidence |
Source-read log: none. This synthesis uses only the supplied members and adds no frozen-source evidence.