Skip to content

feat(native): guide first-use runtime setup - #794

Merged
roodboi merged 15 commits into
nextfrom
codex/hack-2193-native-setup
Nov 15, 2026
Merged

roodboi merged 15 commits into
nextfrom
codex/hack-2193-native-setup

Conversation

@roodboi

@roodboi roodboi commented Nov 13, 2026 •

Copy link
Copy Markdown
Contributor

A fresh native home now stops hack up before launching a detached owner and explains how to prepare the runtime. hack native setup exposes the existing verified, resumable installer through the same frontend, without a second binary or home argument.

  • Show pinned file sizes, SHA-256 hashes, cache and destination before one confirmation. Noninteractive downloads require --accept-downloads; --json passes through the runtime result unchanged. No project environment or credentials reach setup.
  • Report installation separately as runtime_setup in native preflight text and JSON. Project readiness also requires a ready installation. Missing or resumable homes get E_NATIVE_SETUP_REQUIRED; incompatible, unsafe and unavailable homes retain distinct diagnostics.
  • Offer setup from interactive native up, recheck it once, and continue only after success. Interruptions propagate without starting anything and retain resumable inputs.
  • Default manual bundles to $HACK_HOME/native-runtime or ~/.hack/native-runtime. Explicit HACK_NATIVE_HOME wins for manual bundles. Managed hack-next keeps its receipt-owned home and clearly refuses a differing launch override; administration remains independent of ambient overrides. Explicit native setup selects that same home even from a Compose shell.
  • Keep ordinary inspection lock-free and cheap. Startup still verifies content before execution. A separate existing-lock quiescence check allows setup-only managed homes to upgrade without mistaking an in-progress setup/start for idle.

Native first use

Diagram source.

Validation: 299 focused Bun tests passed across 17 files, with 16 existing skips; local-server setup transition, actual installed-binary absent-home checks, private-PTY consent/interruption, JSON byte parity, launcher/home parity, and downstream CLI compatibility. Default Rust: 1,199 passed / 39 ignored; all features: 1,500 passed / 49 ignored. Typecheck, lint/privacy, Clippy, current CLI build and all eight compiled native-plan checks passed. Persistent Opus review is clean. Full hosted Linux checks remain the exact-head suite gate.

Mac acceptance remains with the lead: on a fresh selected home, run hack native setup, then hack doctor --native-preflight --json and hack up -d on a preflight-ready project, using the same installed candidate frontend throughout.

Compatibility: older executors cannot prove setup-only quiescence. Before upgrading an old version that was set up but never started, finish its setup and use its selected frontend to start a project and then stop it until runtime status is stopped. Unknown state still refuses; no receipts are deleted. Direct HTTPS is required by frontend setup because proxy variables are not inherited; the complete offline input form remains available. Improving ps/down/logs diagnostics on a wholly absent home is outside this change.

Fixes HACK-2193. The shared versioned installation inspection is available to HACK-2189.


Start Proof
Open in [code]smith · Need help on this PR? Tag @codesmith-bot with what you need.

Expose verified resumable setup through the frontend, choose a private home
by default, and share read-only installation admission between preflight
and native up. Preserve explicit consent and managed upgrade quiescence.

Fixes HACK-2193.
@vercel

vercel Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
hack-docs Ready Ready Preview Nov 14, 2026 11:03am UTC

Request Review

@linear-code

linear-code Bot commented Nov 13, 2026

Copy link
Copy Markdown

HACK-2193

roodboi commented Nov 13, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 13, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-14T11:06:35.886186Z 3cda82b Manual request
🔒 Security Review ✅ Completed 2026-11-14T11:08:30.937711Z 3cda82b Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Hooray!

Reviewed commit: a7dd39502f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: a7dd39502f

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Answer the read-only setup inspection before mocked project startup, and
expect the earlier closed refusal when the executor is unavailable.
Preserve metadata, fingerprint, and no-effects assertions.

roodboi commented Nov 13, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

Head: 031e154924c8fa571c2dda7b8d6656bcb3e1c7c2. The three remaining startup test fixtures now account for the read-only setup inspection. Production code is unchanged; metadata, fingerprint ownership and no-effects assertions remain intact. All 33 tests in those files pass locally, along with typecheck, lint/privacy and the committed-history secret scan. The persistent Opus reviewer cleared this delta. Hosted Linux checks must pass on this head before readiness.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep them coming!

