Skip to content

[Epic][Calls] Remove the infrastructure blockers found in the 200-class screen #483

Open

Description

@CaelmBleidd

Goal and evidence

Track the missing implementation required to expand the real TypeScript class experiment beyond the infrastructure frontier found in the frozen 200-class screen. This is an implementation/readiness map, separate from paper task #482 and the existing model-census/audit roadmap (#367/#368/#360).

The sealed v7 ledger contains 48 selected classes and 152 preordered reserves. First failures were: imports/dependencies 82, module initialization 93, class AST/reachability/instrumentation 18, input/state domains 4; only 3 surfaces were prepared. These are first gates, not 197 failed machine searches. Fixing a first gate can expose another prerequisite; it does not prove a class executable.

The five dynamic-import/require diagnostics are actually literal require('../package.json') sites. The 12 missing-local cases consist of 11 generated _ids dependencies and one rt.wat.js wrapper. Those concrete problems are tracked separately from general async/dynamic loading and from core execution semantics.

The 15 implementation tasks below fill the missing tracked scopes. The first-gate map covers all 197 rejected records and retains the three prepared records separately. All tasks reuse the existing Calls/PBT loader, domain, replay and observation contracts rather than replacing completed bounded foundations.

Already delivered or awaiting integration

Completion boundary

Maintain an immutable before/after ledger for the same 200 identities and the next exposed gaps. Preserve full class member surfaces, independently frozen domains, exact source-owned statement denominators, and failure/unsupported outcomes. Validate supported positive cases against original/instrumented native execution. Record new scientific domain/scope versions explicitly; never transfer the side-corpus K=string specialization to the original population silently.

The final readiness gate is an evidenced supported representative population and a 30/120s four-profile pilot. This epic does not promise that all 200 classes are supported by one permissive loader change or require positive comparative results.

Local source of truth: iccq2026-paper/experiments/class-coverage-round-robin-20261002/real-class-campaign-20261014/original/selection-ledger-v7.json and V7_INFRASTRUCTURE_FRONTIER.md; corrected machine diagnostic: real-class-machine-diagnostic-20261014/revised-protocol-v8/README.md.

First-gate implementation map

First gate Records Owning task Stage
External/aliased project imports 64 484 P0
Missing generated/runtime local dependencies 12 485 P0
Literal package.json require 5 486 P0
Module initialization 93 487 P0
Cyclic local module graph 1 488 P1
Nested closure/callback source ownership 11 489 P1
Inherited/static class lifecycle 3 490 P1
Receiver aliases/private reachability 2 491 P1
Destructured/rest invocation shapes 2 492 P1
Indexed-record domains/state 3 493 P1
Generic/union class domain policy 1 494 P1
First rejected records 197

Counts name the first saved rejection, not guaranteed admissions after fixing it. No feature task is credited with solving every record in its row.

Three prepared original records

Class Preserved v7 outcome Current tracked continuation
Stats Original primary plan admitted it; symbolic numeric-to-string remained limited #496 plus #498 versioned re-audit
Perm Full surface prepared, later source gate rejects const zeroCache = [] #487 plus #498
FaceNameSwizzler Native probe succeeded; known frontend binding defect excluded primary inference JacoDB PR #437 merged; integrate USVM PR #479 and re-check the class/frozen correctness-frontier evidence in #498

These later barriers do not add to the 197 first-rejection counts. Historical correctness evidence is retained; a revised frontend/scope must have its own source/native checks before the exclusion is changed.

Work beyond the first gate

  • 498: P0 baseline tooling + final integration gate. Ship reusable discovery and replay the same 200-identity admission ledger. Its initial contract can land before feature work; its final readiness gate follows supported integrations.

  • 496: P1 execution gap, observed in admitted Stats. Share symbolic numeric-to-string semantics across concatenation/String and coordinate Number.toString with [TS] Replace the constant toString call approximation #436 and mixed addition with [TS] Bug with add operator #310.

  • 495: P2 additional side/follow-on domains, recursive graphs/aliases and source-attested callable/accessor state. Integrate existing callable storage/input tasks rather than recreating them.

  • 497: P2 strict-diagnostic quality, complete symbolic exceptional observations. Native primary coverage of complete agreeing replays already works in [Calls] Preserve reached inputs and measure native class coverage #479; this task does not block it or restore the old strict gate.

Existing tasks and shared implementations

Existing work Role in this map
#373 / PR #479 Actual class consumer now exists; stopped-prefix/queued input harvesting is implemented in the open PR, awaiting main integration and owning-issue acceptance. No duplicate frontier task.
#367 / #368 / #360 Census, finite model-selection roadmap and semantic approximation audit; begin after classes reach the machine, reusing existing telemetry. They do not repair loader/domain gates by themselves.
#436 / #310 Receiver-proven toString and mixed-kind addition; integrate the narrower shared symbolic-number formatting contract in #496.
#298 / #467 / #462 Callable-field storage, runtime-sort changes and callable input synthesis; dependencies only for the corresponding branches of #489/#491/#495.
#388 Existing direct/sparse array growth execution task; a follow-on runtime capability, not a newly fabricated count in this screen.
#359 Type-relation/support boundaries; reusable for generic and structured domains.
JacoDB #400 Generic superclass arguments/substitution for the generic-inheritance slice of #490/#494. Non-generic slices can land first.
JacoDB #319 Synthetic/explicit constructor identity and method-list consistency for legacy/model-conversion class lifecycle cases.
Closed #350/#351/#396, #440, #425/#426/#427; merged JacoDB #378 Bounded binding/domain/observation, lexical-this, property presence/deletion, catch routing and frontend module initialization foundations to reuse, not recreate or reopen.
#482 Required article discussion of modeling effort/type-domain limits; editorial work, separate from implementation acceptance.

