Skip to content

0.10.2 candidate: endpoint-scoped catalog, tiered pricing and release verification - #6968

Merged
Hmbown merged 40 commits into
mainfrom
wip/0.10.2-6396-handoff-20261012
Oct 16, 2026
Merged

Hmbown merged 40 commits into
mainfrom
wip/0.10.2-6396-handoff-20261012

Conversation

@Hmbown

@Hmbown Hmbown commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

This 0.10.2 candidate makes model admission, catalog facts and exact tiered pricing specific to the selected endpoint. It repairs Windows command approval/input/recovery, Claude login state, temporary quota-worded rate limits and oversized-session diagnostics, and integrates Runtime worker ownership and late completion receipts. 0.10.2 has not shipped.

Current candidate and intake

Candidate head: 9985a6f0fa, tree 4a27e34712f12d5ac44a2d2c3f4802307a4f1747. This ancestry refresh merges the reviewed stacked contributor head deb491c4 into a42813ff. The five shared documentation/credit conflicts retain the exact candidate blobs; the entire candidate source tree is byte-for-byte unchanged. Both original contributor histories and credits are preserved.

The original contributor PRs must still land as themselves before this candidate's conditional squash. The candidate now contains their current source heads as ancestors. #6989 carries #6985’s source for parallel qualification of their combined tree; merge order remains #6985, then #6989, then this candidate. Neither original PR is claimed merged by this update.

Contributor PR Current PR head Included contribution and limits
#6985, @henrikdukefoss 9f5ed8ebb674d12afb7276ce0bbf4519444c7c1d Standard Compute descriptor, authenticated-discovery implementation and Unknown billing; original source ancestor 93132146 retained. Fresh checks pending. No live provider or commercial qualification.
#6989, @shenjackyuanjie deb491c44bb4bcf9b4dbfb0b9c5b3cde601a17ef OHOS Ninja selection and ungated CLI SHA-256 helper; original source ancestor c59004af retained. Windows clipboard gate failed before native tests; exact startup cause is unknown and a bounded same-head retry is held until the workflow finishes. This is an intake dependency failure, not a result of this candidate’s separate native job. Linux-SDK checking is not Windows-host SDK or OHOS-device acceptance.

#6393 remains excluded. Its contributor returned it to draft for unpublished navigation/measurement work; scope clarification is pending. Existing historical Aditya credit remains intact; no new #6393 feature or release claim was imported.

Current qualification

The 51c00f23 repair addresses the inherited Windows metric-fixture failure observed on #6989's prior head and the mobile smoke pipeline failure on candidate 282e1948. The metric fixture uses the existing test-only host-capability pin across platforms; the smoke assertions avoid an upstream broken pipe under pipefail. Production host discovery, catalog budgets, equality assertions and test deadlines remain unchanged. Original failure logs remain attached to their exact heads.

The three-file repair was validated locally on macOS before committing 51c00f23: 2 existing focused Rust tests passed, the complete extracted tool catalog equals the existing budget with no identity/cap changes, the production CLI binary built, 9 mobile HTTP smoke assertions passed, and npm test && npm run check:web passed 1,312 tests with 0 failures and 7 skipped (540 Node + 772 Vitest). The first isolated smoke launch exceeded macOS's socket-path limit before HTTP assertions; correcting only the artifact launcher then passed all 9 assertions with the same compiled binary. Both attempts are retained. These are focused local results on the main repair, not full native qualification of this combined candidate head.

Fresh candidate checks are pending on 9985a6f0fa. All three native suites and required gates must complete for the refreshed head before merge admission. The immediately preceding a42813ff run, on the identical source tree, completed all 9 mobile HTTP smoke assertions and 772 Web Frontend tests successfully. Those receipts retain their actual old-head identity; the ancestry update does not convert them into fresh-head status checks. No overall candidate PASS is claimed, and local macOS checks do not replace hosted Windows or packaged acceptance.

Prior source-specific evidence remains available: candidate 282e1948 passed local npm/check:web (1,312 passed, 7 skipped), all 55 Runtime metrics exactly at budget and the production CLI compile check. Its hosted Lint also passed the actual Runtime/persistence gates. Those results retain their original source identity; the full 55-metric measurement was not repeated as part of 51c00f23's focused repair. Earlier fe7e1fc7 full native and clipboard receipts likewise qualify that earlier head only.

The retained source review found no Rust merge conflicts; candidate implementation, contributor changes, Engine execution-ID/input documentation and all 72 generated feature rows are preserved. macOS LLVM setup and candidate debug-profile settings remain. Windows startup diagnostics do not establish a startup cause or fix. Actual Windows 10 1607 startup/Native-host acceptance remains unverified; the release wording is limited to dynamic API lookup and the unsupported LPAC result.

CodeQL alerts #562–565 remain open and undismissed. The four reported function bodies were rechecked against the current candidate source tree and are byte-identical to the earlier bounded static triage. That counterevidence did not justify a source repair; it is not exhaustive security acceptance or a fresh hosted CodeQL analysis.

Carried changes and contributor credit

Eight original PRs merged during this takeover: #6979, #6982, #6984, #6983, #6873, #6917, #6965 and #6807. The latter four retain ancestry for already-carried or explicitly superseded source. Pet reconciliation #6807 leaves main's source tree unchanged, preserves shared Stage/mode controls and supersedes the old unconditional override; skipped native jobs provide no new native/default-parity proof. All source branches are retained.

