036-mid-plan-acquisition

Mid-plan context acquisition and tiered widening (amends 002, 003 and 004)

Lifecycle approvedImplementation completeVerification unknownQualification unknown

An amendment of approved specs 002, 003 and 004 (R-16), for #76 child B1 under owner decision R-40 (OD-3 of #76). A plan may declare bounded acquisition steps that ask a host-implemented acquisition source for more context between steps, with requests built only from exact values and literals, and a tiered widening construct that tries a finite, declared list of increasingly broad requests (optionally across sources) until a stop condition holds, never relaxing protected constraints. Paging is bounded by pages, items and a stop condition. Adds acquisition operations to spec 032's source descriptor (`rustev.source/1`), acquisition request and page documents, the `compose_key@1` operator, a typed `skipped` outcome, compile-time call, item, byte, deadline and cost budgets, and the in-process `AcquisitionSource` seam a later remote protocol (#76 A2) carries. Every page is recorded and captured by request identity; offline replay never dispatches and an uncaptured request is `missing_evidence`. Adds to the #76 track versions introduced by spec 032 (source 1, definition 2, plan 3, evidence 2, run 3, exact 2), introduces the track version `rustev.replay/2`, and admits every plan 3 decision to capture and replay, lifting spec 032's interim `capture_unsupported` refusal. Plans that use no #76 construct keep byte-identical documents and `PlanId`s. Approved (A-33); implementation is complete.

Read the full pinned specification ↗

Relationships

Claimed units

  • extends
    {
      "nature": "amending",
      "spec": "002-decision-contract-and-pure-core",
      "unit": {
        "kind": "directory",
        "path": "crates/rustev-contract/"
      }
    }
  • extends
    {
      "nature": "amending",
      "spec": "002-decision-contract-and-pure-core",
      "unit": {
        "kind": "directory",
        "path": "crates/rustev-core/"
      }
    }
  • extends
    {
      "nature": "amending",
      "spec": "003-runtime-execution-and-evidence",
      "unit": {
        "kind": "directory",
        "path": "crates/rustev-runtime/"
      }
    }
  • extends
    {
      "nature": "amending",
      "spec": "004-evaluation-and-replay",
      "unit": {
        "kind": "directory",
        "path": "crates/rustev-eval/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "008-reference-package-lodging",
      "unit": {
        "kind": "directory",
        "path": "packages/rustev-pkg-lodging/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "027-node-and-wasm-bindings",
      "unit": {
        "kind": "directory",
        "path": "integrations/rustev-node/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "027-node-and-wasm-bindings",
      "unit": {
        "kind": "directory",
        "path": "integrations/rustev-wasm/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "006-cli-surface",
      "unit": {
        "kind": "directory",
        "path": "crates/rustev-cli/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "027-node-and-wasm-bindings",
      "unit": {
        "kind": "directory",
        "path": "crates/rustev-surface/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "028-opentelemetry-evidence-sink",
      "unit": {
        "kind": "directory",
        "path": "integrations/rustev-otel/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "010-integrations",
      "unit": {
        "kind": "directory",
        "path": "integrations/rustev-serve/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "007-support-routing-package",
      "unit": {
        "kind": "directory",
        "path": "packages/rustev-pkg-support-routing/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "027-node-and-wasm-bindings",
      "unit": {
        "kind": "directory",
        "path": "tools/rustev-conformance/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "031-public-api-and-release-family",
      "unit": {
        "kind": "directory",
        "path": "tools/rustev-release/"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-boundaries-and-authority",
      "unit": {
        "kind": "file",
        "path": "Makefile"
      }
    }
  • extends
    {
      "nature": "additive",
      "spec": "001-boundaries-and-authority",
      "unit": {
        "kind": "directory",
        "path": "scripts/acceptance/"
      }
    }

Source headings

  1. 036: Mid-plan context acquisition and tiered widening (amends 002, 003 and 004)
  2. 1. Purpose
  3. 2. Territory
  4. 2.1 Binding principles of #76
  5. 3. Behavior
  6. 3.1 Relation to OD-3 and to specs 002, 003 and 004
  7. 3.2 Source descriptors (`rustev.source/1`)
  8. 3.3 Acquisition requests and pages
  9. 3.4 The `acquire` step
  10. 3.5 The `widen` construct
  11. 3.6 Paging
  12. 3.7 Constructed keys (`compose_key@1`)
  13. 3.8 Skipped values and policy handling
  14. 3.9 Compilation, refusals and budget
  15. 3.10 Plan identity
  16. 3.11 Staged evaluation in the core
  17. 3.12 The acquisition seam
  18. 3.13 Runtime execution
  19. 3.14 Evidence
  20. 3.15 Capture and offline replay
  21. 3.16 Compatibility
  22. 4. Out of scope
  23. 5. Observable negative cases
  24. Acceptance
  25. Verification
  26. Implementation record
  27. Decisions at approval

Frozen anchors

No frozen anchors declared.