Reviewed commit: 031e154924

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 031e154924

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

roodboi commented Nov 13, 2026

Copy link
Copy Markdown
Contributor Author

Ready for lead: 031e154924c8fa571c2dda7b8d6656bcb3e1c7c2.

Persistent Opus review is CLEAN; Codex code and security receipts are clean on this head, with zero unresolved bot threads. All selected Linux gates passed in run 43504573143: unit shards 4–8, Candidate core, both config compiler hosts, test focus, process lifetime, state models and secret scan. Local evidence is in the PR description.

Hosted jobs still pending: macOS unit shards 1/8 and 2/8. macOS Candidate core/config compiler and Docker checks have passed.

Known separate macOS failure: shard 3/8, tests/local-network-hint.test.ts → open --json keeps the hint out of the JSON payload. It expects only url, but receives the new dns and hint fields from #791 (2c1f665157e8645f79fe09812aca84448552e07a). The job checked out merge 63ff524 (this head into 2c1f665). This PR changes neither that assertion nor the open/DNS path; the batch needs its separate assertion update.

The review checker reports BLOCKED at 031e154924: 0 unaddressed bot finding(s), 1 overlapping base file(s) (src/commands/project.ts). Freshness is deferred to the lead's combined-tree validation under the batch policy.

Lead Mac acceptance: fresh selected home → hack native setup → hack doctor --native-preflight --json → hack up -d, through the same installed candidate frontend with no home argument. The old-executor setup-only upgrade workaround is documented in the PR description.

roodboi commented Nov 13, 2026

Copy link
Copy Markdown
Contributor Author

Merged next 7f9548c normally into this branch; new head cf72083 (parents 031e154 and 7f9548c). The sole conflict was the native reference setup paragraph. It keeps #792's shorter start-page structure. The new v5 native start and linked setup/recovery page now use the same frontend's native setup, explain consent/default versus managed homes, and carry the older setup-only-home upgrade workaround. Next.16 versus intended next.17 behavior is explicit. No first-use implementation was changed by the resolution; the persistent reviewer verified the auto-merge and reviewed the docs fix round clean.

Merge-tree validation: 311 focused Bun passes/16 existing skips/0 failures across 17 setup/frontend/installer/preflight and compatibility files; build, all eight compiled CLI plan checks, privacy, full docs link/anchor/navigation/export checks, normal commit hooks and reachable-head Gitleaks passed. Local root typecheck/lint scripts and dependency postinstall were blocked by a host toolchain trust setting; that guard was preserved, so exact-head hosted CI must cover those gates. Rust implementation is unchanged from the previously qualified head.

Known separate failures remain the local-network-hint assertion from #791 (fix #796) and HACK-2184's compose-foreground-signal flake, per the lead. Exact-head CI and bot re-review are pending; a fresh Ready for lead note will follow those checks.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Swish!

Reviewed commit: cf7208326e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: cf7208326e

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

roodboi commented Nov 13, 2026

Copy link
Copy Markdown
Contributor Author

Fixed the rendered docs anchor failure in 2ee4a95 (two docs only). The start page's new home-selection link had mapped to the published pinned installer snapshot, which lacks the new root-guide heading. The guidance now lives in the versioned setup page under #manual-homes, and the older-home recovery reference uses an existing snapshot anchor. No code changed.

Verified with the full production docs build and actual loopback HTTP smoke: 97 docs pages, 82 served diagram SVGs, and all 215 recipe links/anchors pass. The same persistent reviewer checked the rendered-source mapping and is clean. Docs check, privacy, normal commit hooks and reachable-head Gitleaks pass. The task-owned smoke server is stopped. The normal merge of next is retained, and first-use code is unchanged from the merge's 311 passing focused tests. Exact-head CI/re-review are pending before a fresh Ready for lead note.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Chef's kiss.

Reviewed commit: 2ee4a95e5e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 2ee4a95e5e

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

roodboi commented Nov 13, 2026

Copy link
Copy Markdown
Contributor Author