Dependency and delivery order

  1. Integrate PR [Calls] Preserve reached inputs and measure native class coverage #479; the JacoDB parameter-property fix [TS] Normalize negative indices in Array.fill #437 is already merged. Establish the [Calls] Ship reusable class discovery and re-audit the same frozen 200-class population #498 reusable discovery/identity/domain/diagnostic contract and reproduce the frozen baseline.

  2. Run the P0 source tracks in parallel once their small shared contracts are agreed: [Calls] Support source-attested literal JSON require and import in class projects #486 literal JSON metadata, [Calls] Execute bounded module initialization consistently in symbolic and native preparation #487 bounded initialization/Perm, [Calls] Resolve frozen real-project imports with tsconfig and package metadata #484 project resolution and [Calls] Acquire and freeze generated sources and runtime assets for class preparation #485 generated assets. Start with the concrete small positive cases, then report each next gate.

  3. Integrate [Calls] Preserve module identity and live bindings in cyclic source replay #488 module cycles after resolution and initialization; [Calls] Measure inherited and static class lifecycle without foreign-class coverage #490 lifecycle after initialization. Develop [Calls] Attribute nested closures and callbacks to a fixed class statement universe #489 closures, [Calls] Preserve destructured and rest class parameters in frozen scenarios #492 parameters and [Calls] Support bounded indexed-record inputs and complete class state snapshots #493/[Calls] Freeze explicit generic and union class input domains independently of outcomes #494 domains on the shared baseline contract. [Calls] Check private-member reachability through aliased and escaping receivers #491 receiver reachability consumes the closure contract.

  4. Complete relevant runtime branches with existing tasks and [TS] Convert supported symbolic numeric values to strings across shared language routes #496. Keep [Calls] Reconstruct bounded recursive and executable object state without flattening it #495 deep/executable state and [Calls] Preserve complete symbolic exceptional observations for class replay diagnostics #497 strict exceptional snapshots identifiable as later integrations; they need not block unrelated supported pilots.

  5. [Calls] Ship reusable class discovery and re-audit the same frozen 200-class population #498 rechecks all 200 identities after milestones, records next gaps, then freezes a supported representative pilot for all four profiles and 30/120s. Model census/audit [TS Calls] Build a real-project call census and model roadmap #367/[TS Calls] Audit and classify existing semantic approximations #368 and paper discussion [Paper] Discuss the engineering cost and type-domain limits of TypeScript models #482 consume that evidence.

flowchart TD
    I["Integrate #479; JacoDB #437 merged"] --> B["#498 baseline discovery and frozen 200 ledger"]
    B --> P["P0 project/asset/JSON/init: #484-#487"]
    P --> C["#488 cycles"]
    P --> L["#490 lifecycle"]
    B --> K["#489 closures"]
    B --> Q["#492 parameters"]
    K --> A["#491 receiver aliases"]
    B --> D["#493 records; #494 generics"]
    B --> R["#496 numeric strings + existing runtime tasks"]
    C --> F["#498 milestone audits and supported 30/120s pilot"]
    L --> F
    A --> F
    Q --> F
    D --> F
    R --> F
    F --> E["#367/#368 model evidence; #482 paper"]
Loading

Implementation checklist

  • 484 — [Calls] Resolve frozen real-project imports with tsconfig and package metadata

  • 485 — [Calls] Acquire and freeze generated sources and runtime assets for class preparation

  • 486 — [Calls] Support source-attested literal JSON require and import in class projects

  • 487 — [Calls] Execute bounded module initialization consistently in symbolic and native preparation

  • 488 — [Calls] Preserve module identity and live bindings in cyclic source replay

  • 489 — [Calls] Attribute nested closures and callbacks to a fixed class statement universe

  • 490 — [Calls] Measure inherited and static class lifecycle without foreign-class coverage

  • 491 — [Calls] Check private-member reachability through aliased and escaping receivers

  • 492 — [Calls] Preserve destructured and rest class parameters in frozen scenarios

  • 493 — [Calls] Support bounded indexed-record inputs and complete class state snapshots

  • 494 — [Calls] Freeze explicit generic and union class input domains independently of outcomes

  • 495 — [Calls] Reconstruct bounded recursive and executable object state without flattening it

  • 496 — [TS] Convert supported symbolic numeric values to strings across shared language routes

  • 497 — [Calls] Preserve complete symbolic exceptional observations for class replay diagnostics

  • 498 — [Calls] Ship reusable class discovery and re-audit the same frozen 200-class population

Activity

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