[PR #7349] [MERGED] fix(ci): align static checks and regression fixtures with current contracts #7826

Closed
opened 2026-11-05 01:47:56 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/7349
Author: @ShuaixinHuang
Created: 10/27/2026
Status: ✅ Merged
Merged: 10/27/2026
Merged by: @morluto

Base: main ← Head: codex/fix-unused-analysis-exports


📝 Commits (10+)

  • ab28cb6 fix(ci): retire unused internal analysis declarations
  • a9a9e00 test: use an admitted app bundle for provider routing
  • ada7314 test: keep bundle routing coverage outside oversized group
  • 4a2307b fix(ci): align regression fixtures with current admission contracts
  • 2c6d0f6 merge: resolve current upstream CI fixture overlap
  • bdfb5da test: bind extraction close fixtures to their ZIP digest
  • 38cf9ac test(cli): match typed analysis outcomes in function detail fixture
  • 0dc2a5d test(ghidra): preserve empty Java property separator framing
  • 9572325 test(electron): retain unknown IPC ownership for native module gaps
  • 50b93c3 fix(electron): share source-scoped call path identity

📊 Changes

70 files changed (+995 additions, -426 deletions)

View changed files

📝 docs/testing.md (+5 -0)
📝 scripts/ci/test-report.mjs (+9 -0)
📝 src/application/environment/environmentBuild.test.ts (+25 -23)
📝 src/application/javascript/ElectronBoundaryGraphCallPaths.ts (+2 -2)
➕ src/application/javascript/ElectronCallPathIdentity.ts (+8 -0)
📝 src/application/javascript/JavaScriptSemanticGraphElectronProjection.ts (+2 -2)
📝 src/artifacts/pyinstaller/PyInstallerArtifactReader.test.ts (+56 -30)
📝 src/contracts/mobileApplicationGraphExamples.ts (+3 -2)
📝 src/domain/apkSignature/apkSigningBlock.test.ts (+2 -1)
📝 src/domain/apple/appleApplication.test.ts (+8 -1)
📝 src/domain/javascript/javascriptStaticAnalysisHelpers.ts (+0 -6)
📝 src/domain/javascript/javascriptStaticAnalysisInvocationReadSite.test.ts (+3 -0)
📝 src/domain/native/objcSwiftMetadata.ts (+0 -3)
📝 src/ida/IdaDoctor.test.ts (+29 -27)
📝 src/windows/WindowsNativeLoader.test.ts (+2 -15)
📝 tests/acceptance/applications/nativePlistNesting.test.ts (+1 -2)
📝 tests/acceptance/setup/clientConfigurationDiagnosticsCli.test.ts (+3 -1)
📝 tests/acceptance/setup/hermesAliasedTableSetup.test.ts (+1 -1)
📝 tests/acceptance/setup/launcherAliasesCli.test.ts (+2 -1)
📝 tests/acceptance/setup/tomlCommentPreservationCli.test.ts (+5 -3)

...and 50 more files

📄 Description

Current Android contract precondition (2026-10-27)

Current head 93f99e67fd2a5c23a2a96369a5163d5d23cf5817 adds 4 lines in one test file. The MCP contract loop now explicitly requests detail: "complete" only when that contract declares the field, matching the test's requirement for inline Evidence instead of the JNI contract's summary default. Named-operation, raw Evidence, Ajv schema and cleanup assertions remain intact. This follow-up changes no feature implementation or other tests. Normal pre-commit formatting/lint and pre-push typecheck/lint 2/2 passed (27.4 s), with hooks enabled.

Shared isolated evidence used actual failed CI merge 423db9e plus the patch: the existing JNI owner MCP proof passed 1 selected / 4 unselected (35.66 s), and typecheck passed (17.157 s). This is shared diagnostic evidence, not a complete POSIX test-file run or current-branch CI pass. This head's own main CI 40501833777 is queued (checked 2026-10-27 12:14:07 UTC); its required conclusion is pending. Original feature and engine-validation limitations below retain their scope.

Earlier upstream test compatibility (2026-10-27)

Historical head 5733ebdd0e59de45ecd76e7e512443b3e46d7222 aligned only the two native artifact tests and their shared fixture with merged upstream #7479 (740c0f56, fixed main 570abe95). This commit leaves the existing feature/production source and all other tests unchanged. All three Git blobs match that upstream revision; merge-tree against it is clean. Normal pre-commit formatting/lint and pre-push typecheck/lint 2/2 passed (26.884 s), with hooks enabled.

The 24/24 loader/verifier check was shared validation executed on #7062 at a2161f78; it was not this branch's full verification. Historical main CI 40496049946 subsequently failed the Android MCP inline-Evidence contract case corrected above. The earlier green head and this native-fixture head are superseded. The dated checks and limitations below remain evidence for their named revisions.

Summary

Repair the current static-check and regression failures while preserving admission, ownership, uncertainty and sensitive-value handling. The latest source-scoping change also left Electron application and semantic graphs computing different IDs for the same wrapper path; both projections now use one source-scoped identity owner, with the existing regression assertions unchanged.

Changes

  • Remove two obsolete internal exports reported by Knip.
  • Use an admitted inert Mach-O fixture for provider-routing coverage and bind extraction-close fixtures to their actual ZIP digest. The authored fixture commits from #7336 and #7335 retain their attribution in the history.
  • Update canonical inventory rows (including negative legacy-shape controls), the health fixture's current timestamp, the typed function-analysis mock and empty Java-property separator framing.
  • Require the Electron fixture's native-module gaps to remain unknown: zero inferred pairs and seven ambiguous transmissions. Proven-owner CLI/MCP controls still require successful pairing.
  • Require exact safe SAZ source identity on refusal; explicit sensitive path/digest controls require null values, while original content and normalized-result withholding remain checked.
  • Align directory root kinds in the Apple projection fixture and authored canonical CLI examples, including the occurrence identity input.
  • Resolve the actual upstream conflict against pinned 92213a91, keeping the upstream artifact-coverage file and its additional integrity controls exactly.

Earlier CI repair evidence (2026-10-27)

Earlier repair head: df7536df29d00fbdbaeed4a6c9dcdde19c45d43b. The last full upstream synchronization is pinned 0d1d6e85. The net diff against that fixed baseline is 31 files. The shared CI repair wave changes regression fixtures only; production source and the original feature behavior were not expanded. Launcher ownership, malformed-input refusals, native admission, source identities, cleanup retries and sensitive-value controls remain enforced.

Native artifact and client fixture checks used the actual CI merge b2011fd3 and its matching three-task build. The results and unavailable coverage are separated below:

  • Windows loader PE fixture: 8 failed / 14 passed before; 22 passed after declaring the optional-header length and supplying its bytes. Admission and digest refusal assertions are unchanged.
  • Dependency-free native verifier fixtures: 2 failed before; 2 passed after copying the newly imported PE parser dependency into both isolated source and packed layouts.
  • Cleanup retry ownership: 2 failed / 4 passed before; 6 passed after, checking the exact retained root path rather than the old placeholder.
  • Client environment preservation: 6 failed / 57 passed before; 63 passed after giving positive refresh fixtures a proven-owned launcher.
  • Eight other client files: the identical Windows command changed from 50 failed / 115 passed / 10 skipped to 19 failed / 146 passed / 10 skipped, with no newly failing test names. The remaining failures were already present in the baseline, including Windows symlink permissions, POSIX path expectations and platform-specific launcher expectations; the complete command is not green. A final platform-correct Kimi launcher was then verified separately across lifecycle, profile, transport and timeout groups: 23 passed / 8 unselected. The two existing POSIX-only alias cases remain unexecuted locally.
  • The controlled Apple cleanup helper passed protocol syntax and production response validation. Its guarded compiler stub rejected 6 negative argument cases and accepted the valid write invocation. The actual Darwin process CLI failure is not locally verified and requires new hosted CI.

The earlier retained-root capture correction was checked with 2 selected producer controls passing; the actual process-capture file's 24 Windows PTY cases were unavailable locally. No actual Linux/macOS run is claimed by these fixture checks.

On that historical branch head, normal pre-push typecheck/lint passed 2/2 tasks; hooks were kept enabled. The focused results above describe their executed fixture/build revisions, not a complete run on every branch.

All 13 shared repaired test files are byte-identical to root head df7536df after porting. Read-only merge analysis against fixed upstream 5b292b63 was clean after the minimal overlap corrections. No full main merge was performed for this wave; merge analysis does not establish CI success.

Earlier shared validation remains historical: Apple projection 39/39 and canonical CLI examples 9/9; SAZ CLI/MCP 18 passed / 1 skip after its required build; five public regression files 63 passed / 4 skips at 6e0c0c9f; four Electron files 34 passed / 3 skips; Java files 35 passed / 5 skips; provider/overview/workflow files 15 passed / 1 skip. The borrowed #7336 and #7335 fixture commits retain their authored history. A two-line Electron fixture overlap was aligned with upstream without importing unrelated main changes.

Historical snapshot at 2026-10-27 13:32 CST: the then-head hosted CI 40455150833 is queued; its CI required gate has not completed. No failed code job was reported at this query; that is not a completed CI pass. Previous-head results do not establish current-head success. Linux-only extraction-close, FIFO/socket, fake-gh and process/alias coverage still require hosted CI. Human readiness remains a separate declaration below.

Shared fixture repair validated at 46662ce6

Historical head: 46662ce6e39c6359517b993c0a405c6b4b998b58. Shared verification source: f353e201. The shared f353e201 repair corrects 8 test/fixture files (146 insertions / 71 deletions) relative to the preceding root repair; it changes no production code. The small POSIX tshark fixture is aligned exactly with fixed upstream 365fb03e (blob a59f73d9), retaining its canonical -x wire response, ordinary flat response, version and argument guards. The Windows .cmd fixture retains the nine flat declaration fields; its separate upstream wire-response branch merges without a conflict. Actual Git Bash execution produced byte-exact canonical wire and flat JSON; version and invalid-argument controls passed. Source inspection shows that the new upstream producer derives DNS answer ownership from the separate wire acquisition, so the old flat-only declarations were retired from this shell fixture. No production DNS model was imported and no boundary assertion was weakened.

The identity, client and earlier PCAP checks below used actual CI merge fc8fd620 and its matching runtime build (3 successful tasks). The Mac helper checks are controlled local evidence; hosted coverage is recorded separately:

  • Complete model identity and WASM MCP files: 13/13 passed. Display aliases are tested as valid while missing, contradictory-hash and format identities remain rejection controls. This does not turn absent or contradictory source identity into success.
  • Remaining client transaction/refresh files: 6 failed / 14 passed / 7 existing Windows skips before; 20 passed / the same 7 skips after. Only five positive fixture strings changed to a proven-owned older launcher; text, timeout, backup, rollback and refusal assertions remain intact.
  • PCAP: the formerly failing complete-inventory boundary case passed, and the producer file passed 80 tests. The complete 17-case boundary command still has 2 Windows probe-fault cases with exit 134 also observed on its clean baseline; that full command is not represented as passing.
  • The controlled Mac process fixture waits for the shared CLI command frame before releasing its owned child. This removes dependence on a three-second natural exit without coupling child release to PTY close. Controlled 6.5-second hold, early-release, missing-argument, protocol-schema and 6 compiler-negative checks passed, as did two fake-worker reuse controls and the real-worker fatal/version-recovery control (1 passed / 25 unselected). The subsequent actual hosted Apple lane passed on 46662ce6 (see below).

An additional local shared-CLI control command was not fully green: in tests/boundary/cli/sharedJavaScriptCliSession.test.ts, the malformed-JSON failure, invalid_request and worker-retention assertions passed, but its later analyze-javascript-application command exited 1 instead of 0 (line 853). That command reported 1 passed / 1 failed / 24 unselected. No clean-baseline attribution or production fix is claimed for that failure.

The previous root macOS job also reported three hdiutil verify resource-unavailable failures on its newly created DMG, before Vitest. This wave does not change the DMG reader or claim that condition is fixed. Four other existing macOS jobs advanced successfully through that same DMG verification stage.

Normal hooks remained enabled. The canonical shell-only follow-up reused successful cached typecheck/lint results; its pre-commit hook reported no matching tasks, rather than claiming a new TypeScript test run. The 20 shared repaired test/fixture files were identical across the five branches at that repair wave; later root-only corrections are described below.

Hosted Apple E2E job 122046908907 passed on 46662ce6, including real Apple artifact verification and process boundary regressions. Its Source, build, documentation and static checks also passed. The overall run later stopped with seven newly exposed prerequisite/diagnostic fixture failures in shard 5, and its remaining jobs were cancelled when the correction below was pushed; that earlier run was not fully green. Initial human readiness below remains recorded independently of code-CI completion.

Earlier root correction (2026-10-27)

Historical head: 0e95dc55f4572ff9f4f4f95ef235fc759f0d4bd4. The complete diff against last full upstream synchronization 0d1d6e85 is 41 files, 476 insertions / 192 deletions. Since 46662ce6 this follow-up changes 4 test files, 19 insertions / 5 deletions, with no production changes.

  • Preserve the exact DNS query and address equality assertion while adding the decoded query labels 617069 / 6578616d706c65 / 636f6d. The fixed upstream producer accepted the canonical wire fixture; the old exact assertion failed and the corrected exact assertion passed. This corrects the independent tshark lane's 1 failure / 144 passes / 1 skip rather than relaxing the equality check.
  • Give the empty-first-PATH Ghidra fixture only its required trusted host ps in a private bin. CWD discovery remains first and the Ghidra launchers remain unexecuted. A production executable-resolution probe confirmed the missing prerequisite, isolated selection, rejected Java and unchanged launcher bytes. The actual POSIX CLI case was not run locally.
  • Replace the MCP traversal fixture's unsupported JavaScript bundle executable with the canonical inert Mach-O fixture. Production source admission rejected the original and admitted the corrected fixture. The two FIFO/socket platform cases remain skipped on Windows; their coverage assertions are unchanged.
  • Keep dangling/cyclic launcher registrations unknown and retain their exact command, configuration and uninstall no-write assertions. Match the full current ownership diagnostic and its exact configuration path. The failing CI merge 2143bb4a and already built fc8fd620 have byte-identical identity producers; real compiled CLI probes for missing absolute direct/Node launchers passed unknown identity, exact diagnostic/path, unchanged configuration and no-backup checks. The four POSIX symlink shapes remain unexecuted locally.

Normal pre-commit formatting/lint and final pre-push typecheck/lint 2/2 tasks passed on this head.

Historical snapshot at 2026-10-27 14:52 CST: head 0e95dc55 was mergeable and had a new main CI run 40463477194 queued, plus independent tshark run 40463477132 running. Neither had completed at that snapshot; previous-head passes were not completion evidence for that head.

Earlier focused correction — 57136e6f (2026-10-27)

The preceding hosted failure was test shard 3 of CI run 40463477194, executing merge b0d706a748d808a0d766e6244b3d11288d64640a (main 0676ad25 plus PR head 0e95dc55). These five test files now preserve the current owners' contracts:

  • Positive Int64/timeout registration fixtures identify an owned stale REA launcher or the actual current entrypoint. Integer spelling, caller-selected deadlines and no-backup controls remain unchanged; the unresolved registration case checks the exact retained-ownership diagnostic.
  • Browser cleanup keeps both the initial partial observation and later cleanup failure. A pending cleanup wrapper retains cleanup_incomplete while preserving the primary timeout category/code in its details.
  • Import atomicity is observed at bundle authentication, before and after it returns. Post-commit per-record sealing for the import receipt is legitimate and no longer mistaken for incoming authentication; the test requires the authentication boundary to run once.
  • The native plist-default fixture uses the existing file-backed target helper so its SHA-256 identifies the actual fixture bytes.

On the exact failed CI merge and its matching build (three tasks passed), all 9 previously failed cases passed; 116 other cases were not executed. This is focused evidence, not a claim that the whole suite passed. Normal pre-commit formatting/lint and pre-push typecheck/lint passed. The first Git transport failed before updating the remote; a checked, bounded HTTP/1.1 retry succeeded without disabling TLS verification or hooks.

Historical hosted CI — 2026-10-27 16:03 CST (superseded head)

Superseded root head: 57136e6f21b68849d2f949622151ff1eaafcdb3e. Its main CI 40469048903 completed successfully, including CI required. The separate real-packet/tshark run 40469048779 also completed successfully. That head's Conventional PR title and PR readiness checks passed; the PR was mergeable without conflict at that historical snapshot.

These hosted results apply only to superseded head 57136e6f and do not establish CI success for then-current head 5733ebdd. Earlier local results and limitations above remain revision-specific, including the focused 9 passed / 116 unselected result and the Windows commands that were not fully green; this update does not broaden their claimed validation scope.

Follow-up test assertions

Commit df9ac9e24 checks browser cleanup failures at their diagnostic paths and requires non-empty launcher remediation. The focused browser, launcher, and Windows verifier files passed (18 tests) against the PR combined locally with main 570abe95f. Negative controls using deliberately incorrect expectations failed in the two selected cases. Hosted CI for this head remains pending.

Test-oracle cleanup follow-up

Commits 552cb4adc and 53c27e43f strengthen Evidence bundle, cleanup, ownership and progress assertions; make conditional coverage visible; and report skipped CI modules. An entirely skipped portable inventory now fails, while mixed skips remain visible but cannot yet be classified as required or optional from Vitest metadata alone. No real-provider coverage is implied by the fixtures.

On the cleanup baseline, 78 focused CLI/MCP/acceptance tests passed with 3 platform skips, 45 lifecycle tests passed, and the report suite passed 10 tests; source-test groups, typecheck, lint and docs checks also passed. Against this PR combined locally with main 570abe95f, the registration review controls passed and 32 focused Evidence, cleanup and reporting tests passed. Hosted CI for the current head remains pending.

Author readiness

Human owner: @ShuaixinHuang

  • I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work.
  • I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps.
  • I declare this PR ready for initial maintainer review.

The human confirmed initial review and ownership for this PR in this session. Subsequent user-authorized CI repairs retain that initial declaration under the contribution rules; the verification evidence above is current.

Before merge

  • Latest-head hosted CI passes, including Linux-only fixture coverage.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/7349 **Author:** [@ShuaixinHuang](https://github.com/ShuaixinHuang) **Created:** 10/27/2026 **Status:** ✅ Merged **Merged:** 10/27/2026 **Merged by:** [@morluto](https://github.com/morluto) **Base:** `main` ← **Head:** `codex/fix-unused-analysis-exports` --- ### 📝 Commits (10+) - [`ab28cb6`](https://github.com/morluto/rea/commit/ab28cb6c9651a631174774e1dc9577515914f723) fix(ci): retire unused internal analysis declarations - [`a9a9e00`](https://github.com/morluto/rea/commit/a9a9e00dd69c2d4dbd3a7359ed2884f0b383521f) test: use an admitted app bundle for provider routing - [`ada7314`](https://github.com/morluto/rea/commit/ada73141f53a204a350daa4403efdc74ff461135) test: keep bundle routing coverage outside oversized group - [`4a2307b`](https://github.com/morluto/rea/commit/4a2307b7466009b663f4ab370aae2f562377d53f) fix(ci): align regression fixtures with current admission contracts - [`2c6d0f6`](https://github.com/morluto/rea/commit/2c6d0f63d382372cc5d03c9dd6f5e42bd4189e49) merge: resolve current upstream CI fixture overlap - [`bdfb5da`](https://github.com/morluto/rea/commit/bdfb5da4a1a39db30be73eeb914658545cda0a45) test: bind extraction close fixtures to their ZIP digest - [`38cf9ac`](https://github.com/morluto/rea/commit/38cf9ac53da95a3470826f8191057e27ba86f63e) test(cli): match typed analysis outcomes in function detail fixture - [`0dc2a5d`](https://github.com/morluto/rea/commit/0dc2a5defe406fea28bf17e929bf710199b90669) test(ghidra): preserve empty Java property separator framing - [`9572325`](https://github.com/morluto/rea/commit/957232539a197eed35ba4a33e6f6428647dc01e8) test(electron): retain unknown IPC ownership for native module gaps - [`50b93c3`](https://github.com/morluto/rea/commit/50b93c360168d7c04354cfd5ee8f4afe42fb6888) fix(electron): share source-scoped call path identity ### 📊 Changes **70 files changed** (+995 additions, -426 deletions) <details> <summary>View changed files</summary> 📝 `docs/testing.md` (+5 -0) 📝 `scripts/ci/test-report.mjs` (+9 -0) 📝 `src/application/environment/environmentBuild.test.ts` (+25 -23) 📝 `src/application/javascript/ElectronBoundaryGraphCallPaths.ts` (+2 -2) ➕ `src/application/javascript/ElectronCallPathIdentity.ts` (+8 -0) 📝 `src/application/javascript/JavaScriptSemanticGraphElectronProjection.ts` (+2 -2) 📝 `src/artifacts/pyinstaller/PyInstallerArtifactReader.test.ts` (+56 -30) 📝 `src/contracts/mobileApplicationGraphExamples.ts` (+3 -2) 📝 `src/domain/apkSignature/apkSigningBlock.test.ts` (+2 -1) 📝 `src/domain/apple/appleApplication.test.ts` (+8 -1) 📝 `src/domain/javascript/javascriptStaticAnalysisHelpers.ts` (+0 -6) 📝 `src/domain/javascript/javascriptStaticAnalysisInvocationReadSite.test.ts` (+3 -0) 📝 `src/domain/native/objcSwiftMetadata.ts` (+0 -3) 📝 `src/ida/IdaDoctor.test.ts` (+29 -27) 📝 `src/windows/WindowsNativeLoader.test.ts` (+2 -15) 📝 `tests/acceptance/applications/nativePlistNesting.test.ts` (+1 -2) 📝 `tests/acceptance/setup/clientConfigurationDiagnosticsCli.test.ts` (+3 -1) 📝 `tests/acceptance/setup/hermesAliasedTableSetup.test.ts` (+1 -1) 📝 `tests/acceptance/setup/launcherAliasesCli.test.ts` (+2 -1) 📝 `tests/acceptance/setup/tomlCommentPreservationCli.test.ts` (+5 -3) _...and 50 more files_ </details> ### 📄 Description ## Current Android contract precondition (2026-10-27) Current head `93f99e67fd2a5c23a2a96369a5163d5d23cf5817` adds **4 lines in one test file**. The MCP contract loop now explicitly requests `detail: "complete"` only when that contract declares the field, matching the test's requirement for inline Evidence instead of the JNI contract's summary default. Named-operation, raw Evidence, Ajv schema and cleanup assertions remain intact. This follow-up changes no feature implementation or other tests. Normal pre-commit formatting/lint and pre-push typecheck/lint **2/2 passed** (27.4 s), with hooks enabled. Shared isolated evidence used actual failed CI merge `423db9e` plus the patch: the existing JNI owner MCP proof passed **1 selected / 4 unselected** (35.66 s), and typecheck passed (17.157 s). This is shared diagnostic evidence, not a complete POSIX test-file run or current-branch CI pass. This head's own [main CI 40501833777](https://github.com/morluto/rea/actions/runs/40501833777) is queued (checked 2026-10-27 12:14:07 UTC); its required conclusion is **pending**. Original feature and engine-validation limitations below retain their scope. ## Earlier upstream test compatibility (2026-10-27) Historical head `5733ebdd0e59de45ecd76e7e512443b3e46d7222` aligned only the two native artifact tests and their shared fixture with merged upstream #7479 (`740c0f56`, fixed main `570abe95`). This commit leaves the existing feature/production source and all other tests unchanged. All three Git blobs match that upstream revision; merge-tree against it is clean. Normal pre-commit formatting/lint and pre-push typecheck/lint **2/2 passed** (26.884 s), with hooks enabled. The **24/24** loader/verifier check was shared validation executed on #7062 at `a2161f78`; it was not this branch's full verification. Historical [main CI 40496049946](https://github.com/morluto/rea/actions/runs/40496049946) subsequently failed the Android MCP inline-Evidence contract case corrected above. The earlier green head and this native-fixture head are superseded. The dated checks and limitations below remain evidence for their named revisions. ## Summary Repair the current static-check and regression failures while preserving admission, ownership, uncertainty and sensitive-value handling. The latest source-scoping change also left Electron application and semantic graphs computing different IDs for the same wrapper path; both projections now use one source-scoped identity owner, with the existing regression assertions unchanged. ## Changes - Remove two obsolete internal exports reported by Knip. - Use an admitted inert Mach-O fixture for provider-routing coverage and bind extraction-close fixtures to their actual ZIP digest. The authored fixture commits from [#7336](https://github.com/morluto/rea/pull/7336) and [#7335](https://github.com/morluto/rea/pull/7335) retain their attribution in the history. - Update canonical inventory rows (including negative legacy-shape controls), the health fixture's current timestamp, the typed function-analysis mock and empty Java-property separator framing. - Require the Electron fixture's native-module gaps to remain unknown: zero inferred pairs and seven ambiguous transmissions. Proven-owner CLI/MCP controls still require successful pairing. - Require exact safe SAZ source identity on refusal; explicit sensitive path/digest controls require null values, while original content and normalized-result withholding remain checked. - Align directory root kinds in the Apple projection fixture and authored canonical CLI examples, including the occurrence identity input. - Resolve the actual upstream conflict against pinned `92213a91`, keeping the upstream artifact-coverage file and its additional integrity controls exactly. ## Earlier CI repair evidence (2026-10-27) Earlier repair head: `df7536df29d00fbdbaeed4a6c9dcdde19c45d43b`. The last full upstream synchronization is pinned `0d1d6e85`. The net diff against that fixed baseline is **31 files**. The shared CI repair wave changes regression fixtures only; production source and the original feature behavior were not expanded. Launcher ownership, malformed-input refusals, native admission, source identities, cleanup retries and sensitive-value controls remain enforced. Native artifact and client fixture checks used the actual CI merge `b2011fd3` and its matching three-task build. The results and unavailable coverage are separated below: - Windows loader PE fixture: **8 failed / 14 passed before; 22 passed after** declaring the optional-header length and supplying its bytes. Admission and digest refusal assertions are unchanged. - Dependency-free native verifier fixtures: **2 failed before; 2 passed after** copying the newly imported PE parser dependency into both isolated source and packed layouts. - Cleanup retry ownership: **2 failed / 4 passed before; 6 passed after**, checking the exact retained root path rather than the old placeholder. - Client environment preservation: **6 failed / 57 passed before; 63 passed after** giving positive refresh fixtures a proven-owned launcher. - Eight other client files: the identical Windows command changed from **50 failed / 115 passed / 10 skipped** to **19 failed / 146 passed / 10 skipped**, with no newly failing test names. The remaining failures were already present in the baseline, including Windows symlink permissions, POSIX path expectations and platform-specific launcher expectations; the complete command is **not green**. A final platform-correct Kimi launcher was then verified separately across lifecycle, profile, transport and timeout groups: **23 passed / 8 unselected**. The two existing POSIX-only alias cases remain unexecuted locally. - The controlled Apple cleanup helper passed protocol syntax and production response validation. Its guarded compiler stub rejected **6 negative argument cases** and accepted the valid write invocation. The actual Darwin process CLI failure is **not locally verified** and requires new hosted CI. The earlier retained-root capture correction was checked with **2 selected producer controls passing**; the actual process-capture file's **24 Windows PTY cases were unavailable locally**. No actual Linux/macOS run is claimed by these fixture checks. On that historical branch head, normal pre-push typecheck/lint passed **2/2 tasks**; hooks were kept enabled. The focused results above describe their executed fixture/build revisions, not a complete run on every branch. All **13 shared repaired test files** are byte-identical to root head `df7536df` after porting. Read-only merge analysis against fixed upstream `5b292b63` was clean after the minimal overlap corrections. No full main merge was performed for this wave; merge analysis does not establish CI success. Earlier shared validation remains historical: Apple projection **39/39** and canonical CLI examples **9/9**; SAZ CLI/MCP **18 passed / 1 skip** after its required build; five public regression files **63 passed / 4 skips** at `6e0c0c9f`; four Electron files **34 passed / 3 skips**; Java files **35 passed / 5 skips**; provider/overview/workflow files **15 passed / 1 skip**. The borrowed [#7336](https://github.com/morluto/rea/pull/7336) and [#7335](https://github.com/morluto/rea/pull/7335) fixture commits retain their authored history. A two-line Electron fixture overlap was aligned with upstream without importing unrelated main changes. Historical snapshot at **2026-10-27 13:32 CST**: the then-head [hosted CI 40455150833](https://github.com/morluto/rea/actions/runs/40455150833) is **queued**; its CI required gate has **not completed**. No failed code job was reported at this query; that is not a completed CI pass. Previous-head results do not establish current-head success. Linux-only extraction-close, FIFO/socket, fake-gh and process/alias coverage still require hosted CI. Human readiness remains a separate declaration below. ## Shared fixture repair validated at `46662ce6` Historical head: `46662ce6e39c6359517b993c0a405c6b4b998b58`. Shared verification source: `f353e201`. The shared `f353e201` repair corrects **8 test/fixture files (146 insertions / 71 deletions)** relative to the preceding root repair; it changes no production code. The small POSIX tshark fixture is aligned exactly with fixed upstream `365fb03e` (blob `a59f73d9`), retaining its canonical `-x` wire response, ordinary flat response, version and argument guards. The Windows `.cmd` fixture retains the nine flat declaration fields; its separate upstream wire-response branch merges without a conflict. Actual Git Bash execution produced byte-exact canonical wire and flat JSON; version and invalid-argument controls passed. Source inspection shows that the new upstream producer derives DNS answer ownership from the separate wire acquisition, so the old flat-only declarations were retired from this shell fixture. No production DNS model was imported and no boundary assertion was weakened. The identity, client and earlier PCAP checks below used actual CI merge `fc8fd620` and its matching runtime build (**3 successful tasks**). The Mac helper checks are controlled local evidence; hosted coverage is recorded separately: - Complete model identity and WASM MCP files: **13/13 passed**. Display aliases are tested as valid while missing, contradictory-hash and format identities remain rejection controls. This does not turn absent or contradictory source identity into success. - Remaining client transaction/refresh files: **6 failed / 14 passed / 7 existing Windows skips before; 20 passed / the same 7 skips after**. Only five positive fixture strings changed to a proven-owned older launcher; text, timeout, backup, rollback and refusal assertions remain intact. - PCAP: the formerly failing complete-inventory boundary case passed, and the producer file passed **80 tests**. The complete 17-case boundary command still has **2 Windows probe-fault cases with exit 134** also observed on its clean baseline; that full command is not represented as passing. - The controlled Mac process fixture waits for the shared CLI command frame before releasing its owned child. This removes dependence on a three-second natural exit without coupling child release to PTY close. Controlled **6.5-second hold**, early-release, missing-argument, protocol-schema and **6 compiler-negative** checks passed, as did two fake-worker reuse controls and the real-worker fatal/version-recovery control (**1 passed / 25 unselected**). The subsequent actual hosted Apple lane passed on `46662ce6` (see below). An additional local shared-CLI control command was **not fully green**: in `tests/boundary/cli/sharedJavaScriptCliSession.test.ts`, the malformed-JSON failure, `invalid_request` and worker-retention assertions passed, but its later `analyze-javascript-application` command exited 1 instead of 0 (line 853). That command reported **1 passed / 1 failed / 24 unselected**. No clean-baseline attribution or production fix is claimed for that failure. The previous root macOS job also reported three `hdiutil verify` resource-unavailable failures on its newly created DMG, before Vitest. This wave does not change the DMG reader or claim that condition is fixed. Four other existing macOS jobs advanced successfully through that same DMG verification stage. Normal hooks remained enabled. The canonical shell-only follow-up reused successful cached typecheck/lint results; its pre-commit hook reported no matching tasks, rather than claiming a new TypeScript test run. The 20 shared repaired test/fixture files were identical across the five branches at that repair wave; later root-only corrections are described below. Hosted [Apple E2E job 122046908907](https://github.com/morluto/rea/actions/runs/40461213751/job/122046908907) **passed** on `46662ce6`, including real Apple artifact verification and process boundary regressions. Its Source, build, documentation and static checks also passed. The overall run later stopped with seven newly exposed prerequisite/diagnostic fixture failures in shard 5, and its remaining jobs were cancelled when the correction below was pushed; that earlier run was not fully green. Initial human readiness below remains recorded independently of code-CI completion. ## Earlier root correction (2026-10-27) Historical head: `0e95dc55f4572ff9f4f4f95ef235fc759f0d4bd4`. The complete diff against last full upstream synchronization `0d1d6e85` is **41 files, 476 insertions / 192 deletions**. Since `46662ce6` this follow-up changes **4 test files, 19 insertions / 5 deletions**, with no production changes. - Preserve the exact DNS query and address equality assertion while adding the decoded query labels `617069 / 6578616d706c65 / 636f6d`. The fixed upstream producer accepted the canonical wire fixture; the old exact assertion failed and the corrected exact assertion passed. This corrects the independent tshark lane's **1 failure / 144 passes / 1 skip** rather than relaxing the equality check. - Give the empty-first-PATH Ghidra fixture only its required trusted host `ps` in a private bin. CWD discovery remains first and the Ghidra launchers remain unexecuted. A production executable-resolution probe confirmed the missing prerequisite, isolated selection, rejected Java and unchanged launcher bytes. The actual POSIX CLI case was not run locally. - Replace the MCP traversal fixture's unsupported JavaScript bundle executable with the canonical inert Mach-O fixture. Production source admission rejected the original and admitted the corrected fixture. The two FIFO/socket platform cases remain skipped on Windows; their coverage assertions are unchanged. - Keep dangling/cyclic launcher registrations unknown and retain their exact command, configuration and uninstall no-write assertions. Match the full current ownership diagnostic and its exact configuration path. The failing CI merge `2143bb4a` and already built `fc8fd620` have byte-identical identity producers; real compiled CLI probes for missing absolute direct/Node launchers passed unknown identity, exact diagnostic/path, unchanged configuration and no-backup checks. The four POSIX symlink shapes remain unexecuted locally. Normal pre-commit formatting/lint and final pre-push typecheck/lint **2/2 tasks passed** on this head. Historical snapshot at **2026-10-27 14:52 CST**: head `0e95dc55` was mergeable and had a new [main CI run 40463477194](https://github.com/morluto/rea/actions/runs/40463477194) **queued**, plus [independent tshark run 40463477132](https://github.com/morluto/rea/actions/runs/40463477132) **running**. Neither had completed at that snapshot; previous-head passes were not completion evidence for that head. ## Earlier focused correction — 57136e6f (2026-10-27) The preceding hosted failure was test shard 3 of CI run 40463477194, executing merge `b0d706a748d808a0d766e6244b3d11288d64640a` (main `0676ad25` plus PR head `0e95dc55`). These five test files now preserve the current owners' contracts: - Positive Int64/timeout registration fixtures identify an owned stale REA launcher or the actual current entrypoint. Integer spelling, caller-selected deadlines and no-backup controls remain unchanged; the unresolved registration case checks the exact retained-ownership diagnostic. - Browser cleanup keeps both the initial partial observation and later cleanup failure. A pending cleanup wrapper retains `cleanup_incomplete` while preserving the primary timeout category/code in its details. - Import atomicity is observed at bundle authentication, before and after it returns. Post-commit per-record sealing for the import receipt is legitimate and no longer mistaken for incoming authentication; the test requires the authentication boundary to run once. - The native plist-default fixture uses the existing file-backed target helper so its SHA-256 identifies the actual fixture bytes. On the exact failed CI merge and its matching build (three tasks passed), all **9 previously failed cases passed; 116 other cases were not executed**. This is focused evidence, not a claim that the whole suite passed. Normal pre-commit formatting/lint and pre-push typecheck/lint passed. The first Git transport failed before updating the remote; a checked, bounded HTTP/1.1 retry succeeded without disabling TLS verification or hooks. ## Historical hosted CI — 2026-10-27 16:03 CST (superseded head) Superseded root head: `57136e6f21b68849d2f949622151ff1eaafcdb3e`. Its [main CI 40469048903](https://github.com/morluto/rea/actions/runs/40469048903) **completed successfully**, including [CI required](https://github.com/morluto/rea/actions/runs/40469048903/job/122076525302). The separate [real-packet/tshark run 40469048779](https://github.com/morluto/rea/actions/runs/40469048779) also **completed successfully**. That head's [Conventional PR title](https://github.com/morluto/rea/actions/runs/40469574493/job/122073150577) and [PR readiness](https://github.com/morluto/rea/actions/runs/40469574865) checks **passed**; the PR was mergeable without conflict at that historical snapshot. These hosted results apply only to superseded head `57136e6f` and do not establish CI success for then-current head `5733ebdd`. Earlier local results and limitations above remain revision-specific, including the focused **9 passed / 116 unselected** result and the Windows commands that were not fully green; this update does not broaden their claimed validation scope. ## Follow-up test assertions Commit `df9ac9e24` checks browser cleanup failures at their diagnostic paths and requires non-empty launcher remediation. The focused browser, launcher, and Windows verifier files passed (18 tests) against the PR combined locally with main `570abe95f`. Negative controls using deliberately incorrect expectations failed in the two selected cases. Hosted CI for this head remains pending. ## Test-oracle cleanup follow-up Commits `552cb4adc` and `53c27e43f` strengthen Evidence bundle, cleanup, ownership and progress assertions; make conditional coverage visible; and report skipped CI modules. An entirely skipped portable inventory now fails, while mixed skips remain visible but cannot yet be classified as required or optional from Vitest metadata alone. No real-provider coverage is implied by the fixtures. On the cleanup baseline, 78 focused CLI/MCP/acceptance tests passed with 3 platform skips, 45 lifecycle tests passed, and the report suite passed 10 tests; source-test groups, typecheck, lint and docs checks also passed. Against this PR combined locally with main `570abe95f`, the registration review controls passed and 32 focused Evidence, cleanup and reporting tests passed. Hosted CI for the current head remains pending. ## Author readiness Human owner: @ShuaixinHuang - [x] I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work. - [x] I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps. - [x] I declare this PR ready for initial maintainer review. The human confirmed initial review and ownership for this PR in this session. Subsequent user-authorized CI repairs retain that initial declaration under the contribution rules; the verification evidence above is current. ## Before merge - [ ] Latest-head hosted CI passes, including Linux-only fixture coverage. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-11-05 01:47:56 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#7826
No description provided.