Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
ab5657c
docs(security): propose Trusted Host V2 boundary and direct Grok Buil…
rockyshi1993 Nov 11, 2026
9d01a5a
docs(security): enumerate Trusted Host V2 threat and negative securit…
rockyshi1993 Nov 11, 2026
5b2dba1
docs(security): define Trusted Host V2 OS, IPC and native Grok accept…
rockyshi1993 Nov 11, 2026
b391bbf
docs(security): close review finding on mTLS credential handling and …
rockyshi1993 Nov 11, 2026
5e8532a
docs(security): map bridge credential and tool-call deadlock threats …
rockyshi1993 Nov 11, 2026
335e4de
docs(security): include credential, tool-start and submission deadloc…
rockyshi1993 Nov 11, 2026
a681a5b
docs(security): correct receipt provenance sequencing in design
rockyshi1993 Nov 11, 2026
da4c3e9
docs(security): record bounded adversarial self-review and outstandin…
rockyshi1993 Nov 11, 2026
3765c6d
docs(interactive): update completed Phase 1 and Phase 2 security desi…
rockyshi1993 Nov 11, 2026
c44ccb1
docs(security): close signed-receipt crash window with Host-only outb…
rockyshi1993 Nov 11, 2026
19fe90f
docs(security): add signed-receipt crash and evidence retention threats
rockyshi1993 Nov 11, 2026
3a8679a
docs(security): require durable signed receipt outbox and expiry/cras…
rockyshi1993 Nov 11, 2026
47d96b8
docs(security): record additional outbox and retention review closures
rockyshi1993 Nov 11, 2026
0897a85
docs(security): include all native Grok acceptance cases in one index…
rockyshi1993 Nov 11, 2026
b72c2c3
docs(security): clarify trusted bridge/host TCB and optional distinct…
rockyshi1993 Nov 11, 2026
5b76614
docs(security): record bridge/host trusted-computing-base review reso…
rockyshi1993 Nov 11, 2026
d1c7c76
docs(security): clarify minimum model-vs-host TCB and optional bridge…
rockyshi1993 Nov 11, 2026
5b9e7f4
docs(security): resolve F-01 gate, F-05 pipe defaults, F-07 evidence …
rockyshi1993 Nov 11, 2026
73a1dc6
docs(security): select constrained Grok MCP probe and simplify host T…
rockyshi1993 Nov 11, 2026
99c823a
docs(security): lock request identity and canonical receipt outbox re…
rockyshi1993 Nov 11, 2026
ce71a74
docs(security): clarify optional mTLS and untrusted model-side IPC
rockyshi1993 Nov 11, 2026
427d2eb
docs(security): align threat severity with mandatory security gates a…
rockyshi1993 Nov 11, 2026
0885aa7
docs(security): fix F-01/F-02/F-03/F-04/F-06 acceptance and identifie…
rockyshi1993 Nov 11, 2026
7028a7c
docs(interactive): reconcile Phase 2 review, Phase 3 gates and origin…
rockyshi1993 Nov 11, 2026
45c773f
docs(security): independently verify F-01–F-07 and track resolved vs …
rockyshi1993 Nov 11, 2026
f41a76d
docs(security): remove residual Phase 3 contradiction and order Grok …
rockyshi1993 Nov 11, 2026
51a7599
docs(security): show one trusted Host TCB and distinct model-side too…
rockyshi1993 Nov 11, 2026
165de7b
docs(security): resolve second Grok review F-01 dependency cycle and …
rockyshi1993 Nov 11, 2026
b9a7821
docs(security): scope IPC security tests to actual endpoints and sepa…
rockyshi1993 Nov 11, 2026
0b15b4a
docs(interactive): align Phase 3 gates with OS-only tests and optiona…
rockyshi1993 Nov 11, 2026
997c30b
docs(security): align optional bridge threats and H3 tool probe with …
rockyshi1993 Nov 11, 2026
316e426
docs(security): reconcile Grok round-two F-01/F-R2-01 with closed-loo…
rockyshi1993 Nov 11, 2026
43ad344
docs(security): make Windows listener and Bridge checks conditional o…
rockyshi1993 Nov 11, 2026
fc79d52
docs(interactive): update Phase 2 status after final targeted Grok re…
rockyshi1993 Nov 11, 2026
c1b82b1
docs(security): record Grok final targeted review and close profile c…
rockyshi1993 Nov 11, 2026
2f50dd4
docs(interactive): synchronize Phase 2 status after final Grok review
rockyshi1993 Nov 11, 2026
baf129f
docs(interactive): synchronize Phase 2 status after final Grok review
rockyshi1993 Nov 11, 2026
b9d0c1e
docs(interactive): synchronize Phase 2 status after final Grok review
rockyshi1993 Nov 11, 2026
42961d8
docs(security): record stale Actions queue and exact-head rerun gate
rockyshi1993 Nov 12, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 23 additions & 19 deletions docs/interactive-full-delivery-roadmap-2026-11-11.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,21 @@

**Baseline date:** 2026-11-11 (UTC+8)
**Repository:** `devcodex-labs/flowkit`
**Frozen main:** `ea2bb10893a9be2e5de3561fc9a660a6977ae15c`
**Planning branch:** `fix/m6-current-main-e2e-20261111`
**Historical Phase 0 baseline:** `ea2bb10893a9be2e5de3561fc9a660a6977ae15c`
**Current Phase 2 source baseline:** `9bac8f86347a405efe068f96423ae3e501005061`
**Current design branch:** `design/trusted-host-security-v2-20261111` (historical Phase 0/1 baseline remains immutable)

> This document records the approved end-to-end route from the current M6/P0-A state through P0-B, P1, P2 and production delivery. It is a roadmap and traceability ledger, not evidence that deferred features have been implemented or passed.

## 1. Current baseline

### 1.1 Main and CI

- Main HEAD: `ea2bb10893a9be2e5de3561fc9a660a6977ae15c`.
- Main CI run: [42954859078](https://github.com/devcodex-labs/flowkit/actions/runs/42954859078), completed successfully.
- Current main HEAD after Phase 1: `9bac8f86347a405efe068f96423ae3e501005061`.
- Current main CI: [42998521531](https://github.com/devcodex-labs/flowkit/actions/runs/42998521531), 7/7 jobs successful.
- M1–M5 implementation surfaces and S07 capacity work exist on main. Their presence is not a blanket claim that every M6/native-host gate is passed.
- PR #8, #9 and #10 are merged.
- PR #7 is open Draft, head `e1e15a70356e53401288d393aa7527c6723fe797`, based on an older main snapshot `c873e3edf0f1a78b13178966cdeb408391755170`. Its M6 tests need to be revalidated against current main.
- PR #7 is **closed without merge** as superseded. PR #13 is **merged** into main with current-main M6 tests, correct project-root discovery and successful exact-HEAD CI.
- PR #12 is open Draft, head `c6b42a36050d885a37831cbdf0839428b2052c85`, based on `ea2bb10893a9be2e5de3561fc9a660a6977ae15c`. Its scripted C13–C20 tests and documentation CI passed; this does not pass C12/S13 native-host gates.

### 1.2 Evidence classes
Expand All @@ -31,9 +32,9 @@ Never count P evidence as M or N. Never count a CI replay of recorded model turn

| Phase | Scope | Required exit condition | Current state |
|---|---|---|---|
| 0 | Baseline freeze and traceability | Immutable baseline, full requirement/Finding/test ledger and evidence index | **Complete** — baseline and ledger committed on this branch |
| 1 | M6 current-main test compatibility | PR #7 tests run against frozen current main; no Core semantic change hidden in test repair | **PASS** — replacement PR #13 exact-HEAD CI 7/7; four matrix cells 369/369, Linux isolation/M6 e2e 11/11 on Node 22/24; no production Core change |
| 2 | Trusted Host security design | Approved threat model, OS identity, IPC, key custody, Store ownership and provenance contract | Pending |
| 0 | Baseline freeze and traceability | Immutable baseline, full requirement/Finding/test ledger and evidence index | **Complete** — established in merged PR #13 |
| 1 | M6 current-main test compatibility | PR #7 tests run against frozen current main; no Core semantic change hidden in test repair | **PASS, merged** — PR #13; main CI 7/7; four matrix cells 369/369, Linux isolation/M6 e2e 11/11 on Node 22/24; no production Core change |
| 2 | Trusted Host security design | Approved threat model, OS identity, IPC, key custody, Store ownership and provenance contract | **CONDITIONAL**:第三轮 Grok 定向复核已确认 F-01、F-R2-01 **CLOSED**;F-02/F-04 仍 PARTIAL(后续 PoC/OS 实测),F-07 正式 V0.3/V0.6-R5 原文符合性仍 **BLOCKED**;PR #14 可作为明确标注限制的设计记录候选,尚未合并 |
| 3 | Trusted Host security implementation | Windows and Linux isolation, access-denial tests and secure Host operations pass | Pending |
| 4 | Native Grok Build JS tool bridge | Grok Build itself calls FlowKit JS tools through Pending → model completion → JS submit/resume → Terminal | Pending |
| 5 | M6 live-model complex acceptance | Applicable C01–C24 cases classified and evidenced at P/M/N levels; all M6 blockers closed | Pending |
Expand Down Expand Up @@ -81,21 +82,23 @@ Freeze a Host threat model before implementation:
- Provider-signed evidence may be used if genuinely available, but is not assumed to be the only possible design. Any alternative Host-owned transport must state its exact assurance level and limits.
- Human approval remains unavailable/blocked unless a model-unwritable trusted human decision channel is independently verified.

Deliverables: threat model, trust topology, IPC contract, key custody design, provider/session provenance design, Windows/Linux deployment designs, attack matrix and acceptance criteria. Independent review must close all design findings before Phase 3.
Deliverables: threat model, trust topology, candidate-ingress security contract (with optional authenticated listening IPC only when needed), key custody, provider/session evidence design, Windows/Linux profiles, attack matrix and acceptance gates. Independent review must close all **applicable design-blocking** findings before Phase 3. Missing formal V0.3/V0.6-R5 originals remain an explicit conformance BLOCKED item, not evidence that they never existed; OS capability PoCs can be performed separately, but no final conformance claim can be made without them.

## 6. Phase 3 — Trusted Host security implementation

1. Implement distinct OS identities or an equivalently strong restricted token boundary.
2. Restrict Host private directory, key and SQLite DB/WAL/SHM to the Host principal.
3. Expose only constrained IPC operations with explicit authorization and input/output schemas.
3. Validate all **actual model-candidate ingress paths** with explicit authorization and bounded I/O. Do not introduce a TCP/mTLS/Named Pipe listener just to satisfy a checklist: in a no-listener deployment record `NO_LISTENER` and test the real MCP/anonymous-pipe/tool-input path instead.
4. Ensure the model cannot access raw DB, key, signer, Coordinator or private State.
5. Add Windows ACL and Linux UID/GID integration tests. A test that exits because the platform is unsupported is BLOCKED, not PASS.
6. Test read, write, replace, symlink, path traversal, process spawning, inherited handles/environment, IPC spoofing, replay, wrong tenant and unauthorized API calls.
7. Verify Host can still sign, commit, resume and recover after model access is denied.
8. Record raw OS identity, access-denied evidence, process tree, IPC identity and Store integrity.
9. Repeat after reboot/restart and on the supported Node matrix.

Exit: security tests pass on both supported OS families, with no same-principal bypass. If the actual Grok Build execution environment cannot be isolated from Host secrets, keep native secure-host acceptance BLOCKED and do not expose Host secrets to that model.
Entry: independent Phase 2 security design approved, with frozen OS principals, Host secrets/ACL and no insecure default Node Named Pipe; Grok native tool evidence is **not** required for H3-01/H3-05 OS-only isolation. H3-02 implementation requires only a separately documented Grok tool-registration and signed-before-completion input/timing **capability PoC**, which is **not** a formal NAT-14 PASS.

Exit: **both Windows and Linux** Secure Host Profiles pass their applicable P0 OS/handle/active-ingress/signing/Outbox tests. H3-05 OS-only tests depend only on H3-01; H3-04 adapter integration adds active-ingress and recovery checks later. Without a listening endpoint, prove its absence and test the actual candidate-input mechanism, rather than demanding mTLS. One platform PASS only proves that platform. NAT-14 is officially tested in Phase 4; C12/S13 N remains BLOCKED until native model evidence is complete.

## 7. Phase 4 — Native Grok Build JavaScript bridge

Expand Down Expand Up @@ -132,13 +135,13 @@ Exit: every C item is PASS, FAIL, PARTIAL, BLOCKED or explicitly DEFERRED with o

## 9. Phase 6 — M6 review, P0-A closure and merge

1. Dot independently checks exact code SHA, Program hash, raw native tool events, Pending/response, Host traces, signed statements, SQLite, Journal hash chain and OS evidence.
1. An **independent reviewer** (local Grok Build or another separate reviewer; Dot is not mandatory) checks exact code SHA, Program hash, raw native tool events, Pending/response, Host traces, signed statements, SQLite, Journal hash chain and OS evidence.
2. Run exact-HEAD CI: Ubuntu 24.04 and Windows 2025 × Node 22.13.0 and 24.22.1.
3. Run Linux cross-UID and Windows ACL isolation jobs independently.
4. Run build, npm verify, package/tarball, types, CLI, docs examples, website and Standard regressions.
5. Resolve every M6 blocker and rerun the relevant scenario plus full regression.
6. PR #12 may be merged only as the scripted matrix/docs contribution after its own review; its merge does not pass C12/S13.
7. PR #7 or its current-main replacement may be merged only after M6 integration CI and security gates pass.
7. PR #7 was closed without merging and its current-main replacement PR #13 was merged after independent code review and CI; do not merge it again. Future M6 native-host security evidence remains in PR #14 and follow-up scoped implementation PRs.
8. Do not release a version until P0-A release criteria are explicitly met.

## 10. Phase 7 — P0-B sequential workflow
Expand Down Expand Up @@ -350,11 +353,12 @@ A phase cannot pass by deleting a test, weakening an assertion, changing the evi

## 15. Current next actions

1. Phase 0 baseline/traceability is complete.
2. PR #7's M6 integration tests were ported onto current main in replacement PR #13.
3. The fixture now covers default nearest-package discovery and explicit `projectRoot` override.
4. Exact HEAD `df1eec669d5f46a04f40718abf16fe111db6caf3` passed CI run [42997084061](https://github.com/devcodex-labs/flowkit/actions/runs/42997084061): 7/7 jobs; Ubuntu/Windows × Node 22/24 each passed 369/369 tests; Linux OS-user isolation plus M6 e2e passed 11/11 on Node 22 and Node 24.
5. Independent code review found no production Core changes. PR #13 is ready for review/merge as test infrastructure only; this does not close native C12/S13 or M6 final acceptance.
6. After PR #13 is merged, close/supersede stale PR #7 without merging its old branch, then begin Phase 2 Trusted Host security design.
1. Phase 0/1 **complete**: PR #13 merged to main `9bac8f86347a405efe068f96423ae3e501005061`; old PR #7 closed unmerged.
2. Main CI [42998521531](https://github.com/devcodex-labs/flowkit/actions/runs/42998521531): 7/7 successful; Ubuntu/Windows × Node 22/24 each 369/369; Linux OS isolation + M6 11/11 on both Node versions.
3. Phase 2 security design record (still Draft/Conditional): [Trusted Host V2](./interactive-trusted-host-security-v2-design.md), [threat model](./interactive-trusted-host-security-v2-threat-model.md), [acceptance matrix](./interactive-trusted-host-security-v2-acceptance.md), [review ledger](./interactive-trusted-host-security-v2-review.md). Third-round Grok review closed F-01/F-R2-01; F-02/F-04 remain PARTIAL and F-07 remains BLOCKED.
4. Three rounds of Grok Build independent review have been completed, including the final targeted review of F-01/F-R2-01. Phase 2 is **not yet frozen**: F-02 native tool binding, F-04 cross-principal handle isolation and F-07 formal contract provenance remain open/BLOCKED. Draft/CI success is not a substitute for native Host security acceptance or a professional third-party security certification.
5. Then implement OS isolation, trusted bridge, direct Grok Build tool loop, real-model edge cases and Phase 6 M6 closure. PR #12 remains Draft until its own scoped review.

**Formal contract source caveat:** Historical FlowKit requirement V0.3 and technical design V0.6-R5 are cited in previous handoffs, but their full immutable bodies/SHA-256 are not presently available to this PR's independent reviewer. Conformance to those documents remains **BLOCKED** until the exact originals can be independently read and hashed; roadmap IDs cannot replace official text.

**No direct main modification or release is authorized. Merge only through a reviewed PR after exact-HEAD CI. This test/roadmap PR does not authorize production semantic changes or declare M6 complete.**
Loading