Skip to content

(OPT) Prove absent auxiliary carriers for authenticated ordinary call roots #898

Open

Description

@wsdt

The prior pushed 3b normalizer operation receipt charged a 50,515,936-byte structural prebound within the unchanged 64 MiB cumulative builder limit, then refused during first HIR validation (ReplayPlanSkeleton). This is cumulative reservation accounting, not process RSS; the terminal request/remaining gap is not an estimate of total recovery needed.

Discovery on current 892 identified a narrower upstream opportunity in src/workspace_graph/expected_projection/cost.rs:250-278 and ROOT_AUXILIARY_CARRIERS at 793-799. Existing carrier-free position proofs cover boxed expressions and argument-vector entries, but ordinary Call roots still retain all six auxiliary carrier footprints. The ordinary FinishCall constructor at src/hir/resolve_expr.rs:962-988 constructs a ResolvedExpr and moves arguments; those six carriers are not formed there.

Implement a closed, authenticated ordinary monomorphic free-function call classification only in already-proven carrier-free positions outside closures. Resolve actual authored/imported targets and exclude lexical callable shadowing, intrinsic/method/generic dispatch, synthetic/default expansion and delegated roots unless separately proven. Preserve the entire expression, four cleanup-storage footprints, cleanup-plan/reachability/bookkeeping, identities/text, all children and every live reservation. Do not change multipliers, limits, requirements or baseline accounting.

Acceptance: independent complete AST/HIR absence census and unchanged whole-old prebound algorithm on identical sources; exact measured qualified-root count and sizeof-derived delta; default/hostile/fallback and exact/one-short/zero controls; complete live allocation/Drop observations; identical admitted HIR and six-field diagnostics at matched successful budgets. Run unchanged Catalog/ShiftSim/normalizer admission and retained functional owners after the implementation batch, plus scoped production Clippy. Only focused checks, never full gates. Update existing owning spec/help only as necessary; no evidence dossier.

This extends the upstream absence-proof work in #764. No measured saving, application admission recovery, wall-time improvement or live-agent token advantage is established. Keep the issue open if the complete recovery/qualification is insufficient.

Activity

  1. wsdt commented on Oct 22, 2026

    @wsdt
    MemberAuthor

    The exact 19241ca1b focused run completed all 50 filters: 137 tests passed and 16 failed. This issue remains open because its unchanged whole-public-window allocation assertion failed: 64 ordinary calls reached a 2,254,266-byte observed peak, above both the current 543,852-byte and prior 585,172-byte retained-HIR forecasts. The final resolved owner retained 257,091 bytes; cumulative allocation was 27,261,516 bytes. These are different measurements, not interchangeable savings or token counts.

    The dominant observed peak includes the test-only factored crosscheck, but the shipping ordinary HIR/PLAN path interval also retained 738,186 bytes, so removing or excluding the shadow check would not establish acceptance. The original assertion and complete resolve + validate + Drop window stay intact.

    Implementation lanes are addressing genuine duplicated prefix/path storage through paid fanout sharing and complete immutable ordinary histories. Neither change is qualified yet. No replay multiplier, budget increase, reduced application requirements or token-advantage claim is being used to resolve this failure.

    Run: https://github.com/wavect/semaprax/actions/runs/39853877148

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions