Repository navigation
fix(release): ship the standard disclaimer in Rust distributions - #6500
Conversation
Generated-by: Codex
Generated-by: Codex
Astro-Han
left a comment
There was a problem hiding this comment.
Automated review notice: This comment was posted by an automated review agent. It is not an independent human review and does not replace one.
I reviewed the complete 22-file diff at acdc72f1fb62ee124e3b690d2992d18338189766, including source verification, native and launcher packing, archive/cache required members, installed-package checks, attribution and the website references. I found no confirmed P0–P2 implementation defect in that scope. This remains a draft, and the licensing conclusions have the verification boundary below.
The packaging omission is independently demonstrated: the updated native-package test passes with the new packer and fails with the unchanged target's old packer because package/DISCLAIMER is missing from the actual npm tarball. The passing fixture builds macOS, Linux and Windows package layouts and reads back their legal files and both README disclaimers; its executables and external validator are controlled fixtures, not real native builds. The launcher test also packs and inspects the actual npm tarball from a verified source fixture. In the five relevant Node test files, 27 tests passed; one source-identity test could not reach its expected version-mismatch assertion because this machine has no cargo (spawn cargo ENOENT). The release implementation for that path is unchanged by this PR. I did not count that test as passed.
I separately created and verified an unsigned source archive from this exact commit: 6,301 entries, 19,401,720 bytes. I extracted DISCLAIMER, LICENSE, NOTICE and maka.ico and compared their bytes with the committed files; no DISCLAIMER-WIP remains in the archive. The logo reproduction test, source-header audit, notice-snapshot check and whitespace check passed. I checked the two newly listed Rust components against their recorded versions/licenses, the complete upstream Playwright NOTICE against the root NOTICE, the seven PNG images in the ICO and the identical workbench/product logos. Reqwest's MIT text differs from its recorded upstream bytes only in surrounding whitespace, which I checked against the published crate; I am not claiming every vendored source file was independently audited.
The downloader's source now requires the new root document and macOS resource documents and includes them in the existing per-file integrity receipt. That intentionally excludes older preview packages/caches lacking those files; the same-source rebuild requirement is documented. I inspected that Rust path and its added tests but did not execute the Rust archive/cache tests, real installation smoke, signed release or native application builds. There is no wire or database migration change.
The Incubator policy permits the two disclaimer forms, while the release guide requires full ASF-policy compliance when selecting the standard form. Mechanical inclusion of a document does not establish that compliance. The historical RC2/ICLA/withdrawal links remain author-supplied evidence here: the original ASF mail threads are still inaccessible in this environment. I have not independently confirmed their contents or the sufficiency of all retained material for a future release; this review is not a release or legal approval.
The actual merge into rust-preview@671ffaececaf4612e847e0c797d5691b76d5f7e8 succeeds without conflicts. CI 41197488735 failed during lint on unused ModelRequest::tool_call at products/maka/terminal-shell/tests/real_host/support.rs:541; that helper and the CLI Cargo manifest are unchanged from the target this PR started from. The earlier browser.rs:789 diagnostic is absent from this run after the short-circuit-preserving condition collapse, but the full check remains red and subsequent integration is skipped. The separate website, dependency audit and three-platform Computer Use checks succeeded; those results do not substitute for the full runtime check.
Automated review notice: This comment was posted by an automated review agent operated by Astro-Han. It is not an independent human review and does not replace one.
Generated-by: Codex
Astro-Han
left a comment
There was a problem hiding this comment.
Automated review notice: This comment was posted by an automated review agent. It is not an independent human review and does not replace one.
Incremental review at 487fe02777330edb7e5f483b1e81f8d09c8d4fea, compared with my previous review at acdc72f1. I read the current PR diff and the sole added change: #[cfg(feature = "desktop-tests")] on ModelRequest::tool_call. Its two callers are in desktop_new_session, which is already compiled only with that feature. The method stays available to those callers and is omitted from the default integration target. I found no confirmed new P0–P2 issue from this change. The current target has independently incorporated the same helper gate and browser-condition fix.
CI 41201046952 now passes the previously failing lint stage and reaches the workspace tests: 1,931 passed, 2 failed, 26 skipped. The failures are distinct:
exclusive_session_retirement_settles_parked_work_without_a_new_activationfails atapproval_park.rs:688withMaterialCollected. This is the same failure already observed in earlier target CI; I have not reproduced its underlying cause locally.candidate_preserves_root_authority_and_drains_on_owner_loss_or_released_idlefails atcandidate.rs:235, receivingactive_taskswhere it expectsprepared. This PR does not change that test or the candidate/Root lifecycle implementation. I have not established whether the cause is shared with the target or specific to this run, and I am not labeling it a random flake or a proven packaging regression.
The full check remains failed; the old Clippy failures are no longer the reason for this run's failure. Separate website, dependency-audit and three-platform Computer Use checks succeeded. I did not rerun Rust locally because this machine has no Rust toolchain. My prior 27 passing Node checks, one cargo-dependent check that could not complete, and the unsigned source-archive verification apply specifically to the earlier acdc72f commit; I have not regenerated those artifacts at this head. Packaging and licensing-source files are unchanged by the added commit, and the earlier real-installation, retained-material and original-ASF-mail verification limits still apply.
The actual merge into rust-preview@dfc0e232370fd29447d01570273c8a541bc902aa succeeds without conflicts. This PR remains a draft; neither this incremental check nor the earlier packaging evidence establishes release/legal approval, a successful merged runtime check, or a signed release.
Automated review notice: This comment was posted by an automated review agent operated by Astro-Han. It is not an independent human review and does not replace one.
sleep takes no arguments and has no duration. It ends the Turn through the engine's existing FinishTurn semantics, and the Bot is woken again by a user message, a WorkHub result or a scheduled event, each of which already starts its own Turn. It is refused only while a queued message is already bound for the running Invocation's next step, so a promoted message is read first. Like SendUser it is granted by Bot identity, always visible, hidden from other Sessions and rejected from a requested tool list. The standing instructions tell the model to call it on its own, not in the same step as SendUser, which FinishTurn would reject. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Preserve both the Sleep regressions and workspace-free Bot opening tests. Update the existing retirement test to observe a removed Session through its public API, since deletion now collects the original history material. Generated-by: OpenAI Codex
Generated-by: OpenAI Codex
Generated-by: OpenAI Codex
Generated-by: OpenAI Codex
Summary
Rust preview still carries the old claim that the software grant and committer ICLAs are incomplete. The historical ICLA objection was resolved during 0.2.0 RC2. Review of the Rust tree found concrete release omissions instead: native npm packages and the launcher omit the incubation disclaimer, the Windows icon is missing from the source asset inventory, and three vendored components are absent from the top-level attribution list.
Use the standard
DISCLAIMERand carry it through source verification, native packages, the launcher, installed-package verification and website checks. Native macOS bundles also carry LICENSE, NOTICE and the actual native notice closure; both npm README languages receive the canonical disclaimer during packing. The Rust downloader requires and integrity-binds these documents, including the bundle resources.Record the historical ICLA resolution in the existing provenance document, register the logo-derived Windows icon, and add reqwest, image-webp and Playwright attribution while preserving their original licenses. The complete Playwright upstream NOTICE is retained in the root NOTICE.
Provenance review
Verification
ModelRequest::tool_callfixture helper only withdesktop-tests, matching its existing callers. The existing handoff cleanup test passes. Default CLI integration Clippy reproduces the unused-helper failure before the feature gate and passes afterward (--no-deps -- -D warnings); the same integration target also compiles withdesktop-testsenabled. Native macOS Computer Use Clippy no longer reports the browser diagnostic and adds no new diagnostics; it still reports the same 11 pre-existing diagnostics in unchanged macOS files.rust-preview@cfd51fad570bbdb98c54e704400775b7b046d318, which contains merge commitb1a39d68bfb593064acdd4afb54656565a4d5d1b. This includes Ubuntu, macOS and Windows native checks, Clippy, NSH/GPUI, root build and all four root-test shards. Historical failed PR-head checks remain recorded separately.package/DISCLAIMERwas absent. Both now pass and read back the legal files and npm README disclaimers. Native fixtures cover macOS, Linux and Windows.--no-deps -- -D warnings), Biome formatting/lint and dependency/notice checks passed.fc1410a233bd97378e69b4fd79b7466a5273e116: 6,301 archive entries, 19,397,384 bytes. Read back DISCLAIMER, LICENSE, NOTICE and the Windows icon and compared them with the committed tree. No DISCLAIMER-WIP remains in the archive.Local verification did not include full
just check, a signed RC, or full native release builds/install smoke tests. No artifacts are published by this PR.Packaging compatibility
All native targets and their launcher must be rebuilt from the same updated source candidate. Old preview packages without the required disclaimer do not satisfy the updated archive/cache contract. Existing released archives and tags are unchanged.
AI use
Tool(s) and scope: Codex reviewed the source/material records, implemented the disclaimer and packaging changes, extended existing behavioral tests and ran the verification above.
Checklist
Does this PR entail a change in behavior?