Merged next at b1e123bb7f73b6dcea468498f0f2b3d46e195d71 normally; new head is a683dce84c7719d798704e8f6cbe7e6b360bf21f (parents 2ee4a95e and b1e123bb). This carries #796. The persistent Opus reviewer found the merge clean and confirmed the setup dispatch, early gate, managed receipt-home rule and setup-only quiescence survive the upstream installer/status changes. Both documentation notes were addressed; the v5 start page still reaches the frontend setup guidance.

Merged-tree local evidence: 327 focused Bun passes, 16 existing skips, zero failures; Rust default 1,204 passes/39 ignored and all features 1,508 passes/49 ignored; rustfmt, both Clippy configurations, typecheck, check/privacy, build, all eight compiled native-plan checks, docs checks, production docs build and rendered HTTP smoke passed. The smoke checked 97 pages and 215 local links/anchors. Reachable-head Gitleaks passed.

Exact-head hosted checks and bot review are pending. No final full local Bun-suite pass is claimed. Linux PR shards do not qualify the macOS-specific #796 regression, and real Mac setup → detached project start remains the lead's acceptance gate.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🚀

Reviewed commit: a683dce84c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: a683dce84c

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

Fixed the lead's macOS installed-manager regression in ea4bcf054d098236421eb7168de05a20a21822a9, which normally merges next at bb6a7d17716140a738a97fc2863a7a678caf17eb.

The fixture always supplied HACK_NATIVE_HOME=/foreign. HACK-2193's approved managed-launcher contract now refuses a different native home so manager upgrades can find and quiesce the runtime. The fixture expected the previous silent replacement. Product behavior is unchanged by this fix. The test now asserts refusal through both compiled manager and installed launcher, accepts absent and matching overrides, and runs the existing native success/exit/signal checks without a conflicting override. Bootstrap, manager administration and Compose still receive the foreign environment, retaining their isolation checks.

The same persistent Opus reviewer cleared both the fixture correction and incoming merge. Local checks: 173 passes/one macOS-only skip across ten focused files; typecheck, lint/privacy, build, all eight compiled CLI checks and reachable-head Gitleaks passed. The skipped installed-manager test is not local proof.

Dispatched full CI once on this exact head: 43535090333. It includes the macOS shards and every installer/launcher/native-home file found using PLATFORM_SENSITIVE_SOURCE with transitive test-helper matching (25 files). The portable bundle-launcher test also runs in the dispatch's Linux pool. Before another readiness note, I will verify actual macOS per-file results, including a non-skipped installed-manager pass; the ordinary five Linux PR shards are insufficient.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 👍

Reviewed commit: ea4bcf054d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: ea4bcf054d

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep them coming!

Reviewed commit: 49cd363ea1

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

Final acceptance-fixture head: 857d2a0d7ae9287686c06ed1bc7f930baad1561a.

The persistent reviewer accepted the activity-journal correction and requested one more precision fix: the missing-executor case must identify its actual setup-inspection refusal. It now requires both E_STARTUP_INCOMPLETE and detail.runtime_setup: "unavailable", and no longer claims to reach detached admission or read the invalid authored input. Existing exit/output/state/journal assertions remain. Focused compiled env-plan acceptance passes.

Same persistent reviewer re-reviewed the merge and all fixture deltas: CLEAN, nothing left to fix. The full eight-script compiled gate passed at the preceding fixture head; only this strengthened assertion/comment changed afterward. Root typecheck, lint/privacy and wiring checks passed. No new Mac acceptance is claimed. Waiting on exact-head hosted checks before Ready.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. More of your lovely PRs please.

Reviewed commit: 857d2a0d7a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 857d2a0d7a

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

All jobs passed at 857d2a0d, including all eight test shards, all four Docker shards, macOS/Linux candidate core, all three compiler platforms, models and process-lifetime checks. The installed-manager test explicitly passed on macOS: 1 test, 61 assertions, 0 failures. Code/security reviews and the persistent reviewer were clean.

At settlement, next had advanced to 5965b234c0966a0f9bfd538ef81f03d7de983aa4; the only overlapping file was the generated CLI reference. Refreshed with a conflict-free normal merge at adc1b04b011f2316a4a9878490b96e3467157608. Regenerating the CLI reference produced no extra difference. No #794 product or fixture changes were needed.

Root typecheck, all 40 upgrade-check tests, and docs checks passed on the refreshed merge. The same persistent reviewer is checking the merge; hosted checks must settle at this new head before the Ready note. The macOS evidence above applies to 857d2a0d, not this refresh.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Bravo.

