oh-my-pi synthesis

Type: agentic-system-analyses/types/agentic-system-synthesis.md

Bounded synthesis

From request to controlled effects

oh-my-pi is an enclosing coding-agent runtime: its CLI constructs sessions, dispatches model inference, executes admitted tools and returns results to the caller. This account concerns the repository at 2431e8a8716a4da73ae327a412f6d54c22f681e5, with an applicability cutoff of 2026-10-14. SRC-1 supplies implementation and declared design, not execution traces or causal experiments. The boundary is complete artifact, partial loop: the artifact is pinned, but not every shipped producer, evaluator, driver and later consumer was traced. External provider weights, deployed services and installed third-party implementations are excluded. See boundary and evidence and Source register. The accepted report verification and profile verification declare no remaining blockers or publication limits; that does not remove the records' coverage and evidential qualifications. This synthesis used the supplied members without source reads.

An ordinary headless request passes through print mode, AgentSession and the core Agent loop. The caller supplies the problem; the model proposes text and tool requests; code owns scheduling, runnable identities, argument checks and execution. Tool results feed subsequent model steps. Steering and stop-boundary queues can extend the turn; exhausted queues or termination controls end it. Strict MCP readiness can prevent prompt dispatch. Extension context hooks and provider transformations intervene before inference, so accumulated history is not necessarily the delivered provider context. These are implemented routes, not observed successful work (RT-RTE-session-turn, RT-OBJ-system-prompt, RT-CLM-coding-agent).

The main effect boundary is execution admission, not acceptance of a correct solution. Revised requests are revalidated; wrapped tools resolve approval against effective parameters; denial or human rejection stops that invocation. A human veto is conditional on policy requiring and obtaining approval, not implied by starting a session. Shell command approval is not per-system-call confinement. Nor is the wrapper universal: Cursor native mutations have a separate live-grant/write-policy gate and reject prompt-required mutations on a channel that cannot ask approval. Optional speculative local reads require early authorization and later resource/evidence revalidation. Extension modules and factories execute during loading, outside ordinary tool-request mediation; their host guard is not an operating-system sandbox. These distinct owners prevent attributing one enforcement guarantee to all effects (RT-RTE-tool-dispatch, RT-RTE-cursor-exec, RT-RTE-speculative-read, RT-RTE-extension-load). Retry and dispatch recovery do not establish rollback of arbitrary file or remote mutations.

Delegation separates working conversations, not all effects

The representative workflow is a blocking, non-isolated child coding task with structured completion enabled. It was selected because the task tool, facade and executor form a connected shipped path, not because an observed usage distribution makes it typical. The foreground model proposes delegation; the task facade passes an assignment and selected resources; the executor constructs another AgentSession. Batch context is forwarded only when batch mode is enabled. The forwarded context-file list excludes files named agents.md, without ruling out other instruction-discovery paths. A child receives selected instructions and context, not a transparent copy of the entire parent conversation (workflow account, RT-RTE-task-spawn).

Completion has two consequential boundaries. The executor uses bounded reminders when structured work stops without a yield, and waits for owner background work. Newly delivered results can invalidate an earlier yield; failure to refresh it can produce a failed return with salvage output. Separately, finalization checks the selected output schema and mode. Strict policy can reject format failure; permissive policy can still reject, while some explicitly overridden submissions can return with a warning. Neither pending-work settlement nor schema validity tests the semantic correctness of the child's patch (WF-RTE-completion-barrier, WF-RTE-output-finalization).

Finalized output can be written untruncated to an artifact before the executor bounds the returned text. The model-facing task envelope adds status and another preview budget. Temporary artifact cleanup can remove the target of a rendered pointer. Thus neither a completion marker nor an agent:// pointer proves full reasoning transfer, durable retrieval or accepted work. The parent regains next-step ownership through the tool result; caller delivery belongs to the foreground session's eventual output. In the selected non-isolated path, result failure does not undo child edits. Separate conversations can also share parent-backed Hindsight or Mnemopi banks through explicit operations, while automatic child recall/retention is suppressed (WF-RTE-result-delivery, RT-RTE-session-turn, RT-RTE-task-spawn, MEM-RTE-hindsight-retention, MEM-RTE-mnemopi-retention).

Later turns receive selected retained material