Remaining release gates

  1. Complete the remaining approved intake on each contributor's own PR, reconcile any subsequent accepted intake, and freeze the resulting source. Complete exact-head CI and fresh merge/dependent-PR checks before the conditional squash. Preserve all source branches and return the canonical checkout to main.
  2. Qualify the final main SHA with full manual CI and a nonpublishing RC: seven targets, 34 baseline assets, the RC's own parity results, digests/checksums and Windows import sidecars. No final-source RC is established.
  3. Run the strict clean-source 29-crate no-upload preflight and archive/VCS audit at that final SHA. Historical package receipts cover earlier sources only. codewhale-ratatui 0.1.2 is already published; do not republish it.
  4. Complete actual final Windows native/archive/npm/NSIS installation, embedded-plugin and generated-uninstaller checks, VC dependency closure and packaged/native-app owner recovery. Actual x64 Windows 10 1607 acceptance or an explicit founder decision remains required.
  5. Resolve final-source security coverage and alert disposition. Claude's independent-state/input repair has synthetic malformed-input proof, not a successful issuer grant; registration/client identity and release visibility remain founder/external decisions. 0.10.2: repair ChatGPT sign-in rejected by unsupported originator parameter #6925 login and 0.10.2: every Bash/shell operation Codewhale starts or tracks is inspectable and stoppable #6931 terminal journeys remain separate acceptance work.
  6. Retain the remaining real-session resume/fork, native recovery, IME/preedit and long-running scroll limits (codewhale resume refuses any session whose saved history still holds a raw sub-agent handoff — the canonical acknowledgement compares the Engine-restored messages with the saved document #6954, 未适配中文输入法 #2323, After running for a long time, TUI scrolling becomes laggy, like jelly. #6652). Issues close on release or explicit direction. Runtime API terminal contract: input attribution, restart-safe identity, Windows ConPTY #6160 ConPTY and unrelated research are not release promises.

The founder's conditional squash approval does not authorize tagging, package/release publication or deployment. Latest public release remains v0.10.1. Ownership and evidence are on CW-6439.

Windows reports #6986 (paste), #6987 (shell binding) and #6981 (compaction/busy state) remain open. The first two have relevant source fixes already in v0.10.1; reporter-equivalent and packaged acceptance remain distinct. No issue-specific reproduction or fix for #6981 is established. The current clipboard fixture does not cover raw-key fallback, trailing blank lines, Windows 10 1607, ARM64 or installers. Real-session resume/fork, IME/preedit, long-running scroll and login journeys remain acceptance work.

Refs #6396

— Written by GPT-6 (AI agent) on behalf of the maintainers.

Update 2026-10-16 03:45 UTC — head ba01538 (Claude Opus 5.5, after GPT-6's session ended)

— Written by Claude Opus 5.5 (AI agent) on behalf of the maintainers.

Update 04:10 UTC: head 704d435 merges main again to bring in b5e270b, the TUI fix that accepts MCP status from a replacement engine. It overlapped three candidate files; the merge was textually clean, and no call site uses the old spawn_tui_engine signature.

  • clippy: clean.
  • Focused nextest (MCP, respawn, provider and workspace switch, session state, offline queue, toasts): 667/667.
  • npm: 540 passed, 7 skipped, plus 772 Vitest. check:web passed.

Engine main is frozen until this squash, so the squash tree equals this head's tree.

— Claude Opus 5.5 (AI agent)

CodeWhale Bot and others added 7 commits October 12, 2026 18:20
…ERGE

Handoff snapshot for cloud takeover. Endpoint-scoped catalog facts, exact tiered pricing, regenerated models.dev seed (2026-10-12), plus fixes for the 21 full-suite failures it introduced (reasoning ladders, tier cache rates, usage breakdowns, aggregator suffix match, status baseline).

Evidence at snapshot: fmt/check-versions/locale/provider/dead-code clean; tui pricing 97 passed, models_dev 21 passed, feature_registry 2 passed, cargo check -p codewhale-cli clean; focused 36/36 pass. Known red: codewhale-config 797 passed, 2 failed (openrouter_custom_endpoint_preserves_qwen37_alias, resolver_direct_owned_row_match_survives_casing_mismatch — constrain the new suffix match). Full TUI suite not yet rerun after fixes. Slice 2 notes, PR landings, and crate-size gate still outstanding. Stop at ready-to-tag; no tag/publish authorized here.

Refs #6396
…t endpoints

The #6396 handoff added a suffix match in RouteResolver::scope_selector so a
bare saved selector (`deepseek-v4-pro`) resolves to the sole provider-owned
namespaced wire id (`deepseek/deepseek-v4-pro`). It ran for every provider
class, so it also rewrote selectors on custom endpoints (which classify as
LocalOrCustom and must pass the caller's id through) and pre-empted the
StrictDirect casefold match on Z.ai/DeepSeek.

The match now applies only when the class is Aggregator. A custom base URL
already classifies as LocalOrCustom, so custom endpoints keep bare
pass-through, and StrictDirect keeps its casefold behavior.

Evidence (non-root user, scripts/with-hermetic-test-home.sh, RUST_MIN_STACK=8 MiB):
- cargo test -p codewhale-config --lib --locked:
  test result: ok. 801 passed; 0 failed; 1 ignored
  (was 797 passed; 2 failed at the handoff: openrouter_custom_endpoint_
  preserves_qwen37_alias, resolver_direct_owned_row_match_survives_casing_mismatch)
- cargo test -p codewhale-config --locked: configured_models 9 passed,
  doctests 1 passed
- As root, private_directory::endpoint_admission_refuses_linked_component_...
  and xai_credentials::unix_store_rejects_symlinked_root_component_... fail;
  the same binary passes both as a non-root user. Environment, not code.

Refs #6396

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YCbYZQhRvzf3jQZA1cNhcP
…tence

CHANGELOG 0.10.2 (root and the synced crates/tui copy stay identical):
- Date 2026-10-10 -> 2026-10-13.
- Added: `codewhale account computers files` (416e2e7); GET /v1/goals with
  orphan omission and status-bound cursors (d8fba1e, 25046c0); approval
  history target/summary/standing_rule (826020f, 72a5eaf); automation
  revision preconditions and Idempotency-Key (774689a, bd2a7b4).
- Changed: Full Access skips the Auto-Review floor (bdcc8cf); file_search
  default-active (#6934); Runtime session grants persist and resume only on an
  authenticated thread resume (e537df5).
- Fixed: live /network allow|deny (#6928) and the authority fold that keeps a
  managed or Fleet denial from widening (0379673, 5a2fa01); the
  #6553-#6560 audit fixes (4e35b30).
- Known limits: Computer Use preview qualification (87cdaea); heuristic
  approval-history redaction.

docs/features.toml `since`: the rows whose code first shipped in v0.10.1
(chatgpt-plan-sign-in, orcarouter-sign-in, plugin-oauth-providers,
profile-constitution: each row's introducing commit is an ancestor of
v0.10.1) say 0.10.1; account-computer-files, claude-plan-sign-in and
plugin-shell-install say 0.10.2. merch-interest stays "unreleased": it is a
community-website feature with no release surface.

docs/RUNTIME_API.md and its zh_hans mirror said session grants live in memory
and a restart forgets them. Since e537df5 they are stored in
approval_grants.json and stay suspended after a restart until an
authenticated resume; an unreadable store holds no grants.

web/data/*.generated.json regenerated with web/scripts/derive-facts.mjs.

Evidence:
- scripts/release/check-versions.sh and --require-dated-release: "Feature
  release-note receipts OK: 8 linked issue reference(s) checked in
  v0.10.1..HEAD." / "Version state OK: workspace=0.10.2, npm=0.10.2,
  npm-binary=0.10.2, lockfile in sync."
- scripts/sync-changelog.sh --check clean; 0.10.2 sections diff identical.
- node web/scripts/check-facts.mjs: OK; git diff --check clean.

Refs #6396

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YCbYZQhRvzf3jQZA1cNhcP
The #6396 seed (models.dev, fetched 2026-10-12) dropped the `toggle` option
from Moonshot `kimi-k3`: the bundled row now says K3 is always-thinking
(low/high/max). normalize_for_route clamps against that provider-wide row on
every route that has no exact-route row, so a Moonshot provider pointed at a
custom gateway turned the user's Off into the catalog default (High).
reasoning_effort_normalizes_each_exact_k3_route_without_neighbor_leakage
failed on exactly that: "a neighboring gateway must not inherit
direct-platform always-thinking semantics".

The ladder itself is model metadata and still applies on a custom endpoint
(reasoning_effort_preserves_grok_46_ladder_only_on_exact_xai_route keeps
Medium on a gateway). Whether a gateway can switch thinking off is not, so on
an endpoint outside the provider's official family (provider_base_url_is_official;
Custom routes keep their own declared rows) a requested Off stays Off instead
of being clamped. Direct K3 and Kimi Code K3 keep their explicit route
branches above this point.

A first attempt that dropped the provider-wide fallback on non-official
endpoints fixed K3 but broke the Grok gateway ladder (15279 passed, 1 failed);
this narrower guard satisfies both.

Evidence (non-root, scripts/dev-test.sh tui -> cargo nextest run -p
codewhale-tui --lib --locked, hermetic HOME, proxy env stripped, tini
subreaper):
- Before: Summary 15280 tests run: 15279 passed (1 slow), 1 failed, 26 skipped
  (the K3 test above).
- After: Summary [454.858s] 15280 tests run: 15280 passed (1 slow), 26 skipped.
  Includes route_runtime unpinned_spawn_route_is_conservative_and_returns_
  exact_wire_id, tools::subagent providerless_spawn_model_gate_rejects_known_
  foreign_route_before_spawn, and all tools::test_runner tests.
- Container-only failures seen in a first run with the cloud proxy env
  (child_env proxy credentials, mcp::{http_client,oauth,sse} loopback,
  fleet::host reaping under a non-reaping PID 1) all pass once the proxy env
  is stripped and a subreaper is present; fleet::host alone: 25 passed.

Refs #6396

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YCbYZQhRvzf3jQZA1cNhcP
…usals

The #6396 slice moved `codewhale model resolve <model> [--provider X]` from
ModelRegistry to the endpoint-scoped route resolver and dropped the registry
call. The route resolver passes unknown and aggregator-class ids through, so
the diagnostic stopped failing closed: `glm-5.2 --provider moonshot` and an
unknown id on Z.ai printed `resolved:` and exited 0, and a route refusal
(`k3` on the direct Moonshot endpoint) aborted the command instead of being
reported. Five crates/cli/tests/model_resolve_provenance tests went red; the
handoff ran only `cargo check -p codewhale-cli`, not these tests.

The hypothetical branch now does what crates/app-server/src/chat_completions.rs
already does: ModelRegistry::resolve gates the requested id inside the
selected provider (same call and error text as before the slice), and the
route resolver stays authoritative for the wire id, canonical model, limits
and capabilities it adds. A route error is printed as `route_error:` and the
command still exits 0, matching the runtime-route branch above it. No test
assertion changed.

Evidence (non-root, hermetic HOME, proxy env stripped, tini subreaper;
target/debug/codewhale rebuilt first, as CI does):
- Before: cargo nextest run -p codewhale-cli --locked:
  541 tests run: 536 passed, 5 failed (model_resolve_provenance)
- After: Summary [27.189s] 541 tests run: 541 passed, 0 skipped
- Rebuilt binary: unknown id on zai and glm-5.2 on moonshot exit 1 with
  "model '<id>' is not available from provider '<p>'"; k3 on direct Moonshot
  prints resolved: k3 plus the runtime's route_error; kimi-k3 and GLM-5.3
  resolve with canonical_model.

Refs #6396

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YCbYZQhRvzf3jQZA1cNhcP
`cargo clippy --workspace --all-targets --all-features --locked -- -D warnings
-A clippy::uninlined_format_args -A clippy::too_many_arguments
-A clippy::unnecessary_map_or` (CI's Lint job) failed on codewhale-tui with:
- collapsible_if in client/anthropic.rs: the route-facts budget lookup is now
  one let-chain; same conditions, same body.
- needless_borrow in runtime_api.rs: from_catalog_offering(offering).

No behavior change.

Evidence: the same clippy command now finishes with no warnings or errors
("Finished `dev` profile ... in 10m 21s", exit 0); cargo fmt --all -- --check
clean.

Refs #6396

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YCbYZQhRvzf3jQZA1cNhcP
…issues

Checked each claim against the code at 2f0cac7:

- "`task_shell_start` is removed; use `bash` with `background=true`" was wrong:
  the model-visible `bash` schema has no `background` field and sets
  additionalProperties false (crates/tui/src/tools/shell.rs input_schema;
  docs/TOOL_SURFACE.md "Long-running work"). The note now says only that
  `task_shell_start` is removed; the sentence before it already describes the
  automatic move to the background.
- #6923: the body retry delay (9dd6b4b) is used only when the 429 is
  classified RateLimited. LlmError::from_http_response classifies any
  400/402/403/429 whose body says "exceeded your current quota" with plan and
  billing guidance as QuotaExhausted, which is never retried (llm_client/mod.rs
  has_explicit_quota_phrase; pinned by llm_client/tests.rs
  explicit_400_402_and_429_quota_responses_are_typed_and_non_retryable).
  Gemini's free-tier rate-limit 429 uses that wording, so the reporter's case
  still ends the turn. The Fixed line now describes what changed, and a Known
  limit states what did not.
- #6955: a session whose current branch alone is over 8 MiB is still refused
  (session_manager.rs load_session_snapshot_with_limit); the note says so.
- #6933 had no line although the model-visible catalog changed: fim_edit is
  registered only when can_request_fim_completion holds (Chat Completions, not
  OpenCode Zen; tools/registry.rs with_fim_tool), and the default DeepSeek Flash
  route resolves to Responses (route/tests.rs
  resolver_routes_only_official_deepseek_flash_over_responses). Added it, and
  the docs/PROVIDERS.md FIM cell (and zh_hans mirror) no longer says Flash has
  DeepSeek beta FIM.

Evidence: scripts/release/check-versions.sh and --require-dated-release
("Feature release-note receipts OK: 8 linked issue reference(s)"; "Version
state OK"); scripts/sync-changelog.sh --check up to date and the two 0.10.2
sections are identical; node web/scripts/check-facts.mjs OK after
derive-facts; git diff --check clean.

Refs #6923, #6933, #6955

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YCbYZQhRvzf3jQZA1cNhcP
@Hmbown Hmbown changed the title 0.10.2: endpoint-scoped catalog + tiered pricing (#6396), release notes, ready-to-tag fixes 0.10.2 candidate: endpoint-scoped catalog, tiered pricing and release verification Oct 13, 2026
CodeWhale Bot added 3 commits October 12, 2026 23:08
…proval

Founder approved the normal approval path for a Windows command the scanner
cannot classify. Keep the captured classification failure and its direct
reason, but do not label it an npm-launcher kill or a hard safety gate.
Auto-Review can consult its reviewer; Ask and Never keep their ordinary
approval machinery. Actual unbounded Node image kills retain their existing
reviewing-mode hold and Full Access still bypasses the floor.

Verified on macOS against the frozen combined source slice:
- Existing focused TUI tests: 81 tests run: 81 passed, 15230 skipped
  (79 approval tests and 2 modal/caret tests; skips are filter exclusions).
- npm test: 1312 passed; 0 failed; 7 skipped.
- npm run check:web: passed, including latest-release and production build.
- cargo fmt --all -- --check, git diff --check, dated version and changelog
  synchronization checks: passed.
Windows target was already installed. Cross-target check failed in ring's
C build because Windows assert.h is unavailable on this Mac; this is not
Windows type-check or execution proof. Hosted Windows CI remains required.
No new test functions or code comments added; existing tests were updated.

Refs #6963
Bracketed paste prioritized history search ahead of an open view, allowing
text to change the covered query. Respect modal ownership before that path.
Extend the existing modal-input check with committed CJK paste and key data;
record this and the Windows approval clarification in the 0.10.2 notes.
Terminal-owned IME preedit and Windows native acceptance remain unverified.

Verified on macOS against the frozen combined source slice:
- Existing focused TUI tests: 81 tests run: 81 passed, 15230 skipped
  (79 approval tests and 2 modal/caret tests; skips are filter exclusions).
- npm test: 1312 passed; 0 failed; 7 skipped.
- npm run check:web: passed, including latest-release and production build.
- cargo fmt --all -- --check, git diff --check, dated version and changelog
  synchronization checks: passed.
Windows target was already installed. Cross-target check failed in ring's
C build because Windows assert.h is unavailable on this Mac; this is not
Windows type-check or execution proof. Hosted Windows CI remains required.
No new test functions or code comments added; existing tests were updated.

Refs #2323, #6963
…nance

Record the founder-approved 0.10.2 exception for substantive contributor
thanks, status, answers and questions. Keep the outside-release rule and
review-workflow boundary explicit. The workspace-level control was updated
separately and is not copied into the product repository.

Distinguish the current vendored codewhale-ratatui 0.1.2 package from its
original 0.1.0 upstream snapshot so historical hashes remain provenance.
The exact vendored package passed cargo publish --dry-run --locked with
--allow-dirty: the tarball built and upload was aborted by dry-run mode.
No crate was uploaded. Final publication still requires the frozen candidate
and founder authorization; the 29-crate dry run waits on that dependency.

Evidence: npm test 1312 passed; 0 failed; 7 skipped, check:web passed;
version/changelog/fmt/whitespace checks passed. No runtime source changes.
CodeWhale Bot added 4 commits October 12, 2026 23:20
Combine SparkofSpike's preserved PR head 0b5042a with the release
candidate so hosted verification covers its classifier and the approved
normal-approval policy together. There are no merge conflicts; the existing
engine assertion changes are identical on both sides. Credit the contributor
and reporter in the release notes.

Landing order: PR #6929 must merge as its own contribution before #6968 is
squash-merged. This merge does not land either PR on main or authorize release.

macOS combined-source verification:
- 81 tests run: 81 passed, 15230 skipped (focused filter exclusions).
- The exact classifier change at 0b5042a: 89 tests run: 89 passed,
  147 skipped (filter exclusions); focused all-target Clippy passed.
- Unchanged web/npm source retains the preceding verified slice's gate:
  npm test 1312 passed; 0 failed; 7 skipped; npm run check:web passed.
- Formatting, whitespace, dated versions and synchronized changelogs pass.
- The notes/credit update followed the Rust run; it changes no Rust source.
Windows execution is pending hosted CI on this combined candidate. The prior
Mac MSVC cross-check could not compile ring without Windows SDK assert.h;
it provides no Windows type-check evidence. Native Windows acceptance is open.

Refs #6929
Refs #6963
Pin the current canonical Pi adapter, distinguish login registration from
Codewhale inference identity, and state experimental qualification accurately.
Keep the feature's runtime behavior unchanged while its release choice remains
open. Pi compatibility does not establish account eligibility or authorization.

Verification on macOS, source 9fa1cca plus these two documentation files:
npm test: 1312 passed; 0 failed; 7 skipped.
Node receipts: 101 + 19 + 413 + 7 passed; Vitest: 772 passed.
npm run check:web: passed. git diff --check: passed.
No Rust change, live Claude login, Windows execution or publication performed.
DeepSeek via Codewhale supplied a bounded read-only review; findings were
checked against source and provider documentation, not treated as acceptance.

Refs #6932
Refs #6963. Contributor head passes 89 classifier tests, 0 failed, and focused all-target Clippy on macOS. Unchanged npm/web gate remains 1312 passed, 0 failed, 7 skipped. The merge is conflict-free; hosted Windows verification is pending for this changed head.
F4 disabled VT mouse modes but left the Windows console mouse flag set.
Crossterm resume then wrote the already-set flag, so ConPTY did not emit
another enable transition. Release the Windows capture state before the
existing direct VT resets; recovery can now turn it on again. Keep the
PTY resets for mintty. No new product tests or code comments.

Thanks @SparkofSpike for distinguishing terminal scrollback from transcript
scrolling. Refs #6652.

Windows 11 ARM / Windows Terminal 1.24.12741.0, ordinary Hunter session:
checksum-verified published v0.10.1 reproduces working transcript wheel,
F4 to Notepad, failed wheel after return while PageUp works, then restored
wheel after /inline followed by /fullscreen. The editor probe measured
inputMode 159 (0x9f), mouse=true, raw=false. The affected external-editor
source is byte-identical between v0.10.1 and the pre-fix candidate.
This proves the old defect and recovery path, not the patched executable
or the reporter's separate hours-long slowdown. Patched Windows build and
interactive acceptance remain pending; hosted Windows CI is the gate.

macOS focused existing editor suite:
Summary [0.587s] 13 tests run: 13 passed, 15298 skipped (filtered).
No failures; cargo fmt --all -- --check and git diff --check passed.
npm test: 1312 passed, 0 failed, 7 skipped:
node suites 101/0, 19/0, 413/0 (7 skipped), 7/0; Vitest 772 passed.
npm run check:web passed, including latest-release, facts and build.
CodeWhale Bot added 9 commits October 13, 2026 05:42
Use independent OAuth state and the existing constant-time callback check.
Both TUI entry points queue one event-loop login, pause the sole input pump,
respect queued cancellation, restore terminal modes and resume input before
activating the admitted login. Preserve existing client registration and
experimental status; this is not provider permission or a valid grant receipt.

Actual POSIX CLI/slash/picker malformed-input checks:3 passed, 0 failed.
Both TUI cases restore raw input, retain an empty composer, then render new
input. Browser opening disabled; no valid credential/token/provider exchange.
Windows console handoff and live grant remain unverified for this change.
Refs #6932

Validation ran once against the complete frozen batch on cf7199b;
exact file/binary hashes are retained in FINAL_BATCH_FROZEN_SOURCE_2.json
and LOCAL_CLI_BUILD_RECEIPT.json. Unchanged evidence is reused per slice.
Actual nextest summary: 170 tests run: 170 passed, 15157 skipped (outside
selected filter); 0 failed. npm totals: 1312 passed, 0 failed, 7 skipped;
Vitest actual line: Tests 772 passed (772). check:web, fmt and CI-flag
all-target/all-feature TUI Clippy PASS. No new product tests/comments.
Final-head hosted Windows/full CI and release packaging remain required.
An accepted body retry delay at or below120 seconds permits retrying the
ambiguous quota/plan/billing429. Separate raw body evidence survives error
sanitization for both HTTP callers. Explicit account/billing/credit and
subscription quota codes remain terminal; a header alone cannot reclassify.
Preserve header precedence for the actual delay. Remove the unused migrated
helper and adapt seven existing test call signatures without changing asserts.

Actual normal CLI synthetic loopback:7 cases passed, 0 failed. The temporary
limit used2 byte-identical requests258 ms apart and succeeded; six durable
quota cases each used1request and failed with empty output/success=false.
The fixture scorer was corrected to inspect JSON output rather than the
success marker echoed in prompt; original output/receipts retained, no
execution repeated. Cache-isolated existing tests passed in170-test batch;
that ambiguous retry case and live Gemini/Windows were not manually run.
Thanks @Statter for the concrete quota-worded Gemini report.
Refs #6923

Validation ran once against the complete frozen batch on cf7199b;
exact file/binary hashes are retained in FINAL_BATCH_FROZEN_SOURCE_2.json
and LOCAL_CLI_BUILD_RECEIPT.json. Unchanged evidence is reused per slice.
Actual nextest summary: 170 tests run: 170 passed, 15157 skipped (outside
selected filter); 0 failed. npm totals: 1312 passed, 0 failed, 7 skipped;
Vitest actual line: Tests 772 passed (772). check:web, fmt and CI-flag
all-target/all-feature TUI Clippy PASS. No new product tests/comments.
Final-head hosted Windows/full CI and release packaging remain required.
Propagate compaction I/O error kind/detail instead of swallowing it. If a
source remains oversized, describe the measured compaction outcome without
claiming its active conversation alone must exceed the limit.

Actual bounded Runtime history fixture passed:9 MiB source, blocked archive
409 with accurate wording and all 4 journal entries retained, then restored
archive yielded1512 byte source plus 3 archived entries with exact lossless
union and1 message resume.0 model POSTs. Initial long-path fixture failed
before runtime startup at the macOS socket-length guard; corrected isolated
SSD path exercised the actual bounded route. No private histories or Windows
packaged recovery run. Thanks @7jrxt42BxFZo4iAnN4CX for the archive report.
Refs #6955

Validation ran once against the complete frozen batch on cf7199b;
exact file/binary hashes are retained in FINAL_BATCH_FROZEN_SOURCE_2.json
and LOCAL_CLI_BUILD_RECEIPT.json. Unchanged evidence is reused per slice.
Actual nextest summary: 170 tests run: 170 passed, 15157 skipped (outside
selected filter); 0 failed. npm totals: 1312 passed, 0 failed, 7 skipped;
Vitest actual line: Tests 772 passed (772). check:web, fmt and CI-flag
all-target/all-feature TUI Clippy PASS. No new product tests/comments.
Final-head hosted Windows/full CI and release packaging remain required.
Bind static import qualification to each actual PE machine and preserve raw
dump/hash/error receipts on failure. Check CLI aliases, optional delivered
host, NSIS setup/payload executables and actual embedded System/nsDialogs
DLLs before artifact upload. Unknown pairs/ordinals, malformed or empty
tables, nonzero delay tables and mismatched profiles fail closed.

x64 historical positive:411 qualified imports; v0.10.1 negative:454 examined,
rejected DeriveCapabilitySidsFromName as expected. ARM debug453/453resolved
on actual Win11 build 26300; no older ARM minimum inferred. Historical NSIS
setup/System/nsDialogs163/19/54static imports pass; x86 ordinal17 is bound
to SDK/export InitCommonControls identity. These are static contract receipts,
not a complete Windows API allowlist or final1607 startup/install proof.
Generated uninstaller, installed VC closure and exact final package/native
owner acceptance remain required. Native build budget210 minutes.

Existing workflow contract:155 paths,11 event cases x 12 steps,13 hermetic
checks,7 targets/34 assets PASS. actionlint with actual CI flags PASS.
Python parsed; independent complete frozen import/source review PASS.
Hosted release guard has not run yet. Thanks @LmeSzinc for the 1607 import
surface diagnosis that motivated this release gate.
Refs #6962
Refs #6953

Validation ran once against the complete frozen batch on cf7199b;
exact file/binary hashes are retained in FINAL_BATCH_FROZEN_SOURCE_2.json
and LOCAL_CLI_BUILD_RECEIPT.json. Unchanged evidence is reused per slice.
Actual nextest summary: 170 tests run: 170 passed, 15157 skipped (outside
selected filter); 0 failed. npm totals: 1312 passed, 0 failed, 7 skipped;
Vitest actual line: Tests 772 passed (772). check:web, fmt and CI-flag
all-target/all-feature TUI Clippy PASS. No new product tests/comments.
Final-head hosted Windows/full CI and release packaging remain required.
The cf7199b macOS job spent29m10s building CLI and125m18s building tests,
then hit165 minutes with15,204 completed PASS and no FAIL/TIMEOUT results;
there was no complete suite summary. Set finite native210 minute budgets
consistently and omit both dev/test debug metadata on the macOS test lane
so build profiles share reusable inputs. Assertions, complete tests, test
deadlines and retry settings are unchanged. No empty rerun commit.

Existing workflow/npm contract gate passes; actual actionlint CI flags pass.
No claim that the timed-out candidate job passed or the new head CI ran.

Validation ran once against the complete frozen batch on cf7199b;
exact file/binary hashes are retained in FINAL_BATCH_FROZEN_SOURCE_2.json
and LOCAL_CLI_BUILD_RECEIPT.json. Unchanged evidence is reused per slice.
Actual nextest summary: 170 tests run: 170 passed, 15157 skipped (outside
selected filter); 0 failed. npm totals: 1312 passed, 0 failed, 7 skipped;
Vitest actual line: Tests 772 passed (772). check:web, fmt and CI-flag
all-target/all-feature TUI Clippy PASS. No new product tests/comments.
Final-head hosted Windows/full CI and release packaging remain required.
Separate x64 compatibility target1607, ConPTY API1809 and current Terminal
2004 requirements. State actual ARM26300 evidence without inventing a minimum
ARM build. Preserve final1607 install/startup, generated uninstaller/VC closure,
package/native-owner and live Claude grant/registration gates explicitly.
Document actual first-turn file_search/load_skill schema in English/Chinese,
correct optional Gemini/compaction notes and refresh generated projections.

Dated version/changelog sync, workflow contract, source budgets and web
facts pass. No claim of final package or oldest-OS acceptance. Specific
reporter credits preserved; source fixes still target unreleased0.10.2.
Refs #6962
Refs #6932
Refs #6923
Refs #6955

Validation ran once against the complete frozen batch on cf7199b;
exact file/binary hashes are retained in FINAL_BATCH_FROZEN_SOURCE_2.json
and LOCAL_CLI_BUILD_RECEIPT.json. Unchanged evidence is reused per slice.
Actual nextest summary: 170 tests run: 170 passed, 15157 skipped (outside
selected filter); 0 failed. npm totals: 1312 passed, 0 failed, 7 skipped;
Vitest actual line: Tests 772 passed (772). check:web, fmt and CI-flag
all-target/all-feature TUI Clippy PASS. No new product tests/comments.
Final-head hosted Windows/full CI and release packaging remain required.
…ndencies

Cargo now reports a separate build_directory. Read archive sizes there, with
its older target_directory fallback, so dev-cargo preflight cannot measure
stale canonical target/package archives. Exclude extension-host/node_modules
explicitly: four ignored dist files otherwise entered a clean TUI package
and marked its publication provenance dirty.

Verification on macOS, source cd15db8 plus these two owned paths:
- npm test: Node 540 passed; 0 failed; 7 skipped. Vitest 772 passed.
  Combined 1312 passed; 0 failed; 7 skipped.
- npm run check:web: PASS.
- Existing crate-size check through dev-cargo: all 2 requested current
  archives under 10485760 bytes; TUI 9.00 MiB, CLI 0.35 MiB.
- cargo package -p codewhale-tui --list --locked --allow-dirty:
  956 members; no extension-host/node_modules entries.
- git diff --check: PASS. No production Rust changed.

Prior no-upload 29-crate verification built every tarball successfully, but
its size report inspected stale files and TUI included ignored dependencies.
Strict clean-commit no-upload verification and final Windows packaged/CI
acceptance remain gates; this commit does not claim them.

Refs #6910
CodeWhale Bot added 2 commits October 13, 2026 14:33
The existing Ctrl-T fixture put Models.dev metadata into the ModelsDev snapshot but tagged it as endpoint-owned Live with a fabricated fingerprint. The exact route guard rejects that row. Removing the provider-wide reasoning fallback exposed the malformed fixture in d83 Ubuntu CI: 19,031 passed; 1 failed; 34 skipped. The complete failed log and ordinal audit remain retained.

Use ModelsDevLive provenance, matching the existing catalog importer. Both original expected ladders and every two-lap/effective-tier assertion stay unchanged. No production code, test function or code comment was added or weakened.

Verified on macOS at d83 plus this frozen existing-test-only edit:
  Summary [   0.204s] 5 tests run: 5 passed, 15306 skipped
  Finished test profile in 2m 02s; existing __eh_frame linker warning retained.
  fmt and diff checks passed.

Unchanged JS and generated-doc inputs retain the earlier npm 1,312 passed; 0 failed; 7 skipped and web checks, with their original source boundary. Production inputs and d83 hosted Clippy9m25s proof are unchanged; current-head hosted CI/Lint still required. This new commit has no Windows, final-package or live-provider acceptance claim. Local proof: artifacts/release-0102-takeover-20261013/release-gates/d83-ctrl-t-fixture-repair/LOCAL_ACCEPTANCE.json in the shared workspace.

Refs #6396, #6650
The steering API may truthfully return a queued count0 after its two-second observation limit. Two existing tests assumed an in-band delivered count1. Observe the matching turn.steered and completed-item receipts before asserting exact durable count1. Preserve the mock commitment/text, turn identity, interruption, terminal status and every existing event assertion. Production waits and settlement are unchanged; no new test functions or code comments.

Local frozen macOS default-feature steering checks:
Summary [   1.904s] 5 tests run: 5 passed, 15306 skipped
5 passed; 0 failed; 15306 outside the filter. fmt and diff checks pass. The existing __eh_frame linker warning remains unsuppressed.

Unchanged JS evidence reused at its recorded source boundary: npm1312 passed;0failed;7skipped and check:web passed. Prior98 hosted Clippy7m15 is historical; new-head CI remains required.

Original98 Windows CI failed:18300passed(1leaky),1failed,27skipped; all18301unique result ordinals retained. Owner-crash recovery passed there. This repair has not yet run on Windows. The old log does not establish which settlement stage was delayed or a production defect.

Refs #6968
Hmbown added a commit that referenced this pull request Oct 13, 2026
Land contributor queued-steer receipt fix as its own PR. Actual own-head hosted checks: macOS19033 passed/0failed/33skipped; Ubuntu19030/0/34; Windows18297passed(including1leaky)/0failed/27skipped, with bothchangedsteeringcases andownerrecoveryPASS. Literal rootmergegatePASS; full reviewsread, no dependents, sourcebranchretained. Finalassembled0.10.2 candidate/nativepackage QA remains separate. Refs #6968
Hmbown added a commit that referenced this pull request Oct 13, 2026
Land the contributor change as its own PR with the original authored commit preserved. Root merge gate literally PASS; current reviews, required checks, source/base, dependents and branch preservation verified.

Actual own-head hosted native summaries:
2026-10-13T15:47:06.6798300Z      Summary [ 456.877s] 19035 tests run: 19035 passed (2 slow), 33 skipped
2026-10-13T16:07:31.9069122Z      Summary [1093.565s] 19032 tests run: 19032 passed (5 slow), 34 skipped
2026-10-13T16:29:02.7013722Z      Summary [1130.961s] 18301 tests run: 18301 passed (1 leaky), 27 skipped

Named owner recovery passed on all three. Existing Windows browser-launcher leak is retained where present. Current merge-SHA and final assembled0.10.2 candidate/package acceptance remain separate. Source branch retained; no issue closure or tag/publication. Refs #6968
Hmbown added a commit that referenced this pull request Oct 13, 2026
…heir-no-proxy

Land the contributor change as its own PR with the original authored commit preserved. Root merge gate literally PASS; current reviews, required checks, source/base, dependents and branch preservation verified.

Actual own-head hosted native summaries:
2026-10-13T22:27:48.2990130Z      Summary [ 965.899s] 19035 tests run: 19035 passed (2 slow), 33 skipped
2026-10-13T17:10:54.9009369Z      Summary [ 987.150s] 19032 tests run: 19032 passed (4 slow), 34 skipped
2026-10-13T17:22:17.2571366Z      Summary [1021.328s] 18301 tests run: 18301 passed (1 leaky), 27 skipped

Named owner recovery passed on all three. Existing Windows browser-launcher leak is retained where present. Current merge-SHA and final assembled0.10.2 candidate/package acceptance remain separate. Source branch retained; no issue closure or tag/publication. Refs #6968
Hmbown added a commit that referenced this pull request Oct 14, 2026
…are-ceiling

Land the contributor change as its own PR with the original authored commit preserved. Root merge gate literally PASS; current reviews, required checks, source/base, dependents and branch preservation verified.

Actual own-head hosted native summaries:
2026-10-12T16:54:38.2345790Z      Summary [ 437.121s] 19033 tests run: 19033 passed (2 slow), 33 skipped
2026-10-12T17:13:34.5155380Z      Summary [1030.592s] 19030 tests run: 19030 passed (4 slow), 34 skipped
2026-10-12T17:53:19.4941687Z      Summary [1220.379s] 18297 tests run: 18297 passed (1 slow, 1 leaky), 27 skipped

Named owner recovery passed on all three. Existing Windows browser-launcher leak is retained where present. Current merge-SHA and final assembled0.10.2 candidate/package acceptance remain separate. Source branch retained; no issue closure or tag/publication. Refs #6968
Integrate main3929bcee after own-PR merges #6967, #6974, #6975 and #6966. Preserve stronger matching steer receipt, HTTP projection and identity assertions; retain one contributor provider-table auth marker in the atomic save. Keep all15 loopback guards and three independent/event watchdog corrections. Credit @Lstarsky0 and @gaord in release notes; original authored commits and source branches are preserved.

Actual frozen macOS default-feature result:
     Summary [   1.439s] 23 tests run: 23 passed, 15288 skipped
All23 unique result ordinals are PASS. npm:540 Node +772 Vitest passed;0 failed;7 skipped. npm run check:web, versions, changelog sync, fmt and diff passed. Source hashes unchanged throughout. Existing __eh_frame linker warning retained.

No new product test functions/comments or gate waivers. Old failed/cancelled CI evidence remains; complete new-head hosted CI/Windows owner recovery and final packages are pending. No provider inference or release/publication.

Refs #6968
Refs #6972
Hmbown added a commit to gaord/CodeWhale that referenced this pull request Oct 14, 2026
Keep the contributor API and its original authored commit on its own PR. Trace actual project-context and exact hook-approval consumers: persisted trust does not remove project instructions/history, and hooks require separate digest approval. Correct both response messages and EN/ZH owning docs; remove the two now-false explanatory comment blocks; update the existing runtime-api registry summary and default-config limitation.

Source review, Rustfmt parse/format check and TOML registry validation passed. No product test was run for this branch correction; fresh exact-head hosted CI and Runtime authorization/trust acceptance remain required. No new agent test or code comment. Maintainer update brought actual main fixes with original commits preserved.

Refs codewhale-hq#6959
Refs codewhale-hq#6968
Hmbown added a commit that referenced this pull request Oct 14, 2026
…lerates-git-race

Preserve the contributor's existing cleanup test correction and original authored commit. Transient Git failure is pending only within the bounded observer; strict final worktree and branch checks remain. Root literal PASS source/full native CI/review/dependent/branch guards recorded.

Actual exact own-head hosted summaries:
2026-10-14T02:07:19.5002730Z      Summary [ 825.896s] 19035 tests run: 19035 passed (2 slow), 33 skipped
2026-10-14T00:46:02.7912461Z      Summary [ 692.573s] 19032 tests run: 19032 passed (2 slow), 34 skipped
2026-10-14T01:26:21.4468643Z      Summary [1121.431s] 18301 tests run: 18301 passed (1 leaky), 27 skipped

Owner crash reentry passed on all three. The hook-output cleanup case is Unix-only and passed on macOS/Ubuntu; the portable cleanup case passed Windows too. Existing Windows browser-launcher LEAK retained. Resulting main/candidate/packages remain separate qualification. Source branch retained; no issue closure/tag/publication. Refs #6968
Hmbown added a commit to Lstarsky0/CodeWhale that referenced this pull request Oct 14, 2026
Observe the existing pending-model Notify before final deadline acceptance. Caller setup precedes a real5s deadline;15s outer watchdog. Earlycompletion/missingphase stillfailswithdiagnostics, allpartialanswer/iteration/usage/context/terminalreceipt assertions retained. Onlyexistingfixture changed; productionbytes andoriginalaggregateusageassertion unchanged, no newtestfunction/comment.

ActualMaclocal atfrozenECD+V3: Summary [10.187s]42 testsrun:42passed,15284skipped, includingcorrectedpendingphasefixture. Correctedhunksmatchownforktest; inheritedusageassertion retained. npm1312passed/0failed/7skipped andweb passedatpriorV2unchangedJSboundary; notfullfork/Windows/distpass. OriginalWindows18300passed(1LEAK)/1failed/27skip preserved, clipboardacceptance succeeded. FreshownheadCIgate required beforemerge. OriginalPR/commits/branch retained. Refs codewhale-hq#6943. Refs codewhale-hq#6968.
Hmbown pushed a commit to gaord/CodeWhale that referenced this pull request Oct 14, 2026
…ace leases

Preserve both original @gaord commits and source branch. Keep owner/store/profile/bootstrap/auth/worker guards; kernel contention never authorizes inode replacement. Counted handles and asynchronous cleanup retain the lease; PrivateDirectory protects selected paths and identities. Windows creation success returns validated RW/noDELETE handle while failure cleanup keeps exact DELETE authority. RuntimeAPI/state-namespace/Unix-derived endpoint limits remain explicit; original9lease/6selector/4socket tests retained.

Actual local frozenECD+V3 evidence:42testsrun42passed15284skipped; appserver19testsrun19passed158skipped; registry1passed0failed1filtered; productionCLI andscopedClippyPASS. ActualUnixmanual4PASS/0FAIL,9authGETs,5ownedprocessesreaped,networkNOT_MEASURED/noinference. V2config12/0 andnpm1312/0/7web unchanged exceptcfgtesthelper; originalsource/failures retained. ClippypostcheckEAGAIN recovered with source guard andcached0.80sactual0; initialstale-binary/manualPython failures are artifact-only, preserved.

Localproof coversmatched10fullfiles andsameownedhunks in4forkbaselinevariants; it is NOT thiswholeownforktree/newWindows/fullnative/distproof. Fresh exact ownhead hostedCI/review required beforemerge. No newagenttestfunction/comment, no tag/publication/deletion. Refs codewhale-hq#6924. Refs codewhale-hq#6968.
Folds 26 main commits (incl. #6924 Runtime stores/workspace drivers, #6977,
#6943, #6959, #6958, #6956) into PR #6968's lane. The only conflicts were
web/data/agent-docs.generated.json and features.generated.json, regenerated
with web/scripts/derive-facts.mjs (check-facts OK, version 0.10.2).

Verified: scripts/dev-cargo.sh check --locked -p codewhale-tui --all-targets
finished in 9m00s with no errors. nextest -p codewhale-tui --lib on the overlap filter
(runtime_api|rlm::turn|runtime_threads|workspace_lease|snapshot):
902 passed, 0 failed, 14427 skipped (80.1s). Full suite left to hosted CI.

Branch exception: founder-authorized 2026-10-15 for this lane, recorded in
CW/coordination/BRANCH_EXCEPTIONS.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NBKbhx19BRbZtvWK8rVKjz

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Code review skipped — your organization has no extra usage available to pay for this review.

If your organization's extra usage balance is empty, an organization admin can add extra usage credits at claude.ai/admin-settings/usage. If its monthly spend limit was reached, an admin can raise it on the same page. If neither applies, contact Anthropic support.

Once extra usage is available, someone with write access to this repository can comment @claude review on this pull request to trigger a review.

Hmbown pushed a commit that referenced this pull request Oct 15, 2026
Four rustls advisories published 2026-10-14 (ECH-rejection data leak,
pre-auth Brotli certificate decompression allocation, ServerHello
key-exchange downgrade, Debug impls exposing TLS secrets) fail the
Security audit and cargo-deny jobs on main and on the 0.10.2 candidate
(PR #6968). Lockfile-only patch bump.

Evidence: cargo audit - only the existing allowed bincode warning;
cargo deny check advisories - ok; scripts/dev-cargo.sh check --locked
--workspace finished (6m30s) with no errors.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NBKbhx19BRbZtvWK8rVKjz
CodeWhale Bot and others added 2 commits October 14, 2026 21:07
…0.2 candidate

Lockfile and one search.rs hunk; no conflicts. Both verified on main
(2fb7215, c6bcf78).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NBKbhx19BRbZtvWK8rVKjz
Hmbown pushed a commit that referenced this pull request Oct 15, 2026
c6bcf78 added workspace.canonicalize() inside the closure passed to
run_blocking_grep. That private helper exclusively invokes the closure
with tokio::task::spawn_blocking(search). The lexical budget checker does
not recognize this wrapper, so main CI 38723587654 reports three sites
against a budget of two even though the new operation is already off the
Tokio worker. Record this one existing protected site; no Rust code,
assertions, production deadline or general checker behavior changes.

Verification on main 6ad6b26 plus this one-file change:
- Before: search.rs path_canonicalize sites 3 > budget 2.
- After: blocking-call budget: 539 sites across 165 files, within budget.
- Existing blocking checker tests: Ran 34 tests, OK (0 failed).
- npm test: 540 Node + 772 Vitest = 1312 passed, 0 failed, 7 skipped.
- npm run check:web: passed, including production web build.
- git diff --check: passed.

Eight concurrent CW-7414 TUI paths remain unstaged and byte-identical to
the takeover snapshot. Their Rust build was left undisturbed. This
script-only correction has no new native, hosted-CI or release proof.

Refs #6149, #6968
Preserve candidate source and the main blocking-budget correction plus reviewed terminal fixtures, relay fixture, provider-list alignment and Android confined-file fix. Resolve only changelog and generated agent-doc conflicts. Preserve printf033 credit and the candidate release notes; regenerate the packaged changelog and agent docs from their existing owners.

Object-level review confirms all115 candidate paths and22 newer-main paths preserve their respective source blobs except four combined documentation files. The three manual resolutions contain no production edits. Existing15-release changelog generation,26-topic/52-source doc derivation and diff whitespace checks pass. All four old review findings are fixed in unchanged candidate source with caller evidence recorded.

Fresh exact resulting-head native/web/CodeQL CI remains pending. Earlier candidate CI is historical evidence, not qualification of this merge. No tag, publication or release claim. Canonical main and peer native-build inputs remain unchanged.

Refs #6968

Signed-off-by: CodeWhale Bot <bot@codewhale.net>
The release-wide feature-note gate finds no #6841 receipt for the already
carried 6ad6b26 / CW-7033 implementation. Add the missing 0.10.2 note
and sync the TUI changelog. Preserve the October 13 date, existing entries
and credit, and the known nested-denial Fleet accounting limitation.

Validation on exact base 6eeafcd and captured proposal inputs:
- Existing release-note check v0.10.1..6eeafcd: before exit 1 for missing
  #6841; after PASS, 9 linked issue references checked.
- Existing sync-changelog.sh --check: PASS, TUI slice up to date.
- git apply --check --whitespace=error-all: PASS.
- Exactly 2 files, 8 additions, 0 deletions; removing the 4-line note from
  each proposal restores its original blob byte for byte.

No full version check, npm gate, native build/test, resulting-head CI,
package or Windows VM acceptance was run in this artifact-only preparation.

Refs #6841, CW-7033

Signed-off-by: CodeWhale Bot <bot@codewhale.net>
CodeWhale Bot and others added 4 commits October 15, 2026 13:12
Retain the original candidate and contributor histories while qualifying the
combined source in parallel with original PRs #6985 and #6989. Both contributor
PRs must still land as themselves before this candidate's conditional squash.
The source-navigation work in draft PR #6393 is excluded pending its author's
scope decision and successful qualification.

Include current main 248634f: worker ownership and late completion receipts,
stale approval/input settlement, shared mock authority, isolated fixture
workspaces, macOS LLVM setup and Windows clipboard launch diagnostics.
Carry @henrikdukefoss's Standard Compute descriptor with Unknown billing and
@shenjackyuanjie's OHOS Ninja selection and ungated CLI hashing unchanged.
Resolve CI/credit/generated-document intersections, synchronize approval
documentation with Engine execution IDs and captured input, and narrow the
Windows 10 1607 statement to verified dynamic lookup behavior.

Verification: object-only merge and authored/generated-document review;
72 feature rows and 26 documentation topics preserved; git diff --check passed.
No build or native/npm test was run on this combined source. Prior source
receipts remain separate; hosted exact-head qualification is required.
Canonical main and its index remain unchanged. No publication is authorized.

Signed-off-by: Hunter Bown <hunter@shannonlabs.dev>
Carry main 51c00f2 without changing the original PR-specific
source. Pin the no-host-tools metric fixture through its existing test-only
capability seam and remove echo/grep pipe races from mobile smoke.

Main repair verification: 2 focused existing Rust tests passed; full tool
catalog JSON unchanged; default CLI build and all 9 mobile HTTP assertions
passed; npm 1312 passed, 0 failed, 7 skipped; check:web, scoped rustfmt,
ShellCheck, Bash syntax and diff checks passed. Original isolated mobile
launch failed socket-path length before assertions; corrected only the
launcher and reran the same binary. Fresh resulting-head hosted native
qualification remains required; no old-source CI result is relabeled.

Only the three inherited probe paths differ from the previous PR head.
Both histories are retained. No new test, publication or branch cleanup.

Refs CW-6439

Signed-off-by: Hunter Bown <hunter@shannonlabs.dev>
Record the Standard Compute and OHOS contributor heads through #6989
while preserving the complete candidate source tree at
4a27e34. The five shared release
documentation and credit conflicts retain the already reviewed candidate
blobs, including both original contributor credits. No source content changes.

This prevents a final intake merge conflict. The original #6985 and #6989
PRs still merge as themselves before the conditional #6968 squash.
Existing test receipts remain attached to their original heads and unchanged
source tree; this new commit awaits fresh required CI before merge admission.
No tests were repeated locally for the identical source tree.

Signed-off-by: Hunter Bown <hunter@shannonlabs.dev>
Brings in #6985 (Standard Compute), #6989 (OHOS), the CW-6880 mobile
approval-card fix, the CW-7427 queue notice and logging fix and the G1
stdio MCP handoff, so the candidate's CI qualifies the tree the squash
will produce.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NBKbhx19BRbZtvWK8rVKjz

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Code review skipped — your organization has no extra usage available to pay for this review.

If your organization's extra usage balance is empty, an organization admin can add extra usage credits at claude.ai/admin-settings/usage. If its monthly spend limit was reached, an admin can raise it on the same page. If neither applies, contact Anthropic support.

Once extra usage is available, someone with write access to this repository can comment @claude review on this pull request to trigger a review.

Brings in b5e270b (the TUI accepts MCP status from a replacement
engine), so the squash produces exactly the tree this candidate's CI
qualifies. The merge is textually clean, and the merged tree has no
spawn_tui_engine call with the old signature.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NBKbhx19BRbZtvWK8rVKjz
@Hmbown
Hmbown merged commit be980da into main Oct 16, 2026
45 checks passed
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.

3 participants