Reviewed commit: adc1b04b01

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: adc1b04b01

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

Resolved the new next conflicts with a normal merge at b6fdb23ae4e578c459d6d767578dfea980a4e187 (incoming 5002cf87bb50686b17ceae8a4c835f524ee1b3a5).

Both branches had independently fixed the same acceptance-fixture assumptions. The six plan scripts retain the reviewed helper, which covers upstream's exact journal-only/no-state checks and additionally checks failed record counts and privacy. The download fixture uses upstream's bounded wait and cancellation assertions, with the existing archive-on-disk equality check retained. No product policy changes were added.

Validation passed: root typecheck; 56 upgrade/download tests; 15 cleanup/action-classification tests; all eight compiled-bundle CLI checks; root lint/privacy, targeted lint and docs checks. CLI reference regeneration produced no extra diff. The same persistent reviewer is checking merge provenance. Exact-head CI and bot reviews must settle before Ready.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Nice work!

Reviewed commit: b6fdb23ae4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: b6fdb23ae4

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

Resolved the next conflict with a normal merge at 3cda82bd4f7dd107e97e5e85092de8f240e59c8b, including next at 1f761ac565a8bdec74d8005da7b35439d9b7e8e4.

Adopted #836's tested shared plan-home helper and removed this branch's duplicate. Retained the privacy assertions and the explicit setup-unavailable reason in the env acceptance case. Upstream's newline/torn-journal checks and negative controls remain; an additional sentinel regression verifies the retained privacy check. No product changes were added.

Root typecheck, 57 home/upgrade tests, all eight compiled CLI checks, lint/privacy and docs checks pass. Same persistent reviewer is checking this merge. Hosted CI and bot reviews are pending before the final Ready note; no push will follow that note.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit: 3cda82bd4f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 3cda82bd4f

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

Ready for lead: 3cda82bd4f7dd107e97e5e85092de8f240e59c8b

Normal merges include next at 1f761ac565. The native-config-only regression uses #825's checkout shape, and the native guide preserves #781's env-file behavior and #824's tmux-only sessions. The final shared-helper merge retains upstream's exact state/journal checks and our privacy assertions.

Both Mac installer-fixture failures are fixed: successful native launches use the receipt-owned home, and the quiescence fake reads its private HOME status file because those children intentionally receive only system variables. Rejection, signature, exit-code and signal assertions remain intact; no product refusal was relaxed.

Exact-head CI passed on attempt 1: all eight test shards, all four Docker shards, macOS/Linux candidate core, all three compiler platforms, runtime models/images, process-lifetime, docs and secret scan. The macOS installed-manager test explicitly passed: 1 test, 61 assertions, 0 failures (job). No known-flake reruns were needed. Local root typecheck, 57 focused tests, all eight compiled CLI gates, lint/privacy and docs checks passed.

Same persistent Opus reviewer: CLEAN through the final merge. Codex code and security reviews are clean at this head. computer pr review-status: CLEAR at 3cda82bd4f, with no unresolved bot threads or overlapping base changes. GitHub reports mergeable.

Ready for the lead's Mac acceptance and planned merge after publication. #795 can follow. No push will follow this Ready note; no merge was performed here.

@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

Lead note: verified on the Mac batch tree at this head (next 8e7242d + #794 + #840): typecheck, selected test files (the four native-authored files pass in sequence, HACK-2219), the nine relocated acceptance scripts, Rust 1,809 passed, and real-VM smoke, webdb and first-use setup from an empty home. next is frozen as the next.17 candidate while its full release CI run finishes; this merges right after publish if the head has not moved.

🤖 Generated with Claude Code

roodboi added a commit that referenced this pull request Nov 14, 2026
…ey-source refusal

With first-use setup guidance (#794), native start also runs
'runtime setup inspect --json' before refusing. The test now accepts only
'project plan' and that read-only inspection after start, and still fails
on any other runtime call such as a pool, file-delivery or start request.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@roodboi
roodboi merged commit e47681e into next Nov 15, 2026
30 checks passed
@roodboi
roodboi deleted the codex/hack-2193-native-setup branch November 15, 2026 02:17
roodboi added a commit that referenced this pull request Nov 15, 2026
Conflicts:
- src/commands/env.ts: keep this branch's aliased migration import and
  next's ProjectEnvKeyState (#848).
- scripts/check-native-*-plan-cli.ts: keep this branch's HOME fingerprint
  and refusal-activity gates; the env plan script also keeps next's
  setup-unavailable detached refusal (#794). The shared refusal helper now
  forwards the private inputs to next's assertNativePlanHome check.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
roodboi added a commit that referenced this pull request Nov 15, 2026
`native setup --json` (from #794) passes the runtime result through as a
bare `{status, files, probe}` object. Record that shape so the inventory
matches the command definitions; it does not follow the envelope rule.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
roodboi added a commit that referenced this pull request Nov 15, 2026
Native preflight hid the offending service and field behind generic
graph refusals, and counted missing shared-source consent as a
configuration blocker. This adds fixed, value-free reasons and remedies
from the existing runtime admission checks.

| Before | After |
| --- | --- |
| One graph subset or route requirements sentence | Separate
service/field findings for each unmet requirement |
| “The reviewed graph contains blocking diagnostics” | The underlying
field diagnostics, without the duplicate generic finding |
| Opaque dependency-cache or foreign-platform refusal | Named services
and offending cache labels or platform field |
| Consent mixed into blockers | Report v2 separates `consent_needed`;
text and JSON keep all discovered blockers regardless of consent |

Admission predicates and first-error precedence are preserved. No native
feature is enabled. Malformed detail batches fall back to a closed
refusal; repeated findings are deduplicated. All structured runtime
failures have a 1 MiB bound, including authored `up` planning; startup
errors rise from 256 KiB to 1 MiB while startup-log schema bounds and
the explicit log-decoding gate remain unchanged. Authored startup
preserves validated service/field findings, and per-service
resource-budget refusals identify the service. Structurally invalid
input may still stop review early.

Tracks [HACK-2192](https://linear.app/hackdance/issue/HACK-2192),
diagnostics-only first unit. Release intent: `fix`. JSON consumers must
accept report version 2 and use `ready` for the verdict.

The frozen `next` integration preserves both configuration-refusal and
interactive-session diagnostics, plus the extracted file-only preflight
collector. `hack upgrade check` now counts missing consent separately
and requires both zero blockers and zero consent items before describing
a project as native-ready. Its finding remains informational, so Compose
is unaffected.

Validation includes the real CLI consent projection, focused
refusal/transport/startup tests, default and all-feature Rust gates,
native guest compilation, compiled CLI/compiler acceptance, typecheck,
lint, privacy and docs checks. Exact-head outcomes and hosted/bot status
are recorded in the integration comment. Linux results do not qualify
deferred macOS fixtures; no additional Mac jobs are requested by this
integration.

This PR follows #794. Final Ready waits for the lead's #794 merge
confirmation, any required normal merge and resolution review, and the
resulting head's checks. The next.17 freeze and lead merge authority
remain in force.

<!-- codesmith:footer -->
---
<a
href="https://backend.blacksmith.sh/track/run-proof?expires=1797196625&installation_model_id=17053&pr_number=795&ref=codesmith_pr_footer&repository=hack-dance%2Fhack&return_to=https%3A%2F%2Fgithub.com%2Fhack-dance%2Fhack%2Fpull%2F795&variant=proof_this_pr&signature=d5db7302585bce257be5cba5e16b510fa6e2ea79a278300fb586760bf92d338f"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://pr-comments-assets.blacksmith.sh/codesmith/proof-proof-this-pr-dark.svg"><source
media="(prefers-color-scheme: light)"
srcset="https://pr-comments-assets.blacksmith.sh/codesmith/proof-proof-this-pr-light.svg"><img
alt="Proof this PR"
src="https://pr-comments-assets.blacksmith.sh/codesmith/proof-proof-this-pr-dark-3x.png"
width="121" height="28"></picture></a>
<sup><a
href="https://app.blacksmith.sh/hack-dance/codesmith/hack/pr/795?autoLogin=true&ref=codesmith_pr_footer">Open
in [code]smith</a> · Need help on this PR? Tag
<code>@codesmith-bot</code> with what you need.</sup>

<!-- codesmith:autofix:disabled -->
<!-- /codesmith:footer -->

---------

Co-authored-by: Kit <344842+roodboi@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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