Skip to content

Read synthetic delegation Host input as UTF-8 - #8365

Open
cocolord wants to merge 2 commits into
mainfrom
codex/small-kernel-host-utf8-20261108T1004
Open

cocolord wants to merge 2 commits into
mainfrom
codex/small-kernel-host-utf8-20261108T1004

Conversation

@cocolord

@cocolord cocolord commented Nov 8, 2026

Copy link
Copy Markdown
Collaborator

Goal And Delivered Outcome

The synthetic delegation Host inherits a locale decoder on Windows CPython 3.11 even though its existing parent transport sends UTF-8 JSON. Unicode input can therefore fail the Host before the independent artifact validator runs, leaving the original-task recovery cases without task_failure.

Configure only the fixture Host's stdin as UTF-8. A File/SQLite regression simulates CP1252 in that child, rejects an invalid artifact, repairs it and revalidates the cached result with the original turn key and exactly one Host invocation. Related to #8360; target main, author baseline 4e949f405528fd8087f0623526c62f890c1ce982.

Author Declaration

  • Written by: model_agent — TRAE / GPT-6.
  • Specification: docs/architecture/rfcs/monorepo-distribution-split-v0.md §9 V4 and the existing generic Host transport / original-task revalidation contracts at the author baseline.
Criterion Disposition Path Evidence
Consume the existing UTF-8 pipe protocol implemented tests/test_local_delegation.py::HOST Same-environment immutable baseline Host fails the new oracle; corrected Host passes.
Preserve original task identity and avoid a second Host execution during artifact repair implemented New File/SQLite regression and tests/test_delegation_task_revalidation.py Source and isolated-wheel recovery checks below.
Preserve failure and remaining acceptance boundaries implemented Paired RFC non-normative checkpoint Original Windows and Frontstage failures retained; no performance or full-kernel claim.
  • Self-check: inspected the actual transport and validation owners, baseline sensitivity, complete recovery suites, package provenance, paired translation and public boundary. The adjacent refactoring pass found no additional extraction warranted: the encoding fix belongs to the existing source-owned Host fixture. No production rule, persisted state, protocol vocabulary or default Host environment changes.

Scope And Continuation

Complete fixture correction with a durable regression and paired qualification record. The parent minimal-kernel program stays open for complete provider-first transaction, PostgreSQL host/wheel, complete costs and adoption acceptance. Retain I3 for at least one minor release and all historical/frozen failures. #8360 retains its own exact-head review/CI gates. Native Windows verification of this new head remains pending; the prior failed run is retained. This proposal does not merge or upgrade an installed Host.

Validation

  • Tested fixture commit: a4ce613585fdb329ba3600f0ede768864214ed84; final paired-doc head: 107c4fab80406a96bb0f6ccfd62b47230034d2fc.
  • Run state: finished locally; CI pending after submission.
  • Input classes: synthetic, public_fixture.
Check kind Result Public-safe evidence / limitation
regression_parity passed CPython 3.13.5 / Node 22.22.3 on macOS arm64: replacing only the corrected fixture HOST with the immutable baseline makes the Unicode task-validation oracle fail. The corrected File/SQLite cases both pass. Earlier invalid probe preparations are retained separately.
integration / real_entrypoint passed tests/test_local_delegation.py plus tests/test_delegation_task_revalidation.py, CPython 3.13.5 / Node 22.22.3, 81 cases pass using temporary File/SQLite stores and synthetic subprocess Hosts.
integration / real_entrypoint passed CPython 3.11.15 / Node 22.22.3 source: new two provider cases plus all 12 existing original-task recovery cases pass, including MCP disconnection and lock-timeout recovery.
integration / real_entrypoint passed Fresh isolated monolithic wheel, CPython 3.11.15 / Node 22.22.3: the same 14 cases pass. Wheel imported before source-owned fixtures; all 1,920 present packaged tracked runtime entries match the source. The same 17 source-only exclusions remain: canary baseline, host plugin/config, fault-test helper and documentation/media.
static passed Ruff and paired staged RFC check; diff advisory introduces no shared vocabulary. Public-boundary subcheck passes for the three candidate files. Full local loopx check still fails on unrelated registered-Goal authority errors; private diagnostic contents are excluded.
static / integration passed Standard diff-derived loopx canary premerge --from-git-diff --git-diff-base origin/main: all five direct and 11 selected checks complete, zero blocking failures. The unchanged module-metric ceiling finding in loopx/extensions/lark/private_conversations.py is reported as an inherited advisory. The first attempt failed because this new worktree lacked TypeScript dev dependencies; npm ci --ignore-scripts prepared them, and the unchanged-head rerun passes. No gate was relaxed.
integration not_run New exact-head native Windows CI pending. The original #8360 Windows arm has six recovery failures. Its independently retried Frontstage manifest request still returns HTTP 504. #8360 also retains separate digest-declaration and selected-owner loading failures; this fixture correction does not resolve those gates.

The changed fixture is exercised through the real generic Host subprocess transport and real temporary File/SQLite providers. No model or real-agent execution, PostgreSQL host/wheel qualification, performance campaign, split installation or installed adoption is claimed. Existing recovery and failure classification remain intact.

Frontend / Visual Evidence

UI impact: none. No UI or documentation chrome changes; screenshots and preview are not applicable.

LoopX Area

  • Host or runtime integration
  • Public docs or presentation surface (RFC evidence only)

Shared-authority RFC fixture impact

N/A: no TypeScript migration or shared-authority production change.

Boundary Checklist

  • Public-safe diff/body; no private state, credentials, raw traces, internal links or local paths.
  • Scoped fixture repair; no competing implementation or benchmark work.
  • Both English/Chinese RFC files change together.
  • UI impact marked none.
  • Every commit includes a DCO sign-off.

cocolord and others added 2 commits November 8, 2026 18:08
Signed-off-by: lusendong.6789 <lusendong.6789@bytedance.com>
Co-authored-by: TRAE CLI <traecli@bytedance.com>
Signed-off-by: lusendong.6789 <lusendong.6789@bytedance.com>
Signed-off-by: lusendong.6789 <lusendong.6789@bytedance.com>
Co-authored-by: TRAE CLI <traecli@bytedance.com>

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant