feat(gateway): add multi-channel gateway runtime + serve/watch integration#535
Merged
Conversation
fix(server): preserve tool results and reduce checkpoint churn
- pass --profile before serve in stakpak up child process - derive embedded gateway loopback URL from listener IP family - treat gateway context persistence failures as non-fatal after successful send - add watch notification HTTP timeouts and sanitize outbound summary/context text
Remove rusqlite bundled SQLite in gateway so stakpak binary does not link two sqlite3 implementations (libsql-ffi + libsqlite3-sys), which caused Linux CI multiple-definition linker errors.
- add libsql to workspace dependencies and consume via workspace in cli/gateway crates - replace gateway rusqlite store with async libsql implementation - update runtime/dispatcher/api and gateway command paths to await async store and gateway initialization - keep prior serve/watch hardening fixes in the same change set
…ckpoint optimization - Rename AutoApprovePolicy → ToolApprovalPolicy (from main) - Adopt main's with_defaults()/with_overrides() builder pattern - Adopt #[derive(Default)] cleanup (from main) - Keep gateway runtime integration in serve command - Keep dirty-tracking checkpoint persistence optimization - Bump versions to 0.3.42 - Fix auto_approve_tools borrow after move (ref + iter().cloned())
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds a new
stakpak-gatewaycrate and integrates it into CLI/server flows.What changed
libs/gatewaycrate with:stakpak gateway initstakpak gateway channels {list,test,add,remove}stakpak gateway runstakpak servevia--gatewayand mounted/v1/gateway/*routes.libs/server/README.mdwith serve/gateway operator instructions.stakpak serve --gateway.Why
Provide end-to-end chat-channel ingress/egress for Stakpak sessions and enable watch-trigger notifications through a shared gateway API.
Validation
cargo fmton touched Rust filescargo clippy -p stakpak-gateway -p stakpak --all-targets -- -D warnings