Repository navigation
fix: Align native setup guides and encode Kimi hook commands - #833
Draft
buildingjoshbetter wants to merge 11 commits into
Draft
buildingjoshbetter wants to merge 11 commits into
buildingjoshbetter wants to merge 11 commits into
Conversation
5 of 53 tasks
This was referenced Oct 11, 2026
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Refs #766 (C10).
Align six manual setup guides and the compatibility matrix with the reviewed registration contracts:
additional_contextis distinguished from unsupportedbeforeSubmitPromptrecall injection; that hook remains registered for capture.10000 / 1000 = 10seconds and5000 / 1000 = 5seconds.[[hooks]]schema and 10/5-second timeouts at~/.kimi/. Current~/.kimi-code/discovery and installation remain unverified.config.yamlunderhooks, on CLI and gateway surfaces. Repeatedpre_llm_callcallbacks and session finalization are distinguished from exact user-prompt and pre-compaction boundaries; gateway-onlyHOOK.yaml/handler.pyextensions are separate.extensionsdiscovery withopenclaw.plugin.json,package.jsonandindex.js. The copy script verifies all three source files and refuses an existing destination. The adapter'spluginsstaging divergence remains tracked separately in OpenClaw per-prompt bridge sends the wrong key and discards recall output #764.Manual Codex/Cursor/Gemini commands identify the trusted installed
--hostand exact native--event. Host selection controls transcript admission; event selection controls C07 context serialization. Stop/Compact parse the event, while admission uses the host. Existing servers, settings and same-event handlers are preserved by the documented merge approach.This refresh also fixes the Kimi adapter's emitted TOML command strings and the generated-string decoding path used when
tomllibis unavailable. The necessary production correction is included in existing draft #833 after actual Windows CI exposed invalid installed TOML.Stack and source scope
C10 head
bd915d56885b362d6c3049647eca24f9d2243d33is normally published in OPEN/DRAFT #833 onfix/manual-integration-docs-publish-v3. It refreshed previous published head899a57007fa210e457531c969b7ad0c2819c7bc9. Root confirmed the v6 publication body passed 15/15 independent checks and actual draft publication/readback passed 56/56. This v7 body updates evidence wording only; it does not change the published source, stack or draft status.Parent remains draft #832 through
fix/native-hook-contracts-publish-v3at26afddf7332f1586768d1d787cfe1aad2c1278e1; its C05 prerequisite remains draft #831 at003705e9e3f4cd38f7a3abf5c79607af2ba45e7e. Those two sources are unchanged by this correction.The exact C10 delta against C07 is ten paths: six setup guides,
docs/compatibility.md,truememory/hooks/adapters/kimi.py, the existing manual parity test andtests/test-kimi-toml-serialization-833.py. Its complete source snapshot contains 162 BASE overlays. Since published899a, only the Kimi production adapter and the new regression changed. All seven manual documents and the complete existing manual test remain byte-identical; manual test SHA256 isacfb9944cff0f1b7fa3307b5a434f26929aeeb0a7ad1f0d8b32f663ef72057b1.The only new production changes are command-string serialization inside
install_hooksand complete generated-string decoding inside_parse_existing_hooks. The command builder, other 17 Kimi methods, six constants, shared atomic writer, event names, timeout values, ownership behavior, MCP settings and unrelated TOML remain protected. README, benchmarks, models, retrieval formulas, GC and product egress policy are unchanged by this correction.Combined head
60274d7a5d07179070efa45dbc7e7cd749bead7dcontains 35 relative paths and 174 complete BASE overlays. After exact draft readback and fresh hosted acceptance, root normally fast-forwarded privatemaintenance/runtime-integration-v1fromacc9e00a55cadb91f392ec2a172a2f1fa580c749to this exact combined head. It is clean and unpushed; all 174 committed and working source hashes equal the accepted combined-full-v5 source. Independent adoption status is recorded below.Controls and preserved failures
All eight parity method executable ASTs and 58 unittest-style assertion/fail call AST nodes are retained. Synthetic controls parse actual snippets and execute actual adapter/shared-helper source with inert executables and isolated configuration, preserving unrelated servers and handlers, exact path/timeout/identity checks and fail-closed parser negatives.
OpenClaw controls retain the three-file package copy and repeated-overwrite refusal. Corrected fixtures use writable
tempfile.mkdtemproots and passed with source-directory creation denied by the validation environment; they bind the actual ownership-helper AST without a copied predicate or fallback. The original read-only source fixture failure remains preserved.Original old-head Windows failures remain preserved. Draft #831 at
72b66c20d5e00c6935f9ae2264b27d019b335925failed four ownership-fixture subtests because unconditional POSIX single-quoted commands were supplied to the native Windows parser; production correctly rejected them. Log SHA256ac86315cb74ffde5db2086772a793f031b90d52d55cb2e05104facdd3477f8fbis preserved in.work/reports/transcript-hosted-failure-windows-114405870142-v1.log. The first fixture childb53c35d6b8bcdd705c5893d672976a65eb35cd0bpassed its simulated methods but omitted literal-semicolon Windows coverage; that gap and its receipt remain preserved. Child003705e9e3f4cd38f7a3abf5c79607af2ba45e7eexplicitly tests POSIX single-quoted and native Windows double-quoted literal semicolons on both simulated platform paths, retaining all 32 methods, 102 assertion/fail call AST nodes and foreign/shell negatives. Production ownership is unchanged.Draft #833's old Windows job separately failed seven manual-parity methods through unescaped native paths, JSON/TOML parsing and Hermes POSIX tokenization, plus the same four inherited C05 subtests. Its preserved log SHA256 is
6b6697440d6dc5e6360df7a0aaf31bcc384c3fe9f749d8b16e93f4f57a305c72, in.work/reports/manual-docs-hosted-failure-windows-114407979608-v1.log. C10's earlier fixture-only encoding/tokenization/canonicalization correction retains eight method bodies and 58 assertion/fail call AST nodes. Narrow JSON-compatible double-quoted STRING decoding rejects duplicate keys, aliases, tabs, malformed/trailing input and non-string collections. Those actual-source synthetic controls exercise POSIX and Windows path strings; they did not establish actual corrected-head Windows CI or native host acceptance. The subsequent actual Windows failure below exposed a production serializer defect.Actual Windows jobs
114426041832and114426050901failed at published C10899a57007fa210e457531c969b7ad0c2819c7bc9, in runs38124535400and38124538219. Both used native CPython 3.12.10. The manual Kimi parity method parsed unmodified installed TOML with actualtomllib, which raisedInvalid hex valueat line 9, column 16. The adapter inserted raw Windows command quotes/backslashes into a TOML basic string. The Python 3.10 fallback also truncated escaped quotes and retained escape text instead of the exact command.Both raw failures remain preserved:
.work/reports/manual-docs-hosted-failure-windows-114426041832-v1.log, 671,432 bytes, SHA256a157e9787a49ce11f84320a61f3f43d34da2d8aa496b1de23616471a06db62a3; and.work/reports/manual-docs-hosted-failure-windows-114426050901-v1.log, 670,488 bytes, SHA256c48633da92380add81850361b89fb2b1614d102b52beab9dc5c51438eee0c1d4. The first job's root triage is preserved separately. These are actual hosted failures; the original 190 synthetic failure records are retained separately.The correction emits JSON-compatible TOML basic strings with Unicode retained, C0 characters escaped, and explicit escapes for DEL, U+0085, U+2028 and U+2029. This preserves non-BMP scalars without TOML-invalid surrogate escapes and prevents existing line-based parsing from splitting Unicode separators. When
tomllibis absent, the existing generated-hook fallback decodes a complete escaped double-quoted scalar, permits a trailing TOML comment, and refuses malformed escapes, trailing junk or a second quoted string through a specificJSONDecodeError/complete-line check. It does not add a general TOML parser or alter hook ownership.The new regression executes actual adapter and shared atomic-writer AST against an in-memory synthetic filesystem. Six methods and 189 subtests cover exact POSIX/native-Windows command quoting, spaces/quotes/backslashes, all C0 characters, DEL, BMP/non-BMP Unicode and Unicode separators, install twice/idempotence, foreign TOML/MCP retention, verify/uninstall, atomic-error preservation/retry and fallback malformed-string refusal. The author replay passed on actual CPython 3.13.7 with native
tomlliband again with whole-module scoped missing-tomllibsimulation. Both files parse with Python 3.10 AST syntax; this is not actual Python 3.10 runtime evidence. Ruff and diff checks passed. All eight existing manual methods and 58 assertion/fail call AST nodes remain unchanged.Root confirmed independent 94/94 production controls, 23 source-integrity controls and 12 installed-source cases covering 48 commands and eight malformed inputs passed. The root review receipt
.work/reports/kimi-toml-serialization-independent-review-v1.jsonhas SHA256280da59aae2d5766a1116338b57e7a4c13d017e6e900e1822c955a5ebaf9451c. These controls preserve command construction, four events, timeouts, ownership and atomic writing; actual Kimi native lifecycle and model-visible behavior remain unproven.The preserved old #832 Ubuntu experimental failure used ordinary CPython 3.14.8; actual GIL state was not measured. Its #631 zero-vector rebuild hit the unchanged nonblocking model-publication busy fence with identity
(0, "model2vec", 256). The exact lock owner and historical cause remain unproven. Log SHA256b81ee74dfc997bc0e0824bb1ee09e8537c5bba02a2dc63a95888a1d26f83d3f3remains in.work/reports/native-hook-ft-hosted-failure-114406830194-v1.log; the historical filename is not evidence of a free-threaded runtime.Actual-source inspection identified a separate #630 fixture that opened its unique engine without teardown. C07's fixture-only correction captures that fixture's coordinator, checks its canonical database path against the unique fixture database, cancels and waits at most 10 seconds, surfaces failed completion, and always closes the fixture engine in a nested
finally. It covers open/test failures without changing the model fence, shared lock, registry, model identity, caller transaction semantics, GC or production code. Initial child67e73f3c7fe427b8b63fcfaa933fdcb339fcb2a2failed a foreign-database negative by cancelling/waiting on that coordinator; its commit/report remain preserved. Child26afddf7332f1586768d1d787cfe1aad2c1278e1refuses before foreign cancel/wait and still closes the fixture engine. Root confirmed 16 frozen lifecycle controls and 32 production guards passed. All three #630 method bodies/nine PythonAssertnodes and the entire #631 file (nine tests/28 PythonAssertnodes) remain unchanged; these are source inventories, not runtime assertion totals. Synthetic actual-function ownership witnesses demonstrate safe teardown and possible interference, without proving the historical hosted owner.The inherited #684 correction requires exact Engine/failed-handle proof, strict automatic-owner receipts, identity rechecks and one shared 10,000 ms budget. Current-owned writers refuse before opening; manual/receiptless, serving/already-admitted and replacement-handle cases retain refusal. Historical macOS and old #829 Windows owner identities remain unproven; duplicate hosted jobs passed. Separate synthetic verified-owner reproduction supports the narrow correction. Reconnect controls pass 26 methods and 42 independent probes. All 101 boundary methods and 550 unittest assertion/fail call AST nodes remain unchanged through fixture repairs; the memory-only run passes 101/101.
Original combined full
5cd23db000fd2a7c98e93395be33cf8638641db1failed ten MCP fixture tests: nine missing-timeNameErrortraces and one parallel-wait assertion cascade. Original source, container and full log remain preserved, log SHA2562a706b32240afa808f582e1751beeea1a24302f1a6f86f3eb3eddec5fa85befd. The inherited MCP-only fixture repair retains all 11 test methods and 52 unittest/Mock assertion/fail call AST nodes, binds actual source-derived collaborators and strict unexpected-wait/import guards, and passes 11 safe methods plus 35 independent controls. Production, GC, model and retrieval behavior are unchanged by that fixture repair.Source-only controls rejected queue v4's marker-insertion argv and publisher v5's incomplete exact-PR identity checks; the originals and failed controls remain preserved. For that historical refresh, root used reviewed queue v5, SHA256
cb9136cbe4cd3c2ca75c9c52e225c0ed2d71f5f08b711ae8ea6e885fe9d17824, and publisher v6, SHA256573d39c50d4258461fe6160f65ab5a66f9ffc5871425946e6970fdbad2277f8b. Root confirmed the publisher's 22 URL and 63 metadata negative controls passed. Those source controls are distinct from actual publication/readback. Historical plan v4 SHA25645dd32d3f099b6445c97054089b66382bec9866e90ae6b1c268516e94b39eb56and manifest v9 SHA2568419a390c620d0f9fc6159f48631d123448a80745b1f2baad9f36cead85d1a8bpinned that earlier refresh source chain. These queue, publisher, plan and manifest identities are preserved historical evidence.Current source and publication controls
Manifest v10 SHA256
f48736d73d845de9ea7db87fb2297a70ca2dd098669f7f4253718f8141a2c4f8pins the exact source composition. Current queue v6 (.work/scripts/run-native-integrations-windows-gates-v6.py) SHA256 isa9f791eaf72824e3585c03b6eb927566d19342c421c9f621fad1fecfd3f35faa. Current immutable plan v5 SHA256 is971b3ee879535a35e543a343176990ae40bdbb51059efe14be8e59812e4c7b81; publisher v7 (.work/scripts/publish-native-integrations-draft-v7.py) SHA256 isa96cde42ab8a46d04fdb6f6193debd1b1e8c1a1122c79ef8536bb8ebd1ad9513.Root confirmed 34 queue source controls, 24 plan/helper controls and 85 scoped inert publication controls passed. These source controls are distinct from actual draft mutation and exact remote readback. Immutable plan v5 proposed the v6 body for the completed source refresh; it is preserved as historical preparation and is not rewritten for this v7 evidence update. Immutable preparation flags in the plan/manifest are historical snapshots; later exact receipts and root journal record completed gate acceptance, v6 publication/readback and hosted validation. V6 remains preserved at SHA256
9c6a65b6133576342c6e289b71be90a1f10b0bb1351b62a69e63c3faded7cfa3; v5 remains preserved at SHA2561e22f6d48c353487bcc5953ff9336e0025aa766d93d4be66bbddee70b198d518.Exact-source validation
60274d7a5d07179070efa45dbc7e7cd749bead7def50e461efcd8bf62307b5acd76e147f09bc4ed27fdba271173b3792b42e178760274d7a5d07179070efa45dbc7e7cd749bead7d844d51f50230db48bb20a79713e10c52232cb35b570b7d9da9df5317e6ed991bbd915d56885b362d6c3049647eca24f9d2243d331d0df32157e9df40532d76e7fc693d36ba8868c5d5b012efad9eeb270af35f03All three root gates exited 0 without timeout/OOM and with matching actual source/build/log hashes. Both full gates reported 17 skips, three network deselections and 39 warnings. The focused selection contains 40 files, including #630, #631 and the new Kimi regression, and reported three warnings.
The three jobs ran sequentially using two built images on synthetic data, offline with eight CPUs and 16 GiB, read-only source/models/fixtures and root filesystem, enabled native SQLite flags and no GPU exposed. The wheel build/install and actual container settings are recorded. Image metadata identifies Python 3.12.15; an executed runtime banner was not measured in these GPU gates. All-test installed import origin was not measured. No GC-disabling override was used; the unchanged selected regression assertions observe GC at their own checkpoints. Full-run global runtime GC state was not recorded.
Combined/focused source and build are
source-native-integrations-combined-v9andbuild-native-integrations-combined-v9, using runsnative-integrations-focused-v9andnative-integrations-combined-full-v5. Their root receipts are.work/reports/native-integrations-focused-validation-v9.jsonand.work/reports/native-integrations-combined-full-validation-v5.json, with container configs.work/reports/native-integrations-focused-container-config-v6.jsonand.work/reports/native-integrations-combined-container-config-v5.json. Shared raw build-log SHA256 is56c549bcd3aea91a532bda8990d8f1979826610fe17b44b7b3fa8c55b1c1be69, preserved in.work/reports/build-native-integrations-combined-v9-evidence-v1.json.Exact C10 source/build/run are
source-manual-integration-docs-publish-v8,build-manual-integration-docs-publish-v8andmanual-integration-docs-publication-v4. Root receipts are.work/reports/manual-integration-docs-publication-validation-v4.json,.work/reports/manual-integration-docs-publication-container-config-v4.jsonand.work/reports/build-manual-integration-docs-publish-v8-evidence-v1.json. Raw build-log SHA256 ise1b99bb9e9c137f952585cbc0c18c9ef488626a886434e9302dd725fcb0a9ac9.Root relayed independent acceptance of all three exact gates before v6 preparation, including sequential chronology, exactly three jobs/two builds and actual final idle. Root's strict query at 09:23:57 UTC on 2026-10-11 recorded zero running containers and zero owned build children; queue 28519 exited 0. Unchanged C05/C07 sources retain their previously accepted exact GPU gates. The later v6 draft publication/readback and fresh C10 hosted validation are complete. No further GPU jobs are queued.
Preserved prior exact-source gates
The following v5-body evidence remains valid only for its original exact sources and is not validation of the new Kimi code:
acc9e00a55cadb91f392ec2a172a2f1fa580c7497eadab0e30751d913a7ec9b092d2af719aee4039007eb8ace87896291dc85200acc9e00a55cadb91f392ec2a172a2f1fa580c749f5e0f116edaddb79ed96fe3dc3b28b56198af256aa92e1d1c2c91bcb2b03bbc5899a57007fa210e457531c969b7ad0c2819c7bc9254a719b257d77ce6cb30b9b0d622627f2b0fe6005c3182062ab45e88ed1f875Those prior full gates exited 0 with 17 skips, three deselections and 39 warnings; their focused selection contained 39 files. The old C10 pytest elapsed time was 410.98 seconds. Its source/build/run were
source-manual-integration-docs-publish-v7,build-manual-integration-docs-publish-v7andmanual-integration-docs-publication-v3, with publication receipt/config v3 and v7 build evidence; raw build-log SHA256eb552e8f7ae2d26cbf4cf40955c216e3b5bf8d4349232f2ebf68f4149a9f118aremains preserved. Prior combined full v4/focused v8 receipts, container configs v4/v5, combined-v8 build evidence and the independently accepted five-gate aggregate remain historical evidence. The prior draft refresh and private adoption toacc9occurred. At v6 preparation/publication, privateacc9was held pending fresh hosted acceptance; that dated preparation state is preserved, and the subsequent completed Kimi publication and normal private adoption are reported here.Hosted status and remaining validation
Unchanged C05
003705e9e3f4cd38f7a3abf5c79607af2ba45e7eand C0726afddf7332f1586768d1d787cfe1aad2c1278e1each have all 34 hosted checks successful in root snapshot v7. Root reviewed their actual native Windows CPython 3.12.10 and ordinary CPython 3.14.8 whole-suite raw PASS receipts in.work/reports/native-integrations-hosted-platform-receipts-v1.json, v2 and v3. Push runs pin the leaf heads; PR runs test their synthetic merge commits, whose readback/ancestry is separate from a leaf-head result. The matrix'struelabel is not proof of a free-threaded runtime, and actual GIL state was not measured. Those unchanged-source successes do not validate this newly changed C10 adapter.Current C10
bd915d56885b362d6c3049647eca24f9d2243d33has all 34 current checks SUCCESS across push run38128602277and PR run38128606244. Six critical raw logs were independently accepted under the unchanged platform-pair criteria: 14 Windows, 16 Python 3.10 and 26 ordinary Python 3.14 criteria for each job. The other 28 checks are supported by completed SUCCESS metadata only; their raw logs were not independently reviewed.38128602277/1144380653366c1de85c4b31fd76e3207bb290053a9bb5ef6653989ecf6b11776341948056af38128606244/114438075823d573e4f066078c2054e6f11c3cc2bb5926dbcd400f87763cde064578edf8ff5638128602277/114438065348c8547dbed96b85bd67385d0d84fcdd8fd9cd8013e09601d4544c7300fa2d8ded38128606244/114438075676f846587d37119e1d052f1d0c1e40f806aa8c674fb3529dc06d159939aee5dab538128602277/1144380653976f4d6e3efddafb80ac57f276721f3affb4ac26cb73d99f6de500bb7e183aa29c38128606244/1144380757781772eda557bf0bf9dbe76ae40ea4c72f670183ba304f659e704ccf93de125582All eight existing manual methods and all six new Kimi methods directly PASSED without skip in each of these six actual logs. Both ordinary Python 3.14 logs also directly PASSED all three original #630 methods and all nine original #631 tests. Subtest totals and source assertion inventories are distinct; these results do not measure a total count of executed logical assertions.
Actual Python 3.10.22 hosted execution includes the regression's scoped missing-
tomllibroute. Natural import availability was not separately probed;tomli2.5.0 was installed. This actual hosted evidence supplements the earlier author replay's Python 3.10 AST syntax check and local CPython 3.13.7 missing-import simulation.The push checkout is leaf
bd915d56885b362d6c3049647eca24f9d2243d33. Each PR platform log checks out synthetic merge8fa1bb6333c294b0f87e01f145076fe4b0a0b820; actual GitHub commit API metadata records parents26afddf7332f1586768d1d787cfe1aad2c1278e1andbd915d56885b362d6c3049647eca24f9d2243d33, with treec9c84f843577c9fd345a2e95a7eecd0eded4e5e0equal to the GitHub leaf and local leaf tree. The PR commit remains a distinct synthetic merge even though its tree matches the leaf.Root packet
.work/reports/native-integrations-hosted-platform-receipts-v7.json, SHA25628e31f3b25aba9b453e132f11335beeb433f819d4af2e7ebb87169f2629fab41, preserves all six raw paths, byte counts, hashes, actual setup/banners, summaries and merge metadata. Root snapshot.work/reports/native-integrations-hosted-snapshot-v9.json, SHA256df821604bcc9e4bb2dd78e315d1720d3d9abbfd718f001886dca285d0310cde4, records all 34 current checks complete SUCCESS and monitor 33462 exit 0. Their 09:48 UTC preparation fields still say final PR raw reviews pending/privateacc9held; later root-relayed consolidated six-log PASS and the adoption receipt supersede those dated fields. All original failure logs remain preserved.Actual Python 3.14.8 setup is ordinary CPython with the setup action's free-threaded option false. The matrix's
truelabel marks experimental/continue-on-error, not free-threaded proof; actual GIL state and SOABI were not measured. Hosted CI installed the editable project; all-test import origin was not directly measured. No GC-disabling override was introduced, and model, fence, retrieval and selected GC-checkpoint source assertions remain unchanged. Full-run global GC state and the historical busy-fence owner remain unmeasured/unproven. Current GPU image metadata records Python 3.12.15; no matched-3.14 GPU runtime success is claimed.Configuration presence, registration, status output, serializer emission and written instructions do not establish native event execution, payload translation, transcript capture, host acceptance or model-visible recall. No native Codex, Cursor, Gemini, Kimi, Hermes or OpenClaw lifecycle was exercised by these manual/serialization controls. Kimi's newer home, Hermes translation under #765, and OpenClaw discovery/activation/runtime payloads/user/database propagation under #764 remain unverified. The adapter's OpenClaw staging divergence remains separate.
Historical macOS closed-handle and old #829 Windows I/O owner identities remain unproven; duplicate jobs passed and synthetic verified-owner controls support only the scoped inherited admission correction. The original 26.24 GB Mac memory fix, actual hardware parity, native host/model acceptance and retrieval acceptance remain unproven. Complete-archive DeepSearch under #770 and durable source citations remain future work; #758/#759 product egress policy is held.
Private
maintenance/runtime-integration-v1is now60274d7a5d07179070efa45dbc7e7cd749bead7d, clean and unpushed after root's normal fast-forward fromacc9e00a55cadb91f392ec2a172a2f1fa580c749. The only adoption delta is the reviewed Kimi adapter and new regression; all 174 committed and working source hashes match accepted combined-full-v5. Root adoption receipt.work/reports/native-integrations-kimi-private-adoption-v1.jsonhas SHA2568ea635932762b660032865edabc5a131f2da2a50b6af42361050c0442aba2a4c. Independent review was pending when that root-action receipt was created; this body does not use the action receipt as an independent acceptance claim. Its creation-time independent-pending field is a dated root-action record, not an independent acceptance claim.Draft only. This v7 evidence body still requires its own review and exact remote body readback; the accepted 15/15 body and 56/56 publication/readback controls refer to v6. Feature-branch merges already occurred in the prerequisite stack. No main merge, release, accepted issue closure, native host acceptance or original Mac fix acceptance is claimed. The original dirty checkout and live Mac service remain untouched; the maintenance project remains active.