Session retention is not simply replay of the visible transcript. Reconstruction selects a branch and its latest reset/checkpoint, combines retained and later turns, inserts valid notes and filters unsafe turns. Text summaries, opaque provider replay payloads and image-encoded archives are distinct checkpoint parts. A readable summary cannot establish what an opaque payload contains; archive delivery has byte budgets distinct from display rendering. A whole-replacement notebook has branch ownership and size checks, and the latest valid revision can survive removal of older active turns. Explicit full-branch history access can recover details, but a path in context requires a subsequent tool request rather than automatic dereferencing (MEM-RTE-context-rebuild, MEM-OBJ-compaction-summary, MEM-OBJ-provider-payload, MEM-OBJ-snapcompact-archive, MEM-RTE-notebook-update, MEM-RTE-artifact-read).

Backend memory has several different progressions:

  • Local memory starts eligible rollout extraction and project consolidation for enabled, persisted top-level sessions. Schema checks, secret redaction and nonempty fields admit model-derived outputs. The published summary is automatically budgeted into guidance; detailed memory and generated procedures are explicitly readable. Scripts are published code text, not established executed capabilities; template/example form and consumers remain unresolved. Learned bullets have separate explicit admission, deduplication and a 100-bullet cap. The summary takes injection budget first, so lessons can receive no space. A snapshot can remain frozen after conversation starts (MEM-RTE-local-consolidation, MEM-OBJ-memory-summary, MEM-OBJ-local-scripts, MEM-OBJ-local-templates, MEM-OBJ-local-examples, MEM-RTE-local-lessons).
  • Mnemopi and Hindsight compose first-turn queries from the prompt/recent history and configured scopes, budget the returned material, then persist delivered recall for reuse. This supplies context without a foreground recall call. Explicit recall/reflect and full-row reads are demand paths. Mnemopi can announce changes to tracked previews without rewriting historical recall; Hindsight reuses text without that ID comparison. Hindsight also supplies a separate stable mental-model cache with generation/deadline-controlled publication, not first-turn recall persistence. Service retention requests do not prove upstream durability or transformation (MEM-RTE-backend-recall, MEM-OBJ-recall-entry, MEM-OBJ-mental-models, MEM-RTE-hindsight-retention).
  • Sharpshooter extracts decision deltas from committed top-level user turns and bounded referent context, queues admitted deltas, then consolidates project files for budgeted instruction supply. Evidence strings must occur in the triggering prompt. This checks occurrence, not whether the proposed interpretation follows. Final replacement files have separate structural/redaction gates; optional rationale can reach consolidation without surviving every final sentence or delivery budget. Sequential renames do not provide multi-file atomic rollback (MEM-RTE-decision-memory, MEM-OBJ-decision-deltas, MEM-OBJ-project-decisions).

These mechanisms distinguish retention, selection and authority. Local memory asks the model to treat guidance as heuristics subordinate to current evidence; project decisions ask it to follow them unless overridden. Both are natural-language influence, not enforced compliance. Retained identifiers, scopes and ownership tokens can instead enforce software eligibility at their particular consumers. Deletion and withdrawal are also consumer-relative: Mnemopi facts are read-only through memory_edit, update/forget require working rows, and retirement differs from deletion. Historical prompt copies can remain after live-store changes; Hindsight clear does not clear the upstream bank (MEM-BAP-memory-guidance, MEM-RTE-memory-edit, MEM-RTE-backend-recall, MEM-RTE-hindsight-retention).

Trace-fed revision is implemented; benefit and theory criticism are separate

The strongest supported learning-related contribution is conditional automatic trace-to-durable-guidance wiring. Local rollout consolidation produces later memory/procedure supply; Sharpshooter produces later decision instructions; private auto-learn capture can produce durable lessons or managed skills. This is more than raw logging, but is not evidence that future capacity improved. No before/after capacity comparison or causal intervention was supplied (MEM-RTE-local-consolidation, MEM-RTE-decision-memory, MEM-RTE-autolearn-capture).

