RFC-0165: Python De-Hosting Roadmap
Status: accepted
Date: 2026-06-27
Summary
Create a granular roadmap for replacing the 172 remaining Python tool surfaces
with 0x0 scripting and native 0x0 runtime backend support.
Motivation
Python remains in many repository tool paths. Earlier scripting work established
0x0 script mode, REPL support, host ABI evidence, and closure gates, but the
remaining Python inventory still needs an implementation-sized plan.
The goal is not to keep Python as a thin adapter. The goal is to make 0x0 own
tool policy and to add native runtime support wherever a migrated tool needs a
host effect that script mode cannot yet perform.
Design
1. Add python-dehosting-roadmap.html as the migration source of truth.
2. Keep the live inventory counts visible: the frozen scope remains 172
original remaining Python rows, and the progress ledger now records 176
migrated rows, zero remaining rows, zero production-critical host-only
adapters, and no temporary shims.
3. Define a per-milestone acceptance template: create a .0x0 source owner,
preserve the existing command or Make target, keep diagnostics stable, update
the ledger, and run the smallest relevant gate.
4. Add Phase 0 migration infrastructure: a frozen 172-row snapshot, optional
progress-ledger fields for replacement owner, native backend dependency,
parity gate, and migration note, a native backend gap template, and a parity
harness for old/new command evidence.
5. Migrate tools/adr-rfc-check.py to tools/adr-rfc-check.0x0 as Phase 1.1,
preserving make adr-rfc-check and moving ADR/RFC inventory and changed-file
coverage policy into 0x0 scripting.
6. Migrate tools/docs-coverage-check.py to
tools/docs-coverage-check.0x0 as Phase 1.2, preserving
make docs-coverage-check and moving documentation coverage, navigation,
release-helper, and public-doc drift policy into 0x0 scripting.
7. Migrate tools/docs-safe-check.py to tools/docs-safe-check.0x0 as Phase
1.3, preserving make docs-safe-check and moving single-document Markdown
safety policy into 0x0 scripting with shell timeout enforcement.
8. Migrate tools/documentation-impact-check.py to
tools/documentation-impact-check.0x0 as Phase 1.4, preserving
make documentation-impact-check and moving documentation impact change-set
policy into 0x0 scripting.
9. Retire tools/doccheck.py as Phase 1.5 because make docs-check already
routes through tools/doccheck.0x0 and tools/doccheck.sh.
10. Migrate tools/static-site-bundle.py as Phase 1.6 by moving route/deploy
planning and manifest policy into tools/static-site-bundle.0x0, keeping
file effects in a non-Python shell wrapper, and preserving byte-for-byte
bundle output.
11. Migrate tools/public-ux-generate.py as Phase 1.7 by moving public route,
library route, redirect-backed page, metadata, sitemap, robots, and search
planning into tools/public-ux-generate.0x0, keeping file rendering in
non-Python shell and awk wrappers, and preserving byte-for-byte generated
artifacts.
12. Migrate tools/host-abi-check.py as Phase 2.1 by moving host ABI schema,
operation inventory, capability, argument, result-shape, determinism,
error-code, and status validation into tools/host-abi-check.0x0 while
preserving make runtime-host-abi-check.
13. Migrate tools/abi-source-check.py as Phase 2.2 by moving ABI version,
docs, compiler source, linker/object helper, fixture, mismatch diagnostic,
and direct ELF metadata validation into tools/abi-source-check.0x0 while
preserving make abi-source-check.
14. Migrate tools/abi-layout-check.py as Phase 2.3 by moving ABI v1
value-layout TSV schema, required value row, documentation, ADR/RFC, and
release-helper validation into tools/abi-layout-check.0x0 while
preserving make abi-layout-check.
15. Migrate tools/abi-v1-layout-check.py as Phase 2.4 by moving promoted
layout row, core source, compatibility reader, stale-doc, compatibility
matrix, JSON report, and stable diagnostic validation into
tools/abi-v1-layout-check.0x0 while preserving
make abi-v1-layout-check.
16. Migrate tools/abi-contract-hardening-check.py as Phase 2.5 by moving ABI
contract inventory, layout golden, backend matrix, diagnostic contract,
release evidence, final discipline, docs, governance, and negative fixture
validation into tools/abi-contract-hardening-check.0x0 while preserving
make abi-contract-hardening-check.
17. Migrate tools/api-contract-hardening-check.py as Phase 2.6 by moving API
contract inventory, validator matrix, round-trip matrix, runtime boundary
matrix, diagnostic contract, release evidence, final discipline, docs,
governance, and negative fixture validation into
tools/api-contract-hardening-check.0x0 while preserving
make api-contract-hardening-check.
18. Migrate tools/package-contract-hardening-check.py as Phase 2.7 by moving
package contract inventory, resolver matrix, registry integrity matrix,
publish workflow matrix, diagnostic contract, release evidence, final
discipline, docs, governance, and negative fixture validation into
tools/package-contract-hardening-check.0x0 while preserving
make package-contract-hardening-check.
19. Migrate tools/runtime-contract-hardening-check.py as Phase 2.8 by moving
runtime contract inventory, security negative matrix, failure semantics,
observability matrix, fixture scope, diagnostic contract, release evidence,
final discipline, docs, governance, and negative fixture validation into
tools/runtime-contract-hardening-check.0x0 while preserving
make runtime-contract-hardening-check.
20. Migrate tools/source-tooling-contract-hardening-check.py as Phase 2.9 by
moving source contract inventory, parser/checker/lowering matrix, invalid
diagnostic contract, edition stability, tooling contract inventory,
source-owned tooling drift, host ABI ops, budget, release evidence, final
discipline, docs, governance, and negative fixture validation into
tools/source-tooling-contract-hardening-check.0x0 while preserving
make source-tooling-contract-hardening-check.
21. Migrate tools/object-source-check.py as Phase 5.2 by moving object backend
source, zero-object-info diagnostic, object-format documentation, object
test, negative object smoke, and linker multi-object evidence scans into
tools/object-source-check.0x0 while preserving
make object-source-check.
22. Migrate tools/linker-source-check.py as Phase 5.3 by moving zero-link
source, zero-elf-info executable diagnostic, linker documentation, linker
test, archive fixture, and ABI mismatch evidence scans into
tools/linker-source-check.0x0 while preserving
make linker-source-check.
23. Migrate tools/fast-linker-dev-loop-check.py as Phase 5.4 by moving fast
linker TSV schemas, release reports, performance budgets, compatibility
rows, JSON verification fixtures, docs, and Makefile validation into
tools/fast-linker-dev-loop-check.0x0 while preserving
make fast-linker-dev-loop-check.
24. Migrate tools/zero-object-info.py as Phase 5.5 by moving ELF64
relocatable object metadata parsing, ABI/source note extraction, symbol and
relocation rows, malformed-object diagnostics, and downstream object/linker
consumers into tools/zero-object-info.0x0 plus a non-Python byte parser.
25. Migrate tools/zero-elf-info.py as Phase 5.6 by moving ELF64 executable
metadata parsing, ABI marker extraction, PT_LOAD segment rows,
malformed-executable diagnostics, and downstream linker/independent
consumers into tools/zero-elf-info.0x0 plus a non-Python byte parser.
26. Migrate tools/zero-ar.py as Phase 5.7 by moving deterministic archive
command policy, GNU-style symbol index generation and validation, object
validation delegation, duplicate symbol/member rejection, malformed archive
diagnostics, and downstream archive/linker/lib0x0 consumers into
tools/zero-ar.0x0 plus a non-Python binary archive adapter.
27. Migrate tools/zero-link.py as Phase 5.8 by moving ELF64 executable link
policy, relocatable input validation, archive-member extraction, symbol
resolution, relocation application, ABI marker emission, and stable
diagnostics into tools/zero-link.0x0 plus a non-Python native linker
adapter.
28. Migrate tools/zero-lsp.py as Phase 5.9 by moving LSP command policy,
source diagnostics, compiler diagnostic bridging, symbol listing, source
indexing, formatting, semantic tokens, JSON-RPC transport, editor gate
wiring, release package wiring, and feature smoke coverage into
tools/zero-lsp.0x0 plus a non-Python native LSP adapter.
29. Migrate tools/runtime-boundary-check.py as Phase 6.1 by moving runtime
capability inventory validation, capability documentation coverage, runtime
ABI schema checks, production host capability mapping, fixture parity,
deterministic fixture value checks, and host-test-runtime boundary coverage
into tools/runtime-boundary-check.0x0 plus a non-Python shell adapter.
30. Migrate tools/runtime-depth-closure-check.py as Phase 6.2 by moving
streaming direct ELF runtime closure, large-payload fixture generation,
runtime memory evidence, support matrix coverage, documentation/ADR/RFC
evidence, release helper wiring, JSON reports, and stable diagnostics into
tools/runtime-depth-closure-check.0x0 plus a non-Python shell adapter.
31. Migrate tools/runtime-memory-dynamic-check.py as Phase 6.3 by moving
runtime memory runner wiring, runtime RSS budgets, RSS fixture coverage,
public documentation, release notes, support matrix evidence, release helper
packaging, and stable stdout into tools/runtime-memory-dynamic-check.0x0
plus a non-Python shell adapter.
32. Migrate tools/runtime-production-check.py as Phase 6.4 by moving runtime
production checker routing, local production probes, network/browser probes,
server/live probes, service probes, host security probes, release helper
wiring, runtime contract evidence, and observability evidence into
tools/runtime-production-check.0x0 plus a non-Python shell adapter.
33. Migrate tools/runtime-cli.py as Phase 6.5 by moving runtime CLI command
policy, report shaping, typed/effect preflights, capability checks,
backend conformance host-boundary fixtures, type-production closure,
unified lowering, actor runtime, stdlib coverage, and release helper
wiring into tools/runtime-cli.0x0 plus a non-Python shell adapter.
34. Migrate tools/native-runtime-memory-check.py as Phase 6.6 by moving
native runtime profile TSV validation, no-GC default policy, dependency
manifests, allocation modes, memory operations, section layout checks,
fixture diagnostics, docs coverage, and release helper wiring into
tools/native-runtime-memory-check.0x0 plus a non-Python shell adapter.
35. Migrate tools/local-effects-check.py as Phase 6.7 by moving local effects
manifest coverage, production and fixture function coverage, filesystem
checks, CLI/environment/stdout/stderr policy, structured process capture,
shell-injection safety, timeout behavior, docs coverage, and release helper
wiring into tools/local-effects-check.0x0 plus a non-Python shell adapter.
36. Migrate tools/fetch-browser-check.py as Phase 6.8 by moving fetch/browser
manifest coverage, production and fixture function coverage, local HTTP
client smoke behavior, cache, redirect, TLS failure, retry, browser text
artifacts, capture redaction, docs coverage, and release helper wiring into
tools/fetch-browser-check.0x0 plus a non-Python shell adapter.
37. Migrate tools/service-boundary-check.py as Phase 6.9 by moving service
boundary manifest coverage, production and fixture function coverage,
SQLite transaction behavior, PKCE and JWT boundary checks, service adapter
fixtures, operations adapter fixtures, docs coverage, and release helper
wiring into tools/service-boundary-check.0x0 plus a non-Python shell
adapter.
38. Migrate tools/web-runtime-check.py as Phase 6.10 by moving web runtime
manifest coverage, production and fixture function coverage, loopback HTTP
server smoke behavior, router/body decoding checks, WebSocket accept-key and
frame checks, Live state transitions, docs coverage, and release helper
wiring into tools/web-runtime-check.0x0 plus a non-Python shell adapter.
39. Migrate tools/framework-runtime-check.py as Phase 6.11 by moving framework
adapter source wiring, package and lockfile checks, documentation coverage,
process probes, loopback HTTP probes, closure smoke routing, and release
helper wiring into tools/framework-runtime-check.0x0 plus a non-Python
shell adapter.
40. Migrate tools/framework-runtime-closure-check.py as Phase 6.12 by moving
framework closure source/docs checks, framework runtime smoke routing,
process and sandbox probes, loopback HTTP redirect/server/WebSocket probes,
raw socket evidence, generic Live bridge reports, JSON reporting, and
release helper wiring into tools/framework-runtime-closure-check.0x0 plus
a non-Python shell adapter.
41. Migrate tools/actor-runtime.py as Phase 6.13 by moving actor runtime
local supervision reports, replay validation, distributed simulation,
unauthorized diagnostics, model-check reports, VM actor capability checks,
JSON stdout/stderr shaping, report artifacts, and release helper wiring into
tools/actor-runtime.0x0 plus a non-Python shell adapter.
42. Migrate tools/distributed-cluster.py as Phase 6.14 by moving distributed
cluster policy, loopback TCP status probes, delivery/security report
evidence, replay mismatch diagnostics, credential redaction, JSON
stdout/stderr shaping, report artifacts, and release helper wiring into
tools/distributed-cluster.0x0 plus a non-Python shell adapter.
43. Migrate tools/production-host-runtime.py as Phase 6.15 by moving host
runtime request policy, capability allowlist validation, filesystem,
process, socket, HTTP, browser, service, crypto, hardware, runtime-root
containment, JSON result shaping, script-mode host ABI routing, and release
helper wiring into tools/production-host-runtime.0x0 plus a non-Python
shell adapter.
44. Migrate tools/host-effects-closure-check.py as Phase 6.16 by moving host
effects closure policy, static source/docs checks, loopback socket and HTTP
probes, process spawn and timeout probes, sandbox denial, scoped path
rejection, time, random, secret, JSON report shaping, and observability
evidence wiring into tools/host-effects-closure-check.0x0 plus a
non-Python shell adapter.
45. Migrate tools/embedded-hardware.py as Phase 7.1 by moving embedded
artifact and evidence command policy into tools/embedded-hardware.0x0,
preserving target catalog, build, emulate, HAL, RTOS/BSP, secure boot,
verify, flash, hardware-probe, safety-check, stable JSON diagnostics, and
downstream evidence packaging through a non-Python shell adapter.
46. Migrate tools/embedded-distributed-check.py as Phase 7.2 by moving
embedded/distributed support validation into
tools/embedded-distributed-check.0x0, preserving runtime capability, ABI,
source, manifest, public docs, feature matrix, site, and text diagnostic
validation through a non-Python shell adapter.
47. Migrate tools/native-hardware-check.py as Phase 7.3 by moving native
hardware evidence validation into tools/native-hardware-check.0x0,
preserving bare-metal, MMIO, firmware image, TSV schema, fixture, release
report, benchmark, contract, documentation, and text diagnostic validation
through a non-Python shell adapter.
48. Migrate tools/physical-hardware-evidence.py as Phase 7.4 by moving
physical evidence intake validation into
tools/physical-hardware-evidence.0x0, preserving inventory/root-key
validation, physical-ready evidence checks, report writes, negative
diagnostics, downstream space physical BSP routing, and release helper
packaging through a non-Python shell adapter.
49. Migrate tools/flight-core-profile-check.py as Phase 7.5 by moving Flight
Core profile validation into tools/flight-core-profile-check.0x0,
preserving source-form, memory-budget, unsafe-op, traceability,
requirements, positive compile, negative fixture, report, and JSON
diagnostic behavior through a non-Python shell adapter.
50. Migrate tools/space-assurance-profile-check.py as Phase 7.6 by moving S0
space assurance overlay validation into
tools/space-assurance-profile-check.0x0, preserving profile docs, S0
requirements, profile rows, hazards, standards, Flight Core policy, optional
bundle manifest, report, and JSON diagnostic behavior through a non-Python
shell adapter.
51. Migrate tools/space-certification-kit-check.py as Phase 7.7 by moving S5
certification support kit policy into
tools/space-certification-kit-check.0x0, preserving plan templates,
coding standards, tool operational requirements, trace exports, coverage,
target reports, sample project and bundle validation, report, and JSON
diagnostics through a non-Python shell adapter.
52. Migrate tools/space-physical-bsp-check.py as Phase 7.8 by moving S2
physical target and BSP claim policy into
tools/space-physical-bsp-check.0x0, preserving physical report, target
claim, debug/flash workflow, BSP hook, emulator evidence, requirement,
deterministic report hash, fail-closed negative fixture, report, and JSON
diagnostics through a non-Python shell adapter.
53. Migrate tools/space-digital-twin-check.py as Phase 7.9 by moving S4
digital twin policy into tools/space-digital-twin-check.0x0, preserving
modes, snapshots, replay, simulation-time enforcement, source hashes, XTCE
bridges, trace links, requirements, reports, negative fixtures, and JSON
diagnostics through a non-Python shell adapter.
54. Migrate tools/space-mission-validation-check.py as Phase 7.10 by moving
S6 mission validation policy into
tools/space-mission-validation-check.0x0, preserving campaigns,
deterministic fault injection, soak and HIL evidence, negative tests,
interop, requirements, reports, and JSON diagnostics through a non-Python
shell adapter.
55. Migrate tools/space-mission-ops-check.py as Phase 7.11 by moving S7
operations policy into tools/space-mission-ops-check.0x0, preserving
policies, offline bundles, dependencies, compatibility, advisory, training,
requirements, reports, negative fixtures, and JSON diagnostics.
56. Migrate tools/space-protocol-conformance-check.py as Phase 7.12 by moving
S3 protocol policy into tools/space-protocol-conformance-check.0x0,
preserving protocol, TM/TC, FDIR, time, fuzz, XTCE, crypto, requirements,
reports, negative fixtures, and JSON diagnostics.
57. Migrate tools/backend-coverage-check.py as Phase 8.1 by moving backend
coverage policy into tools/backend-coverage-check.0x0, preserving matrix
schema, required features and statuses, Make-target evidence, documentation
anchors, release-helper coverage, and exact stdout.
58. Migrate tools/backend-conformance.py as Phase 8.2 by moving backend
conformance policy into tools/backend-conformance.0x0, preserving static
matrices, native, VM, unified IR, native-artifact and WASM corpus execution,
release reports, artifact hashes, and stable negative diagnostics.
59. Migrate tools/compiler2-independence-check.py as Phase 8.3 by moving
compiler2 independence policy into tools/compiler2-independence-check.0x0,
preserving import isolation, public APIs, independent implementation size,
backend contracts, documentation, test evidence, and release packaging.
60. Migrate tools/compiler-query-engine-check.py as Phase 8.4 by moving query
engine policy into tools/compiler-query-engine-check.0x0, preserving
registries, diagnostics, dependency graphs, cache misses, scenarios,
fixtures, documentation, and Make-target validation.
61. Migrate tools/compiler-memory-optimization-baseline-check.py as Phase 8.5
by moving baseline policy into its .0x0 owner, preserving research,
compiler surface, runtime-memory surface, metric, path, target, ownership,
budget, and documentation checks.
62. Migrate tools/compiler-memory-release-check.py as Phase 8.6 by moving
release integration policy into its .0x0 owner, preserving schemas, gates,
support, artifacts, heavy operations, limitations, workflows, diagnostics,
fixtures, budgets, contracts, reports, paths, targets, and docs.
63. Migrate tools/compiler_memory_benchmark_check.py as Phase 8.7 by moving
benchmark policy into its .0x0 owner, preserving suites, profiles,
metrics, thresholds, dashboards, diagnostics, reports, budgets, contracts,
fixtures, paths, bounded targets, and docs.
64. Migrate tools/compiler_memory_validation_check.py as Phase 8.8 by moving
validation policy into its .0x0 owner, preserving rewrite proofs,
sanitizers, differential cases, remarks, rollback controls, diagnostics,
reports, budgets, contracts, fixtures, paths, targets, and docs.
65. Migrate tools/memory-architecture-check.py as Phase 8.9 by moving memory
architecture policy into its .0x0 owner and direct shell gate, preserving
loading, compact spans, chunked outputs, allocation guards, summaries,
lazy archives, streaming, RSS process groups, reports, and hashes.
66. Migrate tools/memory-semantics-check.py as Phase 8.10 by moving memory
semantics policy into its .0x0 owner, preserving profiles, retention,
regions, optional GC, boundaries, diagnostics, reports, budgets, contracts,
fixtures, targets, and docs.
67. Migrate tools/allocation-promotion-check.py as Phase 8.11 by moving
promotion policy into its .0x0 owner, preserving categories, domains,
decisions, heapification, diagnostics, reports, budgets, contracts,
fixtures, targets, and docs.
68. Migrate tools/allocator-fast-path-check.py as Phase 8.12 by moving policy
into its .0x0 owner while preserving profiles, size classes, fast paths,
page backends, stress, diagnostics, reports, budgets, contracts, and docs.
69. Migrate tools/copy_patch_jit_check.py as Phase 8.13 by moving policy into
its .0x0 owner while preserving targets, stencils, patches, W^X caches,
diagnostics, reports, budgets, fixtures, contracts, and docs.
70. Migrate tools/native-ir-check.py as Phase 8.14 by moving policy into its
.0x0 owner while preserving schemas, opcodes, machine types, targets,
memory rules, invariants, contracts, fixtures, and docs.
71. Migrate tools/native-analysis-check.py as Phase 8.15 by moving policy into
its .0x0 owner while preserving strictness, escape, alias, guard,
decisions, budgets, fixtures, modes, contracts, and docs.
72. Migrate tools/native-codegen-check.py as Phase 8.16 by moving policy into
its .0x0 owner while preserving selection, registers, frames, artifacts,
reports, conformance, benchmarks, contracts, fixtures, and docs.
73. Migrate tools/native-control-check.py as Phase 8.17 by moving policy into
its .0x0 owner while preserving inlining, unroll, tail calls, budgets,
guards, decisions, benchmarks, contracts, fixtures, modes, and docs.
74. Migrate tools/native-compile-time-check.py as Phase 8.18 by moving policy
into its .0x0 owner while preserving stages, caches, tiers, jobs, budgets,
reports, contracts, fixtures, modes, and docs.
75. Migrate tools/native-toolchain-check.py as Phase 8.19 by moving policy into
its .0x0 owner while preserving sections, linker/post-link policy, size,
symbols, profiles, relocations, summaries, benchmarks, fixtures, and docs.
76. Migrate tools/native-verification-security-check.py as Phase 8.20 by
moving policy into its .0x0 owner while preserving verifiers,
differential, fuzzing, proofs, threats, triage, benchmarks, fixtures,
contracts, modes, and docs.
77. Migrate tools/native-performance-baseline-check.py as Phase 8.21 by moving
policy into its .0x0 owner while preserving evidence schemas, ledger
features, governance, benchmarks, ABI, hardware, artifacts, and docs.
78. Migrate tools/native-performance-release-check.py as Phase 8.22 by moving
policy into its .0x0 owner while preserving suites, budgets, manifests,
resource-safe lanes, support, benchmarks, contracts, targets, and docs.
79. Migrate tools/monomorphization-check.py as Phase 8.23 by moving policy
into its .0x0 owner while preserving schema, policy, fixture, release-map,
benchmark, contract, target, diagnostic, and documentation evidence.
80. Migrate tools/typed-ssa-pipeline-check.py as Phase 8.24 by moving policy
into its .0x0 owner while preserving multi-level IR, dump, diagnostic,
fixture, backend-transition, target, and documentation evidence.
81. Migrate tools/unified-lowering.py as Phase 8.25 by moving policy and all
six CLI commands into its .0x0 owner and shell implementation, preserving
typed IR, VM/native/WASM lowering, parity, diagnostics, and closure audits.
82. Migrate tools/optimizer-registry-check.py as Phase 8.26 by moving policy
into its .0x0 owner while preserving pass order, verifier chains,
implementation, diagnostics, docs, packaging, and fixtures.
83. Migrate tools/eqsat_candidate_eval.py as Phase 8.27 by moving bounded
candidate evaluation into its .0x0 owner and shell CLI while preserving
schema, domains, budgets, equivalence, cost, diagnostics, and integration.
84. Migrate tools/eqsat_superoptimization_check.py as Phase 8.28 by moving
policy into its .0x0 owner while preserving domains, rewrites, costs,
candidates, promotions, diagnostics, reports, contracts, and docs.
85. Migrate tools/ml_heuristics_advisor.py as Phase 8.29 by moving its CLI
into a .0x0 policy owner and shell implementation while preserving
features, fallback, signed offline models, scoring, cost, and safety.
86. Migrate tools/ml_heuristics_research_check.py as Phase 8.30 by moving
policy into its .0x0 owner while preserving pilots, schemas, signed
models, training, diagnostics, reports, contracts, advisor behavior, and docs.
87. Migrate tools/pgo-thin-summary-check.py as Phase 8.31 by moving policy
into its .0x0 owner while preserving profile schemas and stages,
summaries, optimization budgets, diagnostics, reports, contracts, and docs.
88. Migrate tools/post-link-layout-check.py as Phase 8.32 by moving policy
into its .0x0 owner while preserving strategies, block metadata, order
files, counters, fallback, diagnostics, metrics, contracts, and docs.
89. Migrate tools/independent-cross-matrix-source-check.py as Phase 8.33 by
moving policy into its .0x0 owner while preserving prerequisites, build
edges, artifact kind, ABI evidence, documentation, fixtures, and output.
90. Migrate tools/html-template-source.py as Phase 9.1 by moving all four CLI
modes into its .0x0 owner and shell implementation while preserving AST
metadata, formatting, lowering, diagnostics, runtime integration, and docs.
91. Migrate tools/live-framework-surface-check.py as Phase 9.2 by moving
policy into its .0x0 owner while preserving ledgers, paths, evidence,
wiring, JSON reports, negative fixtures, release helpers, and docs.
92. Migrate tools/live-framework-app-discovery.py as Phase 9.3 by moving the
CLI into its .0x0 owner and shell implementation while preserving app
shape, metadata, fixture scope, discovery, manifests, diagnostics, and docs.
93. Migrate tools/live-framework-release-check.py as Phase 9.4 by moving
policy into its .0x0 owner while preserving manifest classes, paths,
gates, compatibility, final discipline, reports, docs, and fixtures.
94. Migrate tools/live-generator.py as Phase 9.5 by moving the CLI into its
.0x0 owner and shell implementation while preserving catalogs, full app
output, resources, components, diagnostics, discovery, docs, and fixtures.
95. Migrate tools/live-learning-check.py as Phase 9.6 by moving policy into
its .0x0 owner while preserving the ledger, public routes, lesson map,
navigation, content requirements, reports, negative fixtures, and docs.
96. Migrate tools/live-navigation-check.py as Phase 9.7 by moving policy
into its .0x0 owner while preserving route/layout validation, navigation
states, reports, negative fixtures, release evidence, and documentation.
97. Migrate tools/live-accessibility-check.py as Phase 9.8 by moving policy
into its .0x0 owner while preserving components, themes, WCAG surfaces,
focus, keyboard metadata, reports, negative fixtures, and docs.
98. Migrate tools/live-security-check.py as Phase 9.9 by moving policy into
its .0x0 owner while preserving CSP, asset integrity, XSS denial, origin
and host policy, body limits, upload scanning, rate limits, capability
denial, session secret rotation, key management, reports, negative
fixtures, release evidence, and documentation.
99. Migrate tools/live-auth-check.py as Phase 9.10 by moving policy into its
.0x0 owner while preserving magic-link login, registration, optional
password auth, recent-auth, CSRF, origin, session renewal, logout-all,
token rotation, remember-me, local-only dev mailbox, reports, negative
fixtures, release evidence, and documentation.
100. Migrate tools/live-session-check.py as Phase 9.11 by moving policy into
its .0x0 owner while preserving session fields, lifecycle callbacks, TTL,
capabilities, cleanup reasons, deterministic lifecycle cases, reports,
negative fixtures, release evidence, and documentation.
101. Migrate tools/live-endpoint-check.py as Phase 9.12 by moving policy
into its .0x0 owner while preserving endpoint policy, routes, dispatch,
introspection, middleware order, HTTP/Live/static/health routes, 404/405
evidence, reports, negative fixtures, release evidence, and documentation.
102. Migrate tools/live-dev-server-check.py as Phase 9.13 by moving policy
into its .0x0 owner while preserving serve command, reload policy,
template/component/CSS/JS/route events, browser reload messages, error
overlay, resource caps, reports, negative fixtures, release evidence, and
documentation.
103. Migrate tools/live-runtime.py as Phase 9.14 by moving policy into its
.0x0 owner while preserving template check/lowering, package scan,
loopback Live probes, bridge evidence, app hooks, reports, negative
fixtures, release evidence, and documentation.
104. Migrate tools/live-async-check.py as Phase 9.15 by moving policy into
its .0x0 owner while preserving async task success, failure,
cancellation, timeout, progress, supervision, backpressure, disconnect,
reconnect, cleanup, reports, negative fixtures, release evidence, and
documentation.
105. Migrate tools/live-diff-engine-check.py as Phase 9.16 by moving policy
into its .0x0 owner while preserving the diff operation table, append,
prepend, replace, remove, attribute, text, noop, deterministic
serialization, stale revision rejection, recovery patch, reports, negative
fixtures, release evidence, and documentation.
106. Migrate tools/live-component-boundary-check.py as Phase 9.17 by moving
policy into its .0x0 owner while preserving the component declaration
table, template validation, required/default/global attrs,
required/optional slots, payload diagnostics, reports, negative fixtures,
release evidence, and documentation.
107. Migrate tools/live-form-check.py as Phase 9.18 by moving policy into its
.0x0 owner while preserving the form fields table, component subcommand,
touched/dirty state transitions, live/server validation, submit evidence,
accessibility diagnostics, reports, negative fixtures, release evidence,
and documentation.
108. Migrate tools/live-pubsub-check.py as Phase 9.19 by moving policy into
its .0x0 owner while preserving the PubSub policy table, subscribe
subcommand, scoped topic validation, broadcast delivery, presence, leave
cleanup, reconnect replay, cross-scope denial, reports, negative fixtures,
release evidence, and documentation.
109. Migrate tools/live-streams-check.py as Phase 9.20 by moving policy into
its .0x0 owner while preserving the stream operation table, apply
subcommand, large-list patch evidence,
append/prepend/insert/update/delete/reset/limit coverage, budget
diagnostics, reports, negative fixtures, release evidence, and
documentation.
110. Migrate tools/live-uploads-check.py as Phase 9.21 by moving policy into
its .0x0 owner while preserving the upload policy table, entry
subcommand, chunk/progress evidence, consume/cancel cleanup,
MIME/extension/size/path diagnostics, object-store handoff, reports,
negative fixtures, release evidence, and documentation.
111. Migrate tools/live-websocket-transport-check.py as Phase 9.22 by moving
policy into its .0x0 owner while preserving the transport policy table,
upgrade and frame subcommands, accept-key/origin/subprotocol checks,
text/binary/control frame evidence, fragmentation, size diagnostics,
timeout/rate/concurrency evidence, reports, negative fixtures, release
evidence, and documentation.
112. Migrate tools/live-wire-protocol-check.py as Phase 9.23 by moving
policy into its .0x0 owner while preserving the wire protocol table,
validate subcommand, version/kind/field/revision/size diagnostics,
deterministic message fixtures, reports, negative fixtures, release
evidence, and documentation.
113. Migrate tools/live-browser-client-check.py as Phase 9.24 by moving
policy into its .0x0 owner while preserving the browser capability table,
hashed asset bundling, CSP-safe external script manifest, source safety
diagnostics, Node-backed browser model evidence, reports, negative
fixtures, release evidence, and documentation.
114. Migrate tools/live-scope-check.py as Phase 9.25 by moving policy into
its .0x0 owner while preserving the scope policy table, context-call
subcommand, route and session assignment evidence, system scope evidence,
missing-scope/tenant/capability diagnostics, reports, negative fixtures,
release evidence, and documentation.
115. Migrate tools/live-test-framework-check.py as Phase 9.26 by moving
policy into its .0x0 owner while preserving the test helper catalog,
event subcommand, generated CRUD/auth flow evidence,
assertion/reconnect/auth-scope evidence, Node browser client evidence,
reports, negative fixtures, release evidence, and documentation.
116. Migrate tools/live-performance-check.py as Phase 9.27 by moving policy
into its .0x0 owner while preserving the performance budget table,
load/latency/payload/compression/regression report, over-budget
diagnostics, missing-workload diagnostics, regression-failure diagnostics,
release evidence, and documentation.
117. Migrate tools/live-persistence-check.py as Phase 9.28 by moving policy
into its .0x0 owner while preserving the persistence adapter table,
generated-resource service integration evidence,
scope/idempotency/rollback/error mapping diagnostics, reports, negative
fixtures, release evidence, and documentation.
118. Migrate tools/live-css-extract.py as Phase 9.29 by moving policy into
its .0x0 owner while preserving template validation, inline-style
rejection, colocated style extraction, hashed asset output, transformed
templates, manifest/report output, none/attribute/future-scope behavior,
release evidence, and documentation.
119. Migrate tools/live-js-extract.py as Phase 9.30 by moving policy into
its .0x0 owner while preserving command table validation, inline-handler
rejection, hook metadata validation, mounted/updated/destroyed callback
checks, event-push checks, hashed JavaScript assets, transformed templates,
hook registries, reports, release evidence, and documentation.
120. Migrate tools/apps-workspace.py as Phase 10.1 by moving policy into its
.0x0 owner while preserving app workspace/package manifests, lock hashes,
layout/test manifest checks, write/check modes, generated artifact headers,
dependent Kukulkan integration invocation, release evidence, and
documentation.
121. Migrate tools/apps-compile-check.py as Phase 10.2 by moving policy into
its .0x0 owner while preserving app package discovery, source/test root
validation, single-job-by-default enforcement, opt-in parallel mode,
resume-from-package behavior, status TSV output, release evidence, and
documentation.
122. Migrate tools/apps-lint.py as Phase 10.3 by moving policy into its
.0x0 owner while preserving app/library source discovery, text suffix
filtering, snake-case function diagnostics, production app legacy-comment
detection, runner-reference detection, stable finding format, release
evidence, and documentation.
123. Migrate tools/app-style-check.py as Phase 10.4 by moving policy into its
.0x0 owner while preserving app source style guide existence checks,
required snippet coverage, stable missing-content diagnostics, release
evidence, and documentation.
124. Migrate tools/apps-accepted-corpus-check.py as Phase 10.5 by moving
policy into its .0x0 owner while preserving accepted corpus table
validation, required evidence file checks, production manifest source
checks, bin/zero run execution, stdout comparison, timeout handling,
release evidence, and documentation.
125. Migrate tools/apps-runtime-hygiene.py as Phase 10.6 by moving policy
into its .0x0 owner while preserving runtime port table parsing, /proc
listener detection, PID-file validation, managed-marker checks,
start/stop/stop-force helpers, unmanaged PID refusal, release evidence, and
documentation.
126. Migrate tools/app-runtime-revalidation-check.py as Phase 10.7 by moving
policy into its .0x0 owner while preserving runtime revalidation TSV
header/required-row checks, Make target validation, production artifact
existence checks, fixture-denial policy, evidence-mode validation,
documentation wiring, status-text shortcut guards, release evidence, and
documentation.
127. Migrate tools/apps-production-gap-check.py as Phase 10.8 by moving
policy into its .0x0 owner while preserving production gap artifact
existence checks, required artifact-kind coverage, Index/Kukulkan row
coverage, unsafe-ready rejection, target map validation, acceptance
readiness validation, docs completion-rule validation, release evidence,
and documentation.
128. Migrate tools/apps-production-build.py as Phase 10.9 by moving policy
into its .0x0 owner while preserving production source-package manifests,
hash files, build manifest validation, smoke metadata,
Python/release-shim exclusion, entry-source/lockfile checks, status-text
shortcut guards, revalidation gate integration, release evidence, and
documentation.
129. Migrate tools/apps-production-runtime-check.py as Phase 10.10 by moving
policy into its .0x0 owner while preserving runtime matrix checks,
normal-path checks, release-candidate hash/resource/smoke checks,
production acceptance gate orchestration, metadata hash refresh, Make
target integration, release evidence, and documentation.
130. Migrate tools/apps-production-release-check.py as Phase 10.11 by moving
policy into its .0x0 owner while preserving final production gate
orchestration, release-candidate path/hash checks, production acceptance
report validation, operator runbook coverage, acceptance archive
validation, release evidence, and documentation.
131. Migrate tools/index-pure-check.py as Phase 10.12 by moving policy into
its .0x0 owner while preserving pure Index surface row validation,
required function checks, document-model, extraction, render, and policy
fixture assertions, release evidence, and documentation.
132. Migrate tools/index-core-production-check.py as Phase 10.13 by moving
policy into its .0x0 owner while preserving production core fixture
checks, bounded bin/zero execution of the production 0x0 test, stdout
validation, release evidence, and documentation.
133. Migrate tools/index-local-effects-production-check.py as Phase 10.14 by
moving policy into its .0x0 owner while preserving control-file setup,
bounded bin/zero execution of the app-owned local-effects production
test, stdout validation, generated artifact validation, cleanup checks,
release evidence, and documentation.
134. Migrate tools/index-network-production-check.py as Phase 10.15 by moving
policy into its .0x0 owner while preserving deterministic
network/browser fixture checks, bounded bin/zero execution of the
production 0x0 test, stdout validation, release evidence, and
documentation.
135. Migrate tools/index-runtime-check.py as Phase 10.16 by moving policy
into its .0x0 owner while preserving Index CLI, file runtime, network
runtime, release metadata writing, release hash validation, normal-path
checks, Make target integration, release evidence, and documentation.
136. Migrate tools/index-production-release-check.py as Phase 10.17 by
moving policy into its .0x0 owner while preserving release artifact
existence checks, release 0x0 test execution, manifest role validation,
hash validation, launcher CLI corpus validation, cleanup checks, release
evidence, and documentation.
137. Migrate tools/kukulkan-pure-check.py as Phase 10.18 by moving policy
into its .0x0 owner while preserving Kukulkan pure surface row
validation, required function checks, contracts, compliance, geospatial,
service-core fixture assertions, acceptance metadata, release evidence, and
documentation.
138. Migrate tools/kukulkan-api-production-check.py as Phase 10.19 by moving
policy into its .0x0 owner while preserving API production artifact
checks, source function checks, 0x0 source-test execution, config
validation, managed process readiness, stateful mutation/history/dashboard
probes, release evidence, and documentation.
139. Migrate tools/kukulkan-api-runtime-check.py as Phase 10.20 by moving
policy into its .0x0 owner while preserving API boot, route, auth, DB,
runtime, release, release metadata writing, negative-test wiring, Make
target integration, release evidence, and documentation.
140. Migrate tools/kukulkan-ui-production-check.py as Phase 10.21 by moving
policy into its .0x0 owner while preserving UI production artifact
checks, source function checks, 0x0 source-test execution, managed UI
readiness, shell rendering, security-header validation, release evidence,
and documentation.
141. Migrate tools/kukulkan-ui-runtime-check.py as Phase 10.22 by moving
policy into its .0x0 owner while preserving UI template, Live, browser
bridge, quality report, release, release metadata writing, negative-test
wiring, Make target integration, release evidence, and documentation.
142. Migrate tools/kukulkan-shared-packages-production-check.py as Phase
10.23 by moving policy into its .0x0 owner while preserving shared
package artifact checks, fixture checks, bounded bin/zero production test
execution, stdout validation, release evidence, and documentation.
143. Migrate tools/kukulkan-service-saas-production-check.py as Phase 10.24
by moving policy into its .0x0 owner while preserving service and SaaS
artifact checks, fixture checks, bounded bin/zero production test
execution, stdout validation, release evidence, and documentation.
144. Migrate tools/kukulkan-geospatial-production-check.py as Phase 10.25 by
moving policy into its .0x0 owner while preserving geospatial artifact
checks, fixture checks, bounded bin/zero production test execution,
stdout validation, release evidence, and documentation.
145. Migrate tools/kukulkan-compliance-production-check.py as Phase 10.26 by
moving policy into its .0x0 owner while preserving compliance artifact
checks, fixture checks, bounded bin/zero production test execution,
stdout validation, release evidence, and documentation.
146. Migrate tools/kukulkan-integrations-production-check.py as Phase 10.27
by moving policy into its .0x0 owner while preserving integration
artifact checks, 0x0 source test execution, workspace package validation,
SQL, TSV, and JSON matrix checks, resource budgets, dependency profile
checks, release evidence, and documentation.
147. Migrate tools/kukulkan-deployment-production-check.py as Phase 10.28 by
moving policy into its .0x0 owner while preserving deployment image,
Helm, remote deploy, systemd, hash, label, smoke, docs, runbook, and base
deploy checks.
148. Migrate tools/kukulkan-deploy-check.py as Phase 10.29 by moving policy
into its .0x0 owner while preserving dependency profile, image,
Kubernetes, remote deploy, and write-metadata sections.
149. Migrate tools/kukulkan-live-adoption-check.py as Phase 10.30 by moving
policy into its .0x0 owner while preserving the adoption ledger, source
descriptors, UI template and quality smoke evidence, deploy/domain checks,
JSON reporting, negative fixture, release evidence, and documentation.
150. Migrate tools/scripting-check.py as Phase 11.1 by moving policy into
its .0x0 owner while preserving scripting profile validation, Python
de-hosting progress checks, classification reports, docs, diagnostics,
contract, budget, release helper, final discipline, and negative fixture
checks.
45. Require prerequisite native runtime backend milestones whenever script mode
lacks a required host capability.
46. Add final closure milestones for a remaining-Python gate, replacement of the
three host-only Python adapters, a no-Python repository gate, and deletion of
final Python artifacts.
47. Replace the three production-critical host-only adapters with
tools/tooling-suite.0x0, tools/assurance-runtime.0x0,
tools/certification-evidence.0x0, and their non-Python shell adapters.
48. Add tools/no-python-repository-check.0x0 and
tools/no-python-repository-check.sh as the final no-Python repository
scanner, with fixture coverage before live repository enforcement.
49. Remove final tracked repository-owned .py sources and wire
make no-python-repository-check into final release discipline. Remaining
non-source interpreter-token findings must be explicit
Needs verification rows in tooling/no-python-exceptions.tsv until
native JSON, time, and rewrite helpers replace them.
50. Update release, maintainer, source-owned tooling, scripting,
feature-support, release-note, and public reference docs so the closed state
is visible from both repository and public documentation paths.
Rejected alternative: allow Python to remain as a temporary thin host adapter
where no native 0x0 runtime backend exists. That would preserve ambiguity at the
exact boundary this roadmap is meant to close.
Acceptance
python-dehosting-roadmap.htmllists the 172-row migration plan in milestones
small enough for one implementation run.
tooling/python-dehosting-migration-snapshot.tsvfreezes the initial 172
remaining-python rows and is checked by
make python-dehosting-progress-check.
tooling/python-dehosting-progress.tsvcarries replacement-owner, native
backend dependency, parity gate, and migration note fields.
tools/adr-rfc-check.pyis recorded as migrated to
tools/adr-rfc-check.0x0, and make adr-rfc-check runs the 0x0 script owner.
tools/docs-coverage-check.pyis recorded as migrated to
tools/docs-coverage-check.0x0, and make docs-coverage-check runs the 0x0
script owner through tools/docs-coverage-check.sh.
tools/docs-safe-check.pyis recorded as migrated to
tools/docs-safe-check.0x0, and make docs-safe-check runs the 0x0 script
owner through tools/docs-safe-check.sh.
tools/documentation-impact-check.pyis recorded as migrated to
tools/documentation-impact-check.0x0, and
make documentation-impact-check runs the 0x0 script owner through
tools/documentation-impact-check.sh.
tools/doccheck.pyis recorded as retired with replacement owner
tools/doccheck.0x0, and make docs-check remains routed through
tools/doccheck.sh.
tools/static-site-bundle.pyis recorded as migrated with replacement owner
tools/static-site-bundle.0x0, and make static-site-release-bundle-check
preserves byte-for-byte bundle output.
tools/public-ux-generate.pyis recorded as migrated with replacement owner
tools/public-ux-generate.0x0, and make public-ux-suite-check preserves
byte-for-byte metadata, sitemap, robots, and search-index output.
tools/host-abi-check.pyis recorded as migrated with replacement owner
tools/host-abi-check.0x0, and make runtime-host-abi-check validates
positive and negative host ABI fixtures through the 0x0 checker.
tools/abi-source-check.pyis recorded as migrated with replacement owner
tools/abi-source-check.0x0, and make abi-source-check validates ABI
version, docs, compiler source, linker/object helper, fixture, mismatch
diagnostic, and direct ELF metadata contracts through the 0x0 checker.
tools/abi-layout-check.pyis recorded as migrated with replacement owner
tools/abi-layout-check.0x0, and make abi-layout-check validates ABI v1
value-layout TSV schema, required rows, docs, ADR/RFC status, and release
helper contracts through the 0x0 checker.
tools/abi-v1-layout-check.pyis recorded as migrated with replacement
owner tools/abi-v1-layout-check.0x0, and make abi-v1-layout-check
validates promoted layout rows, core source constructors, compatibility
readers, stale-doc policy, compatibility matrix support, JSON reports, and
stable diagnostics through the 0x0 checker.
tools/abi-contract-hardening-check.pyis recorded as migrated with
replacement owner tools/abi-contract-hardening-check.0x0, and
make abi-contract-hardening-check validates ABI contract inventory, layout
goldens, backend matrix, diagnostic contracts, release evidence, final
discipline, docs, governance, and negative fixtures through the 0x0 checker.
tools/api-contract-hardening-check.pyis recorded as migrated with
replacement owner tools/api-contract-hardening-check.0x0, and
make api-contract-hardening-check validates API contract inventory,
validator matrix, round-trip matrix, runtime boundary matrix, diagnostic
contracts, release evidence, final discipline, docs, governance, and negative
fixtures through the 0x0 checker.
tools/package-contract-hardening-check.pyis recorded as migrated with
replacement owner tools/package-contract-hardening-check.0x0, and
make package-contract-hardening-check validates package contract inventory,
resolver matrix, registry integrity matrix, publish workflow matrix,
diagnostic contracts, release evidence, final discipline, docs, governance,
and negative fixtures through the 0x0 checker.
tools/runtime-contract-hardening-check.pyis recorded as migrated with
replacement owner tools/runtime-contract-hardening-check.0x0, and
make runtime-contract-hardening-check validates runtime contract inventory,
security negative matrix, failure semantics, observability matrix, fixture
scope, diagnostic contracts, release evidence, final discipline, docs,
governance, and negative fixtures through the 0x0 checker.
tools/object-source-check.pyis recorded as migrated with replacement owner
tools/object-source-check.0x0, and make object-source-check validates
compiler object backend tokens, zero-object-info diagnostics, object format
docs, object test coverage, negative object smoke evidence, and linker
multi-object evidence through the 0x0 checker.
tools/linker-source-check.pyis recorded as migrated with replacement owner
tools/linker-source-check.0x0, and make linker-source-check validates
zero-link source tokens, zero-elf-info diagnostics, linker docs, linker test
coverage, archive fixture evidence, and ABI mismatch evidence through the 0x0
checker.
tools/fast-linker-dev-loop-check.pyis recorded as migrated with
replacement owner tools/fast-linker-dev-loop-check.0x0, and
make fast-linker-dev-loop-check validates TSV schemas, release reports,
performance budgets, compatibility rows, JSON verification fixtures, docs,
and Makefile wiring through the 0x0 checker.
tools/zero-object-info.pyis recorded as migrated with replacement owner
tools/zero-object-info.0x0, and make object-info-check preserves ELF64
relocatable object metadata rows, section contract validation, ABI/source
notes, symbol rows, relocation rows, malformed-object diagnostics, and
downstream object/linker consumers without Python.
tools/zero-elf-info.pyis recorded as migrated with replacement owner
tools/zero-elf-info.0x0, and make linker-diagnostics-check preserves
ELF64 executable metadata rows, program header validation, ABI marker
extraction, segment rows, malformed-executable diagnostics, and downstream
linker/independent consumers without Python.
tools/zero-ar.pyis recorded as migrated with replacement owner
tools/zero-ar.0x0, and make archive-diagnostics-check preserves
deterministic archive writes, GNU-style symbol index generation and
validation, duplicate symbol/member diagnostics, malformed archive diagnostics,
and downstream archive/linker/lib0x0 consumers without Python.
tools/zero-link.pyis recorded as migrated with replacement owner
tools/zero-link.0x0, and make linker-check preserves ELF64 relocatable
input validation, archive-member extraction, symbol resolution, relocation
application, ABI marker emission, stable diagnostics, and downstream
archive/linker/lib0x0 consumers without Python.
tools/zero-lsp.pyis recorded as migrated with replacement owner
tools/zero-lsp.0x0, and make editor-check preserves source diagnostics,
compiler diagnostic bridging, symbol listing, source indexing, formatting,
semantic tokens, JSON-RPC transport, editor gate wiring, release package
wiring, and feature smoke coverage without Python.
tools/runtime-boundary-check.pyis recorded as migrated with replacement
owner tools/runtime-boundary-check.0x0, and
make host-runtime-boundary-check preserves runtime capability inventory,
capability docs coverage, runtime ABI schema checks, production host
capability mapping, fixture parity, deterministic fixture values, and
host-test-runtime boundary coverage without Python.
tools/runtime-depth-closure-check.pyis recorded as migrated with
replacement owner tools/runtime-depth-closure-check.0x0, and
make runtime-depth-closure-check preserves streaming direct ELF runtime
closure, large-payload fixture generation, runtime memory evidence, support
matrix coverage, documentation/ADR/RFC evidence, release helper wiring, JSON
reports, and stable diagnostics without Python.
tools/runtime-memory-dynamic-check.pyis recorded as migrated with
replacement owner tools/runtime-memory-dynamic-check.0x0, and
make runtime-memory-dynamic-check preserves runtime memory runner wiring,
runtime RSS budgets, RSS fixture coverage, public documentation, release
notes, support matrix evidence, release helper packaging, and stable stdout
without Python.
tools/runtime-production-check.pyis recorded as migrated with replacement
owner tools/runtime-production-check.0x0, and
make runtime-production-capabilities-check preserves local,
network/browser, server/live, service, and security runtime production
sections, release helper wiring, runtime contract evidence, observability
evidence, and stable section stdout without Python.
tools/runtime-cli.pyis recorded as migrated with replacement owner
tools/runtime-cli.0x0, and make core-runtime-cli-check preserves
run, run-vm, build, serve, and runtime-proof reports,
typed/effect preflights, capability checks, backend conformance host-boundary
fixtures, type-production closure, unified lowering, actor runtime, stdlib
coverage, and release helper wiring without Python.
tools/native-runtime-memory-check.pyis recorded as migrated with
replacement owner tools/native-runtime-memory-check.0x0, and
make minimal-runtime-check plus make native-memory-control-check preserve
native runtime profile TSV validation, no-GC default policy, dependency
manifests, allocation modes, memory operation checks, section layout checks,
fixture diagnostics, docs coverage, and release helper wiring without Python.
tools/local-effects-check.pyis recorded as migrated with replacement owner
tools/local-effects-check.0x0, and make runtime-local-effects-check
preserves filesystem, CLI/environment/stdout/stderr policy, structured
process capture, shell-injection safety, explicit shell execution, timeout
behavior, docs coverage, and release helper wiring without Python.
tools/fetch-browser-check.pyis recorded as migrated with replacement owner
tools/fetch-browser-check.0x0, and make runtime-fetch-browser-check
preserves HTTP client, cache, redirect, TLS-failure, retry, browser snapshot,
text extraction, capture redaction, docs coverage, and release helper wiring
without Python.
tools/service-boundary-check.pyis recorded as migrated with replacement
owner tools/service-boundary-check.0x0, and
make runtime-service-boundary-check preserves database, auth/OIDC, service
adapter, operations adapter, SQLite transaction, PKCE, JWT boundary, service
fixture, operations fixture, docs coverage, and release helper wiring without
Python.
tools/web-runtime-check.pyis recorded as migrated with replacement owner
tools/web-runtime-check.0x0, and make runtime-web-check preserves
loopback HTTP server, router/body decoding, WebSocket accept-key/frame, Live
state transitions, docs coverage, and release helper wiring without Python.
tools/framework-runtime-check.pyis recorded as migrated with replacement
owner tools/framework-runtime-check.0x0, and
make framework-runtime-check preserves adapter source wiring, package and
lockfile checks, process probes, loopback HTTP probes, docs coverage, closure
smoke routing, and release helper wiring without Python.
tools/framework-runtime-closure-check.pyis recorded as migrated with
replacement owner tools/framework-runtime-closure-check.0x0, and
make framework-runtime-closure-check preserves static source/docs checks,
framework runtime smoke routing, process and sandbox probes, loopback HTTP
redirect/server/WebSocket probes, raw socket evidence, generic Live bridge
reports, JSON report output, and release helper wiring without Python.
tools/actor-runtime.pyis recorded as migrated with replacement owner
tools/actor-runtime.0x0, and make actor-runtime-check preserves local
actor supervision reports, replay validation, distributed simulation,
unauthorized diagnostics, model-check reports, VM actor capability checks,
JSON stdout/stderr shaping, report artifacts, and release helper wiring
without Python.
tools/distributed-cluster.pyis recorded as migrated with replacement owner
tools/distributed-cluster.0x0, and make distributed-cluster-check
preserves loopback TCP status probes, distributed delivery/security report
evidence, replay mismatch diagnostics, credential redaction, JSON
stdout/stderr shaping, report artifacts, and release helper wiring without
Python.
tools/production-host-runtime.pyis recorded as migrated with replacement
owner tools/production-host-runtime.0x0, and
make runtime-production-capabilities-check preserves filesystem, process,
socket, HTTP, browser, service, crypto, hardware, capability-denial, runtime
root containment, JSON result shaping, script-mode host ABI routing, and
release helper wiring without Python.
tools/host-effects-closure-check.pyis recorded as migrated with
replacement owner tools/host-effects-closure-check.0x0, and
make host-effects-closure-check preserves static source/docs validation,
loopback socket and HTTP probes, process spawn and timeout probes, sandbox
denial, scoped path rejection, time, random, secret, JSON report shaping, and
observability evidence wiring without Python.
tools/embedded-hardware.pyis recorded as migrated with replacement owner
tools/embedded-hardware.0x0, and make embedded-hardware-check preserves
deterministic target catalog, MCU artifact generation, emulator trace,
HAL/RTOS/BSP reports, secure boot signing and verification, dry-run/emulator
flashing plans, virtual hardware probes, safety aggregation, stable JSON
diagnostics, and release helper wiring without Python.
tools/embedded-distributed-check.pyis recorded as migrated with
replacement owner tools/embedded-distributed-check.0x0, and
make embedded-distributed-support-check preserves runtime capability, ABI,
source, manifest, public docs, feature matrix, site, and stable text
diagnostic validation without Python.
tools/native-hardware-check.pyis recorded as migrated with replacement
owner tools/native-hardware-check.0x0, and make bare-metal-check,
make mmio-volatile-check, and make firmware-image-check preserve TSV
schemas, native hardware fixtures, release reports, benchmarks, contracts,
docs coverage, and stable text diagnostics without Python.
tools/physical-hardware-evidence.pyis recorded as migrated with
replacement owner tools/physical-hardware-evidence.0x0, and
make physical-hardware-evidence-check preserves inventory/root-key
validation, physical-ready evidence checks, report writes, negative JSON
diagnostics, and downstream space physical BSP routing without Python.
tools/flight-core-profile-check.pyis recorded as migrated with
replacement owner tools/flight-core-profile-check.0x0, and
make flight-core-profile-check preserves source-form, memory-budget,
unsafe-op, traceability, requirements, positive compile, negative fixture,
report, and JSON diagnostic behavior without Python.
tools/space-assurance-profile-check.pyis recorded as migrated with
replacement owner tools/space-assurance-profile-check.0x0, and
make space-assurance-profile-check preserves profile docs, S0 requirements,
profile rows, hazards, standards, Flight Core policy, optional bundle
manifest, report, and JSON diagnostic behavior without Python.
tools/space-certification-kit-check.pyis recorded as migrated with
replacement owner tools/space-certification-kit-check.0x0, and
make space-certification-kit-check preserves S5 plan templates, coding
standards, tool requirements, trace exports, coverage, target reports,
sample project and bundle validation, report, and JSON diagnostics without
Python.
tools/space-physical-bsp-check.pyis recorded as migrated with replacement
owner tools/space-physical-bsp-check.0x0, and
make space-physical-bsp-check preserves physical-report, target-claim,
debug/flash workflow, BSP hook, emulator evidence, S2 requirement,
deterministic report hash, fail-closed fixture, report, and JSON diagnostics
without Python.
tools/space-digital-twin-check.pyis recorded as migrated with replacement
owner tools/space-digital-twin-check.0x0, and
make space-digital-twin-check preserves S4 modes, snapshots, replay,
simulation-time enforcement, source hashes, XTCE bridge, trace links,
requirements, reports, negative fixtures, and JSON diagnostics without
Python.
tools/space-mission-validation-check.pyis recorded as migrated with
replacement owner tools/space-mission-validation-check.0x0, and
make space-mission-validation-check preserves S6 campaigns, faults, soak,
HIL, negative tests, interop, requirements, reports, and JSON diagnostics
without Python.
tools/space-mission-ops-check.pyis recorded as migrated with replacement
owner tools/space-mission-ops-check.0x0; its S7 gate preserves operations
policy, offline bundles, dependencies, compatibility, advisory, training,
requirements, reports, and JSON diagnostics without Python.
tools/space-protocol-conformance-check.pyis recorded as migrated with
replacement owner tools/space-protocol-conformance-check.0x0; its S3 gate
preserves protocol and assurance evidence validation without Python.
tools/backend-coverage-check.pyis recorded as migrated with replacement
owner tools/backend-coverage-check.0x0; its gate preserves backend matrix,
evidence-target, documentation, release-helper, and stdout validation without
Python.
tools/backend-conformance.pyis recorded as migrated with replacement owner
tools/backend-conformance.0x0; its gate preserves static backend validation,
cross-backend corpus execution, release reports, and stable diagnostics
without using the retired Python owner.
tools/compiler2-independence-check.pyis recorded as migrated with
replacement owner tools/compiler2-independence-check.0x0; its gate preserves
compiler2 isolation, API, implementation, backend, evidence, and packaging
checks without Python.
tools/compiler-query-engine-check.pyis recorded as migrated with
replacement owner tools/compiler-query-engine-check.0x0; its gate preserves
query registries, graphs, cache misses, scenarios, fixtures, and diagnostics
without Python.
tools/compiler-memory-optimization-baseline-check.pyis recorded as
migrated with its .0x0 replacement owner; its gate preserves baseline
research, surface, metric, path, target, ownership, budget, and docs checks
without Python.
tools/compiler-memory-release-check.pyis recorded as migrated with its
.0x0 replacement owner; its gate preserves compiler-memory release evidence,
fixture diagnostics, budgets, contracts, and docs without Python.
tools/compiler_memory_benchmark_check.pyis recorded as migrated with its
.0x0 replacement owner; its gate preserves benchmark and profile evidence,
release reports, budgets, contracts, fixture diagnostics, and docs without
Python.
tools/compiler_memory_validation_check.pyis recorded as migrated with its
.0x0 replacement owner; its gate preserves compiler-memory correctness,
sanitizer, differential, rollback, report, budget, fixture, and docs evidence
without Python.
tools/memory-architecture-check.pyis recorded as migrated with replacement
owner tools/memory-architecture-check.0x0; its gate preserves compiler and
released-tool RAM architecture checks, reports, and hashes without Python.
tools/memory-semantics-check.pyis recorded as migrated with its.0x0
replacement owner; its gate preserves RC, region, ownership, optional-GC,
stress, budget, contract, fixture, and docs evidence without Python.
tools/allocation-promotion-check.pyis recorded as migrated with its.0x0
replacement owner; its gate preserves promotion, heapification, report,
budget, contract, fixture, and docs evidence without Python.
tools/allocator-fast-path-check.pyis recorded as migrated with its.0x0
replacement owner and preserves allocator release evidence without Python.
tools/copy_patch_jit_check.pyis recorded as migrated with its.0x0
replacement owner and preserves JIT release evidence without Python.
tools/native-ir-check.pyis recorded as migrated with its.0x0
replacement owner and preserves native IR contract evidence without Python.
tools/native-analysis-check.pyis recorded as migrated with its.0x0
replacement owner and preserves native analysis evidence without Python.
tools/native-codegen-check.pyis recorded as migrated with its.0x0
replacement owner and preserves native codegen evidence without Python.
tools/native-control-check.pyis recorded as migrated with its.0x0
replacement owner and preserves native control evidence without Python.
tools/native-compile-time-check.pyis recorded as migrated with its.0x0
replacement owner and preserves compile-time evidence without Python.
tools/native-toolchain-check.pyis recorded as migrated with its.0x0
replacement owner and preserves native toolchain evidence without Python.
tools/native-verification-security-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves security evidence without Python.
tools/native-performance-baseline-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves baseline evidence without Python.
tools/native-performance-release-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves release evidence without Python.
tools/monomorphization-check.pyis recorded as migrated with its.0x0
replacement owner and preserves generic specialization evidence without Python.
tools/typed-ssa-pipeline-check.pyis recorded as migrated with its.0x0
replacement owner and preserves multi-level IR evidence without Python.
tools/unified-lowering.pyis recorded as migrated with its.0x0
replacement owner and preserves all lowering CLI behavior without Python.
tools/optimizer-registry-check.pyis recorded as migrated with its.0x0
replacement owner and preserves optimizer registry evidence without Python.
tools/eqsat_candidate_eval.pyis recorded as migrated with its.0x0
replacement owner and preserves bounded candidate evaluation without Python.
tools/eqsat_superoptimization_check.pyis recorded as migrated with its
.0x0 replacement owner and preserves EqSat evidence without Python.
tools/ml_heuristics_advisor.pyis recorded as migrated with its.0x0
replacement owner and preserves the optional advisor CLI without Python.
tools/ml_heuristics_research_check.pyis recorded as migrated with its
.0x0 replacement owner and preserves ML research evidence without Python.
tools/pgo-thin-summary-check.pyis recorded as migrated with its.0x0
replacement owner and preserves profile/Thin-summary evidence without Python.
tools/post-link-layout-check.pyis recorded as migrated with its.0x0
replacement owner and preserves layout evidence without Python.
tools/independent-cross-matrix-source-check.pyis recorded as migrated
with its .0x0 replacement owner and preserves matrix evidence without Python.
tools/html-template-source.pyis recorded as migrated with its.0x0
replacement owner and preserves checked template behavior without Python.
tools/live-framework-surface-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves framework ledgers without Python.
tools/live-framework-app-discovery.pyis recorded as migrated with its
.0x0 replacement owner and preserves app discovery without Python.
tools/live-framework-release-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves release evidence without Python.
tools/live-generator.pyis recorded as migrated with its.0x0
replacement owner and preserves generator behavior without Python.
tools/live-learning-check.pyis recorded as migrated with its.0x0
replacement owner and preserves learning evidence without Python.
tools/live-navigation-check.pyis recorded as migrated with its.0x0
replacement owner and preserves navigation evidence without Python.
tools/live-accessibility-check.pyis recorded as migrated with its.0x0
replacement owner and preserves accessibility evidence without Python.
tools/live-security-check.pyis recorded as migrated with its.0x0
replacement owner and preserves security evidence without Python.
tools/live-auth-check.pyis recorded as migrated with its.0x0
replacement owner and preserves auth evidence without Python.
tools/live-session-check.pyis recorded as migrated with its.0x0
replacement owner and preserves session-state evidence without Python.
tools/live-endpoint-check.pyis recorded as migrated with its.0x0
replacement owner and preserves endpoint evidence without Python.
tools/live-dev-server-check.pyis recorded as migrated with its.0x0
replacement owner and preserves developer-server evidence without Python.
tools/live-runtime.pyis recorded as migrated with its.0x0replacement
owner and preserves generic Live runtime evidence without Python.
tools/live-async-check.pyis recorded as migrated with its.0x0
replacement owner and preserves async evidence without Python.
tools/live-diff-engine-check.pyis recorded as migrated with its.0x0
replacement owner and preserves diff evidence without Python.
tools/live-component-boundary-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves component boundary evidence without
Python.
tools/live-form-check.pyis recorded as migrated with its.0x0
replacement owner and preserves form evidence without Python.
tools/live-pubsub-check.pyis recorded as migrated with its.0x0
replacement owner and preserves PubSub evidence without Python.
tools/live-streams-check.pyis recorded as migrated with its.0x0
replacement owner and preserves streams evidence without Python.
tools/live-uploads-check.pyis recorded as migrated with its.0x0
replacement owner and preserves upload evidence without Python.
tools/live-websocket-transport-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves WebSocket transport evidence without
Python.
tools/live-wire-protocol-check.pyis recorded as migrated with its.0x0
replacement owner and preserves wire protocol evidence without Python.
tools/live-browser-client-check.pyis recorded as migrated with its.0x0
replacement owner and preserves browser client evidence without Python.
tools/live-scope-check.pyis recorded as migrated with its.0x0
replacement owner and preserves scoped data evidence without Python.
tools/live-test-framework-check.pyis recorded as migrated with its.0x0
replacement owner and preserves Live test framework evidence without Python.
tools/live-performance-check.pyis recorded as migrated with its.0x0
replacement owner and preserves performance evidence without Python.
tools/live-persistence-check.pyis recorded as migrated with its.0x0
replacement owner and preserves persistence evidence without Python.
tools/live-css-extract.pyis recorded as migrated with its.0x0
replacement owner and preserves CSS extraction evidence without Python.
tools/live-js-extract.pyis recorded as migrated with its.0x0
replacement owner and preserves JavaScript hook extraction evidence without
Python.
tools/apps-workspace.pyis recorded as migrated with its.0x0
replacement owner and preserves app workspace generation evidence without
Python.
tools/apps-compile-check.pyis recorded as migrated with its.0x0
replacement owner and preserves app compile readiness evidence without
Python.
tools/apps-lint.pyis recorded as migrated with its.0x0replacement
owner and preserves app lint evidence without Python.
tools/app-style-check.pyis recorded as migrated with its.0x0
replacement owner and preserves app style guide evidence without Python.
tools/apps-accepted-corpus-check.pyis recorded as migrated with its.0x0
replacement owner and preserves accepted app corpus evidence without Python.
tools/apps-runtime-hygiene.pyis recorded as migrated with its.0x0
replacement owner and preserves app runtime hygiene evidence without Python.
tools/app-runtime-revalidation-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves app runtime revalidation evidence
without Python.
tools/apps-production-gap-check.pyis recorded as migrated with its.0x0
replacement owner and preserves app production gap evidence without Python.
tools/apps-production-build.pyis recorded as migrated with its.0x0
replacement owner and preserves app production build evidence without Python.
tools/apps-production-runtime-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves app production runtime evidence
without Python.
tools/apps-production-release-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves app production release evidence
without Python.
tools/index-pure-check.pyis recorded as migrated with its.0x0
replacement owner and preserves Index pure surface evidence without Python.
tools/index-core-production-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves Index core production evidence without
Python.
tools/index-local-effects-production-check.pyis recorded as migrated with
its .0x0 replacement owner and preserves Index local-effects production
evidence without Python.
tools/index-network-production-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves Index network production evidence
without Python.
tools/index-runtime-check.pyis recorded as migrated with its.0x0
replacement owner and preserves Index runtime/release evidence without
Python.
tools/index-production-release-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves Index production release evidence
without Python.
tools/kukulkan-pure-check.pyis recorded as migrated with its.0x0
replacement owner and preserves Kukulkan pure package evidence without
Python.
tools/kukulkan-api-production-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves Kukulkan API production evidence
without Python.
tools/kukulkan-api-runtime-check.pyis recorded as migrated with its.0x0
replacement owner and preserves Kukulkan API runtime evidence without Python.
tools/kukulkan-ui-production-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves Kukulkan UI production evidence
without Python.
tools/kukulkan-ui-runtime-check.pyis recorded as migrated with its.0x0
replacement owner and preserves Kukulkan UI runtime evidence without Python.
tools/kukulkan-shared-packages-production-check.pyis recorded as migrated
with its .0x0 replacement owner and preserves Kukulkan shared package
production evidence without Python.
tools/kukulkan-service-saas-production-check.pyis recorded as migrated
with its .0x0 replacement owner and preserves Kukulkan service/SaaS
production evidence without Python.
tools/kukulkan-geospatial-production-check.pyis recorded as migrated with
its .0x0 replacement owner and preserves Kukulkan geospatial production
evidence without Python.
tools/kukulkan-compliance-production-check.pyis recorded as migrated with
its .0x0 replacement owner and preserves Kukulkan compliance production
evidence without Python.
tools/kukulkan-integrations-production-check.pyis recorded as migrated
with its .0x0 replacement owner and preserves Kukulkan integrations
production evidence without Python.
tools/kukulkan-deployment-production-check.pyis recorded as migrated with
its .0x0 replacement owner and preserves Kukulkan deployment production
evidence without Python.
tools/kukulkan-deploy-check.pyis recorded as migrated with its.0x0
replacement owner and preserves Kukulkan deploy evidence without Python.
tools/kukulkan-live-adoption-check.pyis recorded as migrated with its
.0x0 replacement owner and preserves Kukulkan Live adoption evidence
without Python.
tools/scripting-check.pyis recorded as migrated with its.0x0
replacement owner and preserves scripting profile and Python de-hosting
progress evidence without Python.
tools/scripting-production-closure-check.pyis recorded as migrated with
its .0x0 replacement owner and preserves scripting production closure
evidence without Python.
make final-remaining-python-checkis available as a bounded closure gate
and reports stable JSON diagnostics for remaining, stale, or ownerless
migrated Python ledger rows.
release/python-compatibility-retirement.tsvrecords that compatibility
Python wrappers and the former host-only adapters are retired and public
workflows point at bounded make gates.
tooling/python-dehosting-native-backend-gap-template.htmlrecords missing
host effects before migration rows can close.
tools/python-dehosting-parity.shcompares old and new command status,
stdout, stderr diagnostic code, and declared output files.
- The roadmap states that Python cannot remain as a production host adapter.
- The roadmap requires native backend or host ABI support for missing script
capabilities.
- The final closure requires no repository-owned Python source, wrappers,
shebangs, or python/python3 invocations in production, test, release, or
documentation gates.
- Documentation and ADR/RFC checks pass.
Documentation Impact Review
- Updated documentation:
python-dehosting-roadmap.html, this RFC,
docs/adrs/ADR-0165-python-dehosting-roadmap.html,
docs/adrs/ADR-0003-runtime-memory-dynamic-behavior.html,
docs/adrs/ADR-0036-runtime-depth-production-closure.html,
docs/adrs/ADR-0112-zed-source-tree-lsp-resolution.html,
docs/adrs/ADR-0164-documentation-ecosystem-quality.html,
docs/rfcs/RFC-0003-runtime-memory-dynamic-behavior.html,
docs/rfcs/RFC-0036-runtime-depth-production-closure.html,
docs/rfcs/RFC-0110-editor-highlighting-and-lsp.html,
docs/rfcs/RFC-0112-zed-source-tree-lsp-resolution.html,
docs/rfcs/RFC-0164-documentation-ecosystem-quality.html,
docs/rfcs/RFC-0004-host-effect-runtime-policy.html,
docs/compiler-memory.html, docs/documentation.html, docs/diagnostics.html,
docs/release-notes.html,
docs/runtime-cli.html, docs/type-production-closure.html,
docs/unified-ir-wasm.html, docs/actor-runtime.html,
docs/native-runtime-profiles.html, docs/runtime-memory-dynamic.html,
docs/local-effects-runtime.html, docs/fetch-browser-runtime.html,
docs/service-boundary-runtime.html, docs/web-runtime.html,
docs/editors.html, docs/maintainer-manual.html, docs/scripting.html,
docs/source-owned-tooling.html, docs/runtime-capabilities.html,
docs/runtime-production-capabilities.html,
docs/apps/resource-safe-gates.html, perf/runtime-memory-surfaces.tsv,
type-system/production-backends.tsv,
runtime/contract-inventory.tsv,
runtime/observability-matrix.tsv, and release/test-helpers.txt.
- No documentation update required: not used.
Related ADRs
docs/adrs/ADR-0165-python-dehosting-roadmap.html