Carry complete Goal sources through typed coordination and reconcile cutover work - #5006
Conversation
…nsfers Signed-off-by: huangruiteng <14976749+huangruiteng@users.noreply.github.com>
…er work Signed-off-by: huangruiteng <14976749+huangruiteng@users.noreply.github.com>
…ource adapter Signed-off-by: huangruiteng <14976749+huangruiteng@users.noreply.github.com>
|
Author validation for head The final diff is 21 files, +672/-106. Source projection and management use the existing typed domain handlers; Python retains byte/file adaptation in the existing source adapter. Wire identities and the 16 MiB artifact cap are generated from the coordination manifest. The generic 2 MiB RPC limit, source witnesses, durable operation identity, event-writer hold and provider/default authority are unchanged. The socket fix keeps a disconnect local to that connection; it does not cancel or replay the underlying operation. Validation on the final implementation:
The native vocabulary gate caught the initial additional same-name Python/TS module pair. The final implementation removes that pair, reuses the existing Python source adapter and generates the shared protocol instead of changing a ceiling. The future-facing pass also replaces contradictory current RFC PR counts with one inventory distinguishing shipped code, open PRs, proposed code boundaries and qualification work. Frontend/API/configuration shapes are unchanged; the affected production CLI journey is exercised through independent processes. The remote mutant job also exposed a missing source-copy dependency on the already-shipped Python-discovery helper. The frozen runner now includes and hashes that helper; both unchanged controls pass and both injected defects fail by assertion. Broader D1–D3 qualification, event-writer binding, external-effect fences and default onboarding remain unclaimed. This control-plane PR is left for maintainer review and merge; GitHub CI is separate from the local evidence above. |
…cles Signed-off-by: huangruiteng <14976749+huangruiteng@users.noreply.github.com>
Complete-source projection on current
mainfails the existing large File/SQLite fixture before provider admission: the source does not fit the 2 MiB RPC envelope. This PR carries complete sources through the existing typed projection, bootstrap, capture, inspection, qualification and reviewed-promotion handlers using one private, hash-bound local file exchange. A real CLI regression now bootstraps, captures a write, qualifies, promotes and reads back every large record.The generic RPC budget stays 2 MiB; request/result artifacts have an explicit 16 MiB cap. Wire identities and the byte cap are generated from the existing coordination contract, and Python IO stays in its existing projection adapter. Method, byte length, digest, regular-file identity and private directory checks precede domain execution. Existing TS schemas, source locks, admission and durable receipt owners remain authoritative, and inline callers remain compatible. No provider default or event-writer binding is enabled. Result-delivery failure still requires existing operation-receipt recovery; it never automatically retries a mutation. A related socket-error repair prevents a client that abandons an oversized response from taking down the shared runtime.
The bilingual RFC update withdraws stale “5–8 / 6–8 / 7–9 PRs remaining” claims. It separates merged implementations, six relevant open PRs, four proposed new delivery boundaries and D1–D3 evidence work. The four boundaries are a development plan, not a guaranteed total PR count. See the reconciled frontier. Related: #4574, #4224, #5003; this does not duplicate the event-completion transaction.
Validation:
goal_topic_runtime.pymaintainability debt also reproduces on cleanmainatd64c4d377. Its ceiling is unchanged; this is not an all-green broad-suite claim.Tradeoffs: complete parsed objects remain in memory; this is bounded bulk transport, not streaming or storage qualification. A 32-pair warm small-source comparison measured inline/artifact median 9.15/11.62 ms and p95 11.60/15.93 ms. A timed-out handler can leave a temporary file on Windows when the OS still holds it open. Frontend/API shapes and configuration are unchanged; existing public CLI entrypoints exercise the new transport. The managed-worker test now declares its intended selected-work acceptance scope explicitly.
Future-facing pass: use one domain-owned transfer codec across all affected hops, retain the existing typed semantic owners, and replace contradictory current roadmap counts with one evidence inventory. Source capture beyond this cap, event-writer binding, external-effect fencing, D2 qualification and default onboarding remain explicit boundaries. Maintainer merge required.