Skip to content

test(interactive): rebase M6 Host integration on current main - #13

Merged
rockyshi1993 merged 11 commits into
mainfrom
fix/m6-current-main-e2e-20261111
Nov 11, 2026
Merged

rockyshi1993 merged 11 commits into
mainfrom
fix/m6-current-main-e2e-20261111

Conversation

@rockyshi1993

@rockyshi1993 rockyshi1993 commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

Summary

This is the current-main replacement for the stale M6 integration changes in Draft PR #7.

  • Adds the approved full Interactive delivery roadmap and closure ledger.
  • Ports the M6 cross-process Host/worker integration tests onto current main ea2bb10893a9be2e5de3561fc9a660a6977ae15c.
  • Fixes the fixture root cause without changing production semantics: the temporary project now contains its own package.json, exercising the current default ancestor-based projectRoot discovery.
  • Adds a separate explicit-projectRoot override test with the workflow source outside the project tree.
  • Includes tests/integration/*.test.mjs in npm test.
  • Extends the existing Linux Host isolation CI job to install locked dependencies and run M6 e2e with FLOWKIT_M6_ISOLATION=1.

Scope and evidence boundary

  • No production Core, compiler, Coordinator, SQLite schema, Host semantics, Program ABI or public SDK API changes.
  • The M6 worker remains explicitly scripted. These tests prove protocol/Host integration, not Grok Build/Codex/Claude provider integration and not native-host provenance.
  • Linux cross-UID coverage is not Windows ACL proof.
  • This PR does not close C12/S13 or M6 final acceptance.
  • PR test(interactive): M6 P0-A integrated Host acceptance and cross-process verification #7 remains open until this replacement is reviewed and exact-HEAD CI is verified.

Validation

Exact HEAD 14a62cb96fc29b121756961f7fa42baddf8cc070 passed GitHub Actions run 42997829318: 7/7 jobs SUCCESS.

  • Ubuntu 24.04 / Node 22.13.0: 369/369, 0 failed, 0 skipped.
  • Ubuntu 24.04 / Node 24.22.1: 369/369, 0 failed, 0 skipped.
  • Windows 2025 / Node 22.13.0: 369/369, 0 failed, 0 skipped.
  • Windows 2025 / Node 24.22.1: 369/369, 0 failed, 0 skipped.
  • Linux Host OS-user isolation + M6 e2e: 11/11 on Node 22.13.0 and 11/11 on Node 24.22.1.
  • Website build: SUCCESS.
  • The full roadmap now enumerates T01–T34, S01–S14, C01–C24 and N1–N13 individually, with phase ownership.

This CI is P-level protocol/Host evidence only; it does not prove live Grok Build provider integration, native tool-loop provenance, Windows ACL separation or M6 final acceptance.

Merge policy

Independent review and exact-HEAD CI are now complete. This PR may be merged as a test/CI/roadmap-only contribution after review. It does not complete M6, C12/S13, Trusted Host native provenance or authorize a release. No production Core semantics are changed.


Note

Low Risk
Changes are limited to tests, CI, and documentation; production semantics are unchanged and risk is confined to CI runtime and test maintenance.

Overview
Replaces stale M6 work with a test/CI/roadmap-only update: no production Core or public API changes.

Adds docs/interactive-full-delivery-roadmap-2026-11-11.md — a phased closure ledger (M6 through production) with P/M/N evidence tiers and traceability for T/S/C/N requirements.

Ports M6 cross-process Host integration onto current main via new fixtures under tests/integration/: scripted Host (m6-host.mjs), worker (m6-worker.mjs), broad e2e (m6-e2e.test.mjs), and S07 ledger capacity regression (m6-ledger-boundary.test.mjs). Fixtures use self-contained package.json for default projectRoot discovery plus an explicit projectRoot override test. The worker stays explicitly scripted (protocol evidence, not native Grok/provider provenance).

Wires tests/integration/*.test.mjs into npm test. Extends the Linux host-security-isolation CI job with locked npm ci and FLOWKIT_M6_ISOLATION=1 e2e runs on Node 22/24.

Reviewed by Cursor Bugbot for commit 14a62cb. Bugbot is set up for automated code reviews on this repo. Configure here.

@rockyshi1993 rockyshi1993 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

独立复审记录(非 GitHub APPROVE;仓库权限不允许 PR 作者批准自己的 PR):

  1. 变更文件仅 7 个:CI、package.json、路线台账及 4 个 tests/integration 文件;没有修改 src/、公共 API、Coordinator、SQLite Schema、Program ABI 或生产 Host 语义。
  2. 原失败根因成立:当前 main 的 resolveProjectRoot() 默认向上寻找 package.json;原 M6 临时项目没有 package.json,且 compileInteractive() 未传 projectRoot。
  3. 修复覆盖两个契约:临时项目 package.json 验证默认根目录发现;独立用例验证显式 projectRoot 覆盖。
  4. tests/integration/*.test.mjs 纳入 npm test;Linux Host isolation CI 在隔离 job 安装锁定依赖后,执行真实跨 UID 测试和 M6 e2e。
  5. 测试文件明确声明 worker 是 scripted,不冒充 Grok/Claude/Codex Provider 集成。Linux 跨 UID 结果不冒充 Windows ACL 结果。
  6. exact HEAD 3a1c855 的 CI 42996285329 为 7/7 SUCCESS,四个 OS/Node 单元各 369/369,Linux isolation + M6 e2e 两个 Node 版本各 11/11。当前头部只更新路线状态文档,正在对 exact HEAD 重新运行 CI。

结论:代码范围与测试修复合理,未发现阻断性问题。待当前 exact HEAD CI 42997084061 完成后,可合并为测试/CI/路线文档贡献。

边界:本 PR 不证明真实 Grok Build 原生 JS 工具闭环、模型来源认证、Windows ACL 隔离或 M6 最终验收;不得以此宣布 C12/S13 PASS。

@rockyshi1993
rockyshi1993 marked this pull request as ready for review November 11, 2026 09:50
@rockyshi1993
rockyshi1993 merged commit 9bac8f8 into main Nov 11, 2026
10 checks passed

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 14a62cb. Configure here.

revision:frame.revision,attempt:task.attempt});
if(cut==='after-pending') {
trace('fault-injected',{where:'after-pending',requestId:task.requestId});
process.kill(process.pid,'SIGKILL');

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Crash tests can drop Host traces

Medium Severity

The Host writes crash markers on piped stdout and immediately sends SIGKILL to itself. That signal skips stream flush, so the last lines can remain in the Node user-space buffer and never reach the parent. Recovery tests that require fault-injected or worker-exited can fail even when Pending publish and Store state are correct.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 14a62cb. Configure here.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant