chore: Remove stale crates/goose-server and update docs - #10224
Conversation
|
Documentation preview deployed: https://pr-10224.goose-pr-previews-poc.pages.dev |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: baa4600a79
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: fc2d049d30
ℹ️ 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".
michaelneale
left a comment
There was a problem hiding this comment.
So long and farewell goosed - you served us well. If this is problematic, shoudl there be a phase of it where it is deprecated and then removed in case any external parties depend on it for their distros?
I think for users who depend on crates/goose-server can still use the old version of goose. But we still recommend them to migrate to ACP server so that they can use our new features in the future versions. Also we can improve on our side with the ACP server path based on their feedback. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 58c6606146
ℹ️ 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".
| @@ -1,103 +0,0 @@ | |||
| [package] | |||
There was a problem hiding this comment.
Update Cargo.lock after removing the crate
Deleting this workspace package without committing the corresponding lockfile cleanup leaves Cargo.lock out of sync: I checked the CI workflow at .github/workflows/ci.yml:136 and it runs cargo check --workspace --locked --all-targets, while locally cargo check -p goose --tests --locked now fails immediately with the lock file ... needs to be updated. Commit the Cargo.lock diff that removes goose-server and its now-unused deps so locked CI can start.
Useful? React with 👍 / 👎.
* main: Update Rust toolchain and raise recursion limit (#10303) Switch the local inference provider MLX backend to use the safemlx crate (#10304) feat: askai bot hints for followups (#10291) feat(desktop): per-message usage stats UI (tokens, cost, TTFT, tok/s) (#10210) fix(server): return effective context limit from /model-info (#10165) fix(deps): gate rcgen aws_lc_rs feature behind rustls-tls (#10116)
Merges 86 upstream commits (v1.40.0 -> v1.41.0), stopping deliberately at 6d69936^ -- the commit immediately before upstream deleted the entire crates/goose-server crate ("chore: Remove stale crates/goose-server", aaif-goose#10224). That crate builds the goosed binary and serves the five REST endpoints Reverge's goose_bot.py depends on (/agent/start, /agent/stop, /agent/update_from_session, /config/upsert, /reply). Upstream replaced it with an ACP server over HTTP/WS (`goose serve`), which is a different protocol -- adopting it requires porting the Reverge client, so it is left for a separate decision. Fork features preserved: - de-branded prompts (system.md, subagent_system.md, tiny_model_system.md) - mcp_only mode (Settings flag + AppState plumbing + both route checks) - goosed-entrypoint.sh Conflict resolution: state.rs -- upstream removed the local-inference inference_runtime field where our settings field lives. Took upstream's removal, kept our field. Verified: no upstream changes to any route Reverge calls across all 86 commits; ExtensionConfig and the streamable_http serde tag unchanged. cargo check --package goose-server passes clean (0 errors, 0 warnings) under toolchain 1.96.1. Note: this merge raises the required toolchain from 1.92 to 1.96.1. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The cron scheduler lives in a OnceCell that only gets initialized by create_agent(), so a headless `goose serve` never runs scheduled jobs until the first ACP client connects. `goose acp` already initializes it at startup (run() creates the agent immediately), and the old REST goosed built its scheduler at boot. Serve lost eagerness in the acp migration: aaif-goose#9951 added the OnceCell as a bridge with a TODO to make AcpServer own the scheduler, then aaif-goose#10224 removed the eager injection path. Initialize it in handle_serve_command after argument and auth validation. On failure, warn and fall back to the existing lazy path (the OnceCell stays empty, so the next create_agent retries as before). Verified with an every-minute schedule under an isolated GOOSE_PATH_ROOT and no client ever connecting: 0 fires before, fires every minute after ("Cron task triggered" in the state log, last_run persisted).
Summary
Remove stale
crates/goose-serverand update docsTesting
CI and Manual
Note:
This PR removes the goose-server OpenAPI path, but leaves existing
utoipa::ToSchemaderives ingoose coreand related crates. Cleaning them up would make this PR much larger, so I will create another pr after this one is merged.