Private capture requires a top-level controller, enabled settings including autoContinue, sufficient tool activity, a non-aborted eligible stop outside plan/goal diversion, and available model/tools. It copies history into a detached agent restricted to learn and manage_skill. The model may elect no write. The synthetic capture instruction expressly does not represent a user answer or approval. Managed mutation checks name, content, byte limits and filesystem constraints; discovery gives enabled authored skills precedence. An invocation builder can read a selected retained body, but complete dispatch and compliance remain unobserved. Description sanitization can erase meaning, such as removing the comparison operator in a<b, so normalization does not warrant universal semantic preservation (EPI-RTE-capture-turn, EPI-RTE-skill-mutation, EPI-RTE-skill-readback, EPI-RTE-description-sanitize, EPI-CLM-managed-library).

For these selected session/capture paths, theory-builder conditions remain independently unestablished: 1, no supplied formulated theory instance; 2, no demonstrated decision dependence on what such a theory says; 3, no established content-directed criticism with resulting revision or changed reliance; 4, no established retained criticism result shaping a next round. Delivered procedural text and a requested usefulness judgment do not close those gaps. Whether criticism of a consumed theory improved future capacity is likewise unestablished, not disproved. Reflection is not established: the account does not close both directions between a selected system aspect, its self-representation and representation-mediated changes. Computation owns many scheduling and update operations, but this does not establish an autonomous theory builder performing every internal theory operation. These limits concern the inspected routes, not a system-wide absence or a claim about inaccessible model processing (epistemic bounded conclusion, EPI-RTE-capture-turn, RT-CMP-agent-model).

Self-improvement has a supported partial pathway: the capture objective requests genuinely reusable material; operating traces can shape proposals; admitted files can supply later instructions. The unresolved links are whether objective-bearing evidence actually determined a useful update, whether subsequent operation exercised its authority path, and whether behavior causally depended on it. Consequently this boundary supports conditional improvement-directed self-change machinery, not exercised or successful self-improvement. Improvement of an external coding work product would not settle that question. Reflection, autonomy and future-capacity improvement remain separate properties (MEM-RTE-autolearn-capture, EPI-RTE-capture-turn, EPI-RTE-skill-mutation, EPI-RTE-skill-readback).

Checking is heterogeneous rather than a single answer oracle. The exposed eval judgment helper returns typed model assessments over caller-selected questions to an awaiting cell. It supplies no generic mandatory product disposition without a particular consequential cell consumer. Format checks, policy checks, evidence occurrence and model judgments each license narrower conclusions than truth or procedural efficacy. Generic generated-content relations remain indeterminate without actual propositions and premises; persistence and use do not establish accepted knowledge (EPI-RTE-eval-judgment, EPI-CMP-judge-chain, epistemic bounded conclusion).

Scenario-relative assessment and what would change it

For a delegated coding request, the inspected architecture supports separate child work, scheduling/format rejection and bounded status-bearing return. It does not certify the patch or reverse non-isolated effects. For continuation across long sessions, it supports checkpoint/notebook reconstruction and explicit recovery, without establishing fidelity of opaque or image history. For cross-session reuse, it supports backend-specific automatic guidance and explicit retrieval, but preservation of prompt bytes can delay visibility of changed memory. These are different operating scenarios, not a product ranking.

A trace linking request, effective gates, child work, finalization and actual parent delivery would establish bounded operation. Consumer-side captures of reconstructed provider messages would clarify which retained bytes survive transformation. Recorded memory production and later action dependence would strengthen reuse claims; independent update/no-update comparisons against a specified future-task objective would test benefit at the level varied. Actual stated theories, targeted criticism, revised reliance and retained next-round use would change the theory-builder assessment. Particular eval-cell disposition traces, semantic acceptance criteria, complete skill dispatch, and traced core/vector/withdrawal alternatives would change their local authority and coverage conclusions. The current records establish none of those stronger findings merely from available code.

Limitations

The verifications declare no additional publication limits, and the supplied reconciliation contains no remaining unresolved conflict. The following rows retain the analytical consequences of the partial boundary and local evidence gaps; they are not evidenced absences.

