Virtual Context synthesis
Type: agentic-system-analyses/types/agentic-system-synthesis.md
Bounded synthesis
From conversation to retained memory
Virtual Context is a memory and context-assembly system, not the enclosing agent responsible for arbitrary user tasks. This account covers its repository-shipped engine, drivers, integrations, maintenance and evaluators at commit 74ccc570c40bb551820fcd330c42e0dfc0588f05, with an applicability cutoff of 2026-10-14. SRC-1 supplies inspected implementation, design statements and attributed operation reports; it supplies no independently inspected execution or causal experiment. The whole-system functional boundary includes optional and batch paths, but does not mean every implementation branch was audited. External hosts, services and deployment infrastructure remain outside it. See the boundary and Source register.
In shipped headless chat, driver code assembles context, filters accumulated history, invokes a remote answer model, appends its reply and submits completed history for background maintenance. Before the next retrieval it waits for that completion task. The task catches errors, so waiting does not certify successful maintenance. The proxy instead owns provider forwarding and split tagging/compaction; assembly failure can forward an unmodified request. MCP returns recall or maintenance results to a host. The bundled OpenClaw hook inserts retrieved text as a user-role reminder and starts asynchronous compaction. Neither host integration establishes actual incorporation or compliance. These are distinct sequencing and delivery contracts, not one universal enrichment guarantee: RT-RTE-headless-chat, RT-RTE-proxy-request, RT-RTE-mcp-tools, RT-RTE-openclaw-hooks.
Completed-turn maintenance reads eligible canonical stored rows outside the protected recent window. Model calls propose tags, summaries and facts; software parses, checks and admits derivatives without per-item human approval. Segment storage retains summary, full text and messages, with separate source identities, fact lifecycle fields, rollups and numerical search vectors. This makes reduction compatible with later source reload. Imports supply another acquisition route, but adapter fidelity and initial provenance authenticity remain unresolved. See RT-RTE-memory-maintenance, MEM-OBJ-stored-segment, MEM-OBJ-source-metadata, MEM-OBJ-fact, MEM-OBJ-search-vectors and RT-RTE-import-history.
What reaches the next model call
Inbound code automatically selects retained material using current work, recent context, tags, fact eligibility and optional model curation. Rendered-token costs bound admission; protected recent pairs, unknown tag data and rule-tagged pairs receive special treatment. The foreground model can also request paging or restoration. Cold-page collapse or eviction reduces the working set without deleting the underlying source. Proxy restoration can replace an archive stub in mutable request history rather than return the full content as tool text; chain sanitization can remove VC-derived messages before delivery. A reference alone is therefore not readable memory: a successful reload must materialize content in a subsequent provider request. See MEM-RTE-inbound-context, RT-RTE-paging-loop, the memory paging annotation, and MEM-RTE-payload-restore.
These mechanisms filter and reload an accumulated conversation. They do not establish isolated sub-agent frames whose entire private context is discarded after returning a result. The VC tool loop executes recognized VC-only calls within bounded continuations; mixed non-VC calls return to the caller without executing that batch. Its process-local repetition guard fails open. Neither tool schemas nor loop bounds constrain every capability of the enclosing host: RT-RTE-paging-loop.
Retained controls and delivered prose have different force. Watermarks and ledger keys determine software eligibility; summaries and facts supply interpreted evidence to the answer model. Delivery establishes neither compliance nor truth. Default checkpoint saves use the store and optionally Redis, whereas provider mode makes the caller responsible for persistence. A failed save or suffix-capped cache cannot promise lossless recovery. SQLite stale-write rejection is conditional on active fence enforcement; observe/off modes weaken it. See RT-BAP-engine-watermarks, RT-BAP-assembled-context, RT-OBJ-engine-state and RT-CLM-compaction-fence.
Checking, withdrawal and accepted person context
The system's strongest supported checking contribution is not a general truth oracle. It has consequential withdrawal and source-responsive admission mechanisms. Rejected statement/source keys prevent re-extraction; retained policy, source and fact versions suppress unchanged refused comparisons. Changed evidence or policy can reopen them. Canonical edits queue derivative rebuilds, with unfinished segments recoverable by retry. These are operative later consumers of retained decisions, not merely audit displays: MEM-RTE-fact-admission, MEM-BAP-fact-refusals, RT-RTE-record-edits.
The licenses remain narrow. Fact verified state checks physical lineage and specified author proof, not whether the extracted statement follows from the transcript or is true in the world. Withholding rejected/retracted facts is distinct from endorsing surviving facts. Summary checks test usability and optionally model-judged grounding; disabled or failing judgment can use a permissive legacy result. Ordinary generation failure can admit a bounded source slice, while strict regeneration can fail closed. Neither branch guarantees preservation of qualifiers: EPI-RTE-fact-proof, EPI-RTE-fact-withholding, EPI-RTE-summary-check, EPI-RTE-summary-admission.
There is also a concrete design/implementation mismatch. A source comment says the lossy retrieval synopsis never enters answer prompts directly. Ordinary summary-depth rendering instead returns stored synopsis after audience admission, and missing individual source rows need not force quarantine. Exact-copy structured claims exist separately, but do not impose an exact-source-only answer interface. “Proved” rendering here means admitted text, not semantic proof: EPI-CLM-private-synopsis, EPI-RTE-summary-rendering, EPI-RTE-structured-materialization, MEM-CLM-renderer-proof.
Optional actor cards provide a stronger positive witness of semantic acceptance for a named use. A separate evaluator judges immutable candidates against bounded actor evidence for durability, entailment, role, qualifiers and revocation. Software removes vetoed entries, connects accepted entries to sources and replaces the card under epoch/build-marker checks. Request-scoped assembly can then present preferences and person context, dropping whole low-confidence entries to fit its cap. The feature ships disabled; enabled delivery is guidance, not enforced obedience. This establishes implemented acceptance and integration capacity, not evaluator reliability, observed personalization or new explanatory knowledge: EPI-RTE-card-check, EPI-RTE-card-integration, MEM-RTE-card-refresh.
A representative outward workflow
The optional engagement runner demonstrates multi-step orchestration beyond answering. An external caller supplies candidates, source records, history, time and qualifier/drafter/fetcher callables. Code collects and verifies candidates, filters repetition, ranks, performs live checks and attempts at most three drafts. Rejection advances to another candidate rather than revising the same draft. Pre-verification deduplication limits contradiction detection; live checks verify selected metadata and an edited marker, not exact body or timestamp equality. See the workflow account and RT-RTE-engagement-stage.
Fidelity has a load-bearing type condition: a negative verdict vetoes a personal outcome, but a timed outcome bypasses that veto. Non-skip, nonempty timed drafts can reach staging when independent controls pass; the poster does not recheck fidelity. This is a wired possibility, not an observed unfaithful post. Default dry-run returns a report without sending. Explicit posting additionally needs enablement, a staging destination, live-source proof and an available day. A claim is retained before sending; ambiguous failure can leave that day unavailable, favoring duplicate avoidance over automatic retry. A returned message ID plus ledger update establishes the workflow's acknowledgment boundary, not community publication or transport-independent receipt: WF-RTE-draft-selection, RT-RTE-engagement-stage.
Assessment by task and evidence
For long conversations needing bounded model windows and recoverable earlier detail, the supported contribution is a wired reduction/reload architecture with durable derivatives and local correction controls. For exact testimony, attribution or preference-sensitive decisions, source retention and card admission offer inspectable routes, but synopsis rendering, structural fact proof and unfinished rebuilds prevent a blanket fidelity or withdrawal guarantee. For outbound follow-ups, bounded fallback and staging controls are supported, while universal fidelity rejection is not.
Automatic conversation derivatives, optional cards and engagement history shape later context or admission. The accepted profile verification confirms these local trace-fed update paths without converting them into measured improved capacity; it also preserves partial coverage across all ten comparison axes. Learning in the stronger sense of improved capacity for future action remains unestablished. LongMemEval code supports cache reuse and rubric-based answer scoring, not independently verified benefit. Its score enters benchmark results, not a demonstrated live policy-update consumer. The README comparison is attributed reporting; the same reader model alone cannot identify individual retrieval or compaction effects: MEM-RTE-evaluator-reuse, EPI-RTE-answer-scoring, EPI-CLM-answer-benefit.
The records do not establish a formulated explanatory-theory route, so they do not support a condition-by-condition theory-builder classification or a finding that criticism of a consumed theory improved future capacity. They likewise do not establish reflection or autonomous theory building. Code-owned maintenance and callable delegation should not be substituted for those properties. Exercised self-improvement is separately unestablished: retained updates have future consumers, but no registered subsequent-operation evidence closes causal dependence on those updates, and no outcome comparison demonstrates improvement. These are withheld conclusions, not system-wide absences: RT-RTE-memory-maintenance, RT-RTE-record-edits, EPI-RTE-card-integration, RT-RTE-engagement-stage.
Concrete changes that would alter this assessment include a fail-closed, complete-source rendering contract; semantic fact checks distinct from lineage checks; a fidelity veto covering timed drafts; and inspection of outstanding backend and consumer branches. Execution traces linking admitted updates to later behavior would establish activation. Independently inspectable, oracle-isolated comparisons could establish task-relative benefit; independent component variation would be needed for finer causal attribution. Both supplied verifications have no blockers or declared limits, and the reconciled reports retain no unresolved disagreement. Their acceptance does not remove the evidence limits below. No additional source reads were made for this synthesis.
Limitations
| limitation | affected SRC IDs and record citations | inspected boundary | conclusion prevented | evidence that would resolve it |
|---|---|---|---|---|
| No registered execution or causal comparison | SRC-1; RT-RTE-headless-chat, EPI-CLM-answer-benefit, EPI-RTE-answer-scoring | Frozen source implementation and attributed reports; no target execution | Observed activation, realized quality/cost/latency, improved future capacity, exercised self-improvement or component benefit | Inspectable runs tracing update-to-consumer effects; controlled comparisons at the claimed attribution level |
| Initial source authenticity and import fidelity unresolved | SRC-1; MEM-OBJ-source-content, MEM-OBJ-source-metadata, RT-RTE-import-history | Canonical source use and import driver, not complete adapter/original-transport proof | Authentic original testimony or lossless imported provenance | Adapter-to-original comparisons and authenticated provenance records |
| Summary admission/rendering and fact proof license narrower reliance than their labels suggest | SRC-1; EPI-RTE-summary-check, EPI-RTE-summary-rendering, EPI-RTE-fact-proof | Inspected checks and ordinary renderer; missing-row and permissive-fallback branches | Universal semantic fidelity, exact-source-only delivery or world-truth certification | Complete fail-closed provenance handling, semantic-check evidence and calibrated fidelity tests |
| Backend, save-owner and concurrent-consumer equivalence unresolved | SRC-1; RT-OBJ-engine-state, RT-CLM-compaction-fence, RT-RTE-record-edits | Selected saving/fencing and rebuild paths; provider saves and all caches/transactions not audited | Universal durability, concurrency invariants, lossless recovery or atomic withdrawal across every consumer | All-backend transaction/save traces, deployed enforcement configuration and concurrent rebuild/consumer checks |
| Card serving and model judgment remain bounded | SRC-1; EPI-RTE-card-check, EPI-RTE-card-integration | Semantic admission and optional assembly; complete store disclosure/expiry predicates and curator production not audited | Reliable inference, complete privacy guarantees, observed personalization or classification of generated claims as ampliative theory | Full serving/curator inspection and calibrated admission plus request-scoped execution evidence |
| Engagement verification and delivery are scoped, with a timed fidelity bypass | SRC-1; WF-RTE-draft-selection, RT-RTE-engagement-stage | Surviving candidates, selected live metadata, bounded drafts and staging sender | Exhaustive contradiction detection, exact quote equivalence, universal fidelity veto, community publication or actual bypass incidence | Pre-dedup contradiction checks, live body/time comparison, all-type veto, and sender/approval/receipt traces |
| Included alternative operations remain incompletely inspected | SRC-1; RT-RTE-mcp-tools, MEM-OBJ-tag-summary, MEM-OBJ-payload-archives, MEM-RTE-evaluator-reuse | Selected MCP, rollup, archive and evaluator paths; other resource, repair/backfill and evaluator bodies remain available but unread | Complete memory inventories, all-tool warrant/audience guarantees, verified repair, exhaustive acceptance/learning negatives or complete oracle isolation | Inspection of the named alternative producer/consumer paths, original repair inputs and all reader payload/judge paths |
| External host, service and model contracts are not frozen | SRC-1; RT-RTE-openclaw-hooks, RT-RTE-proxy-request, RT-CMP-chat-provider, RT-CMP-embedding-provider | Shipped hooks, interfaces and configured inference consumers, not enclosing hosts or service internals | End-to-end authorization, completion delivery, production isolation, exact deployed model fixity or parametric-training conclusions | Frozen host/service/model identities and inspectable deployment and delivery contracts |