Repository navigation
chore(deps): bump the actions group across 1 directory with 2 updates - #162
Conversation
Bumps the actions group with 2 updates in the / directory: [github/codeql-action](https://github.com/github/codeql-action) and [Swatinem/rust-cache](https://github.com/swatinem/rust-cache). Updates `github/codeql-action` from 4.39.0 to 4.39.1 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@v4.39.0...v4.39.1) Updates `Swatinem/rust-cache` from 2.9.2 to 2.9.3 - [Release notes](https://github.com/swatinem/rust-cache/releases) - [Changelog](https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md) - [Commits](Swatinem/rust-cache@v2.9.2...v2.9.3) --- updated-dependencies: - dependency-name: github/codeql-action dependency-version: 4.39.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions - dependency-name: Swatinem/rust-cache dependency-version: 2.9.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions ... Signed-off-by: dependabot[bot] <support@github.com>
|
Important Review skippedBot user detected. To trigger a single review, invoke the
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
…164) ## Why #157 added the IPC table (`src-gossamer/src/ipc.rs`) with only the 10 coprocessor commands as a pilot. The other panel-backend modules compiled and were tested, but none of their handlers could be called from the webview. That is `docs/TECHNICAL_DEBT.adoc` F1. ## What - **`ipc.rs`:** the table now registers all **239** panel-backend commands, in 43 module groups. With the 36 commands `main.rs` registers itself, the desktop shell exposes **275**. Each entry follows the pilot's rules: - `async fn` handlers run through `block_on`; sync handlers are called directly. Several sync handlers use `reqwest::blocking`, which must not run inside a runtime. I checked that no `async fn` handler uses blocking HTTP. - `Option` parameters are optional. - Struct parameters use `struct_arg`. It accepts a nested object, a flattened payload, or the struct sent as JSON text; the old frontend sent `save_arrangement` and `save_session` their struct as a string. - An `AppHandle` parameter is supplied by the backend. - Skipped: `ums_cartridge::validate_level_data`, a helper rather than a command. - **Argument check against the old frontend.** I compared every required argument with the pre-#107 ReScript `invoke()` calls (`git show 7a4f2cf^`). The old frontend sent every one of them, so no further empty-means-default cases needed `Option` (the pilot's `lib_path` was the only one). - **Event pump (`main.rs`).** A `g_timeout_add` callback on the GTK main thread drains `compat`'s event bus every 50 ms and hands each event to `gossamer_emit`. The callback only fires inside the event loop, while the window handle is live. `gossamer_run` frees the handle after the loop exits, so no tick can run on a freed handle. This is what makes `ai_send_message_streaming` chunks and `watcher_start` events reach the webview. - **New test `every_backend_command_is_registered`.** It scans every `*/commands.rs`, `*_live.rs` and `workspace/sysinfo.rs`, up to the unit-test module, and fails if a public handler is reachable from neither the table nor `main.rs`. This covers the "command dispatch is total" item in `PROOF-NEEDS.adoc`. - **Docs:** updated the `Cargo.toml` header, EXPLAINME-new, TECHNICAL_DEBT (F1 and F2 marked resolved), the CHANGELOG, the PROOF-NEEDS "IPC dispatch is total" row, and the test counts in README, EXPLAINME-new and TEST-NEEDS (285 → 294). ## Review follow-ups Codex raised these, and all were real: - **JSON-text struct arguments (`6141af7`):** `struct_arg` now parses a string value as JSON before deserialising it. - **Event pump (`6141af7`):** the original background thread could call `gossamer_emit` on a freed handle. It is now the GTK-loop timer described above. - **Missing `multiplayer_monitor` (`c38063e`):** its six commands were not registered, and the test didn't notice. A test-only `TEST_LOCK` above the handlers made both the generator and the test stop reading the file there. The test now cuts at `#[cfg(test)] mod tests`. With the group removed, it fails and lists all six commands. ## Checks - `cargo fmt --all -- --check`: clean. - `cargo clippy --locked --all-targets -- -D warnings`: clean. - `cargo clippy --locked --features gossamer --all-targets -- -D warnings`: clean. This was a type-check against a stub `libgossamer`. E2E's Rust job does the real Zig/GTK build, link and test; it passed on `6141af7`. - `cargo test --locked --lib`: 294 passed. That includes `required_arguments_are_enforced`, which sends `{}` to every entry that has required arguments. All of them reject it before the handler runs, so the test has no side effects. ## CI not caused by this PR Rust CI, Governance, Hypatia and Secret Scanner fail at startup on this PR, and also on #162 and #163 (#163 has since merged); see the comment below. ## Not tested - I haven't run the commands end to end in the desktop app. Most of them call local services (BoJ, VeriSimDB, TypeLL and others) that aren't running here. - The event pump hasn't been run in a live webview. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01SJtjqoZaSQo7uBwvwVMA9G --------- Co-authored-by: Claude <noreply@anthropic.com>
|
Add Carrot credits or activate Agent usage billing to use Autofix |
|



Bumps the actions group with 2 updates in the / directory: github/codeql-action and Swatinem/rust-cache.
Updates
github/codeql-actionfrom 4.39.0 to 4.39.1Release notes
Sourced from github/codeql-action's releases.
Changelog
Sourced from github/codeql-action's changelog.
Commits
9b32540Merge pull request #4257 from github/update-v4.39.1-c5a2f4b0fb5e1ed9Trigger workflows20f5ec3Update changelog for v4.39.1c5a2f4bMerge pull request #4245 from github/henrymercer/graduate-overlay-trap-caching61a5a80Merge pull request #4256 from github/update-bundle/codeql-bundle-v2.27.33dd33f8Merge pull request #4249 from github/mbg/upload-improvements-for-4223b96e339Change comment forgetConfigcall inupload-sarif7fa4518UseshouldSkipSarifUploadinanalyze-action.tsa69c7cbDocument that setting the env vars tofalsetakes precedence74ddcd9Fix typo in commentUpdates
Swatinem/rust-cachefrom 2.9.2 to 2.9.3Release notes
Sourced from Swatinem/rust-cache's releases.
Changelog
Sourced from Swatinem/rust-cache's changelog.
Commits
d1527c82.9.3f0fca6fupdate dependencies and rebuildb49b17fadd missing awaits6a7bc3eBump the dev-minor group across 1 directory with 2 updates (#383)4ece996Bump the actions group across 1 directory with 6 updates (#392)8103affBump the prd-minor group across 1 directory with 2 updates (#389)0e361f3fix: log rustup toolchain list failure as info instead of warning (#393) (#394)f0d9c38Merge pull request #380 from Swatinem/dependabot/github_actions/actions-8ff58...ccd9742Bump the actions group with 2 updates258712bfix: stop cleanup timestamp pruning after the first entry (#377)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore <dependency name> major versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)@dependabot ignore <dependency name> minor versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)@dependabot ignore <dependency name>will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)@dependabot unignore <dependency name>will remove all of the ignore conditions of the specified dependency@dependabot unignore <dependency name> <ignore condition>will remove the ignore condition of the specified dependency and ignore conditions