limitation affected SRC IDs and record citations inspected boundary conclusion prevented evidence that would resolve it
Implementation without execution or intervention SRC-1; RT-RTE-session-turn, MEM-RTE-autolearn-capture, WF-RTE-result-delivery Pinned source and design; no target run or causal experiment Observed activation, reliability, behavior dependence, future-capacity improvement or causal benefit Inspectable linked executions; objective-specific capacity evidence and independently varied comparisons for causal claims
Available shipped loops remain incompletely traced SRC-1; boundary, RT-RTE-session-turn, RT-RTE-extension-load Primary runtime and selected alternatives, not all modes, drivers, advisors, maintenance or evaluation paths Whole-system coverage, universal enforcement, system-complete epistemic or learning negatives Producer/admission/consumer accounts of the material alternatives, at the same pin or in a separately bounded new run
Checkpoint production and delivered opaque/image content unresolved SRC-1; MEM-RTE-context-rebuild, MEM-OBJ-provider-payload, MEM-OBJ-snapcompact-archive Selected commit/rebuild logic and checkpoint parts, not all producers/encoders/provider consumption Uniform form or lineage, semantic fidelity, complete compaction trace-learning classification or preservation of all reasons Traced producers and consumer encoding, with input/checkpoint/provider-context comparisons
Mnemopi core and alternate admissions unresolved SRC-1; MEM-RTE-mnemopi-retention, MEM-RTE-memory-edit, MEM-OBJ-memory-embeddings, MEM-OBJ-binary-vector Adapter inputs, schema and edit eligibility; core extraction/ranking/TTL/propagation and CLI/MCP/module alternatives incompletely inspected Complete derivation, selector, curation, numerical provenance or withdrawal guarantee Core write-to-selection traces and alternate caller/admission accounts, including propagation to facts, vectors and retained copies
Hindsight backing and initialization unresolved SRC-1; MEM-RTE-hindsight-retention, MEM-OBJ-mental-models, MEM-RTE-backend-recall Target-side requests and stable-cache publication; external service excluded, seed/rendering partly unresolved Upstream durability, derivation, acceptance, deletion or complete stable-cache lineage Authorized evidence covering seed/loading and an independently declared service boundary with retention/withdrawal evidence
Publication and historical context differ from current live state SRC-1; MEM-RTE-local-consolidation, MEM-RTE-local-lessons, MEM-RTE-decision-memory, MEM-RTE-backend-recall Inspected lease/publication, snapshot, replacement and recall reuse paths Atomic multi-file publication, immediate prompt freshness or universal withdrawal of already-delivered material Publication/recovery protocols and consumer-specific refresh/withdrawal evidence across open and resumed sessions
Generated artifacts and prepared skill bodies have incomplete downstream routes SRC-1; MEM-OBJ-local-scripts, MEM-OBJ-local-templates, MEM-OBJ-local-examples, EPI-RTE-skill-readback, EPI-RTE-description-sanitize Publication/explicit reading and managed invocation preparation; execution/rendering/full dispatch unresolved Executed generated capability, universal meaning preservation, full skill delivery, compliance or usefulness Actual artifact content and traced interpreter/render/dispatch consumers; semantic-preservation and efficacy evidence in a named domain
Delegation checks are selective and pointers conditional SRC-1; WF-RTE-completion-barrier, WF-RTE-output-finalization, WF-RTE-result-delivery Blocking non-isolated structured task; selected driver/finalizer/renderer/cleanup Universal task reliability, semantic acceptance, all-interleaving guarantees, durable artifact retrieval or rollback Lower-layer scheduling and delivery traces, retained-artifact retrieval evidence, and separately traced semantic verification/isolation/recovery policies
Candidate meaning, consequential judgment consumption and criticism-driven improvement unestablished SRC-1; EPI-RTE-eval-judgment, EPI-RTE-capture-turn, epistemic bounded conclusion Generic model generation/capture and typed judge return, without actual theory/candidate/criticism instances or cell-specific disposition Entailed or ampliative classification, evidence-consuming epistemic acceptance, theory-builder conditions, reflection, autonomous theory building or exercised self-improvement Named candidates/premises, check criteria and operative dispositions; retained criticism/revision/next-round evidence; later self-change dependence and independent benefit comparisons
Client pin does not pin model parameters SRC-1; RT-CMP-agent-model, EPI-CMP-judge-chain, MEM-OBJ-memory-embeddings Local model descriptors, live resolution and numerical storage; weights/worker internals unresolved Fixed-weight, exact-version or absent-provider-learning conclusions Exact model/artifact identities and authorized evidence of parameter mutability and endpoint resolution for each component