Will Pfleger
40ccd927f8
fix: address round-4 crossfire review findings for typed config
...
Hidden extension bypass: filter `is_hidden_extension` on both the
write path (`apply_to_config`) and read path (`from_config`), not
just the HTTP response layer.
Type safety: add `deserialize_string_or_number` for 8 DATABRICKS/GCP
retry fields so the API accepts both `"5"` and `5` without silent
data loss.
Security hardening: make `GOOSE_DISABLE_KEYRING` read-only via the
typed API to prevent downgrading secret storage from keyring to
plaintext. Guard `active_provider` batch-write to avoid double-write
when `GOOSE_PROVIDER` is also set.
Error propagation: `push_if_some!` and `push_secret!` macros now
propagate serialization errors via `?` instead of swallowing them.
Test maintainability: replace 48-entry hardcoded `non_string_keys`
exclusion set with schema-derived type detection using
`schema_for!(GooseConfigSchema)` property types.
Signed-off-by: Will Pfleger <wpfleger@block.xyz >
2026-05-21 12:07:37 -04:00
Will Pfleger
3b6bf2b5e5
fix: address round-3 crossfire review findings for typed config
...
The crossfire review (Codex + Gemini) confirmed 4 P1/P2 bugs from
automated PR comments plus identified two additional gaps.
Fix 1 (P1): apply_to_config fell back to the current active provider's
model when switching GOOSE_PROVIDER without GOOSE_MODEL, cross-
contaminating provider entries. Now reads the target provider's saved
model via get_provider_entry.
Fix 2 (P2): ANTHROPIC_THINKING_BUDGET was missing from GooseConfigSchema
despite being the primary key read by Anthropic request construction.
Fix 3 (P2): GooseConfigUpdate wrote non-secrets to config.yaml before
attempting keyring secret writes. Reordered to write secrets first so a
keyring failure leaves no partial config.yaml state.
Fix 4 (P2): set_goose_model was a silent no-op when no active provider
existed. Now falls back to writing the legacy flat GOOSE_MODEL key.
Fix 5: check-config-schema now uses the --check flag instead of
regenerating and diffing, avoiding workspace mutation during CI checks.
Fix 6: GET/PATCH /config/typed responses now filter hidden extensions,
matching the existing GET /config/extensions behavior.
Signed-off-by: Will Pfleger <wpfleger@block.xyz >
2026-05-18 16:39:14 -04:00
Will Pfleger
f055a64418
feat: add providers and active_provider to typed config schema
...
PR #8977 introduced structured per-provider config (`providers:` block + `active_provider` key). Wire these into GooseConfigSchema so they flow through the typed API endpoints and both JSON schemas.
GOOSE_PROVIDER/GOOSE_MODEL reads now use the resolution-chain accessors (env → active_provider → legacy flat key), and writes route through set_active_provider to keep the providers block canonical.
Signed-off-by: Will Pfleger <wpfleger@block.xyz >
2026-05-18 15:42:45 -04:00
Will Pfleger
9a35065574
fix: address round-2 crossfire review findings and pin openapi-ts
...
Round-2 crossfire review (3 Claude agents + Codex + Gemini) surfaced
a missing config key, a CLI display bug, incomplete test coverage, and
the root cause of the CI codegen mismatch. This commit addresses all
actionable findings and eliminates the manual TS codegen patching.
Key changes:
- Add GOOSE_DISABLE_TOOL_CALL_SUMMARY to GooseConfigSchema
- Add NANOGPT_API_KEY and LITELLM_CUSTOM_HEADERS to GooseConfigUpdate
- Fix configure.rs keyring status display for boolean GOOSE_DISABLE_KEYRING
- Add exhaustive from_config/apply_to_config coverage test
- Add CI check-config-schema job + Justfile targets
- Fix generate-config-schema error message (underscores → hyphens)
- Pin @hey-api/openapi-ts to 0.93.1, matching the lockfile
- Update PATCH endpoint docs (sparse semantics, nested replacement, env caution)
Signed-off-by: Will Pfleger <wpfleger@block.xyz >
2026-05-18 15:14:02 -04:00
Will Pfleger
fdd6d18d99
fix: address crossfire review findings for typed config endpoints
...
Flatten GooseConfigUpdate to embed GooseConfigSchema via #[serde(flatten)],
eliminating ~500 lines of duplication and reducing edit sites from 6 to 3
per new config key. Fix GOOSE_DISABLE_KEYRING type (String → bool), add
7 missing provider secret keys, make ALL_KEYS test bidirectional, add
config roundtrip test, and log warnings on serialization failures.
Signed-off-by: Will Pfleger <wpfleger@block.xyz >
2026-05-18 15:14:01 -04:00
Will Pfleger
c3614598cb
feat: add typed config endpoints with dual schema generation
...
Single GooseConfigSchema struct derives both utoipa::ToSchema (for
OpenAPI → TypeScript type safety) and schemars::JsonSchema (for
standalone config.schema.json consumed by downstream tools).
Adds GET/PATCH /config/typed endpoints alongside existing per-key
endpoints. GooseConfigUpdate struct includes secret fields routed
through the keyring. Existing UI and endpoints are unchanged.
Signed-off-by: Will Pfleger <wpfleger@block.xyz >
2026-05-18 15:14:01 -04:00
ayourk
badb97a01e
Structured per-provider config block, non-destructive provider switching ( #8977 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Signed-off-by: Aaron Yourk <ayourk@gmail.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-18 18:22:50 +00:00
jh-block
537eb23fb2
Preserve thinking content for providers that require it ( #8857 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-05-15 10:36:25 +00:00
Douwe Osinga
4671053985
fix: persist accumulated cost in session DB to survive reload ( #9191 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-14 16:57:06 +00:00
callebtc
dbbee1cdbf
add encrypted Nostr session sharing ( #8922 )
...
Signed-off-by: callebtc <93376500+callebtc@users.noreply.github.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Signed-off-by: Michael Neale <michael.neale@gmail.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Michael Neale <michael.neale@gmail.com >
2026-05-13 03:06:44 +00:00
Spike Wang
ba60b597fa
feat(CLI): Add optional --parameters to scheduled recipe ( #8741 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 23:30:38 +00:00
Mihir Gupta
15bfe4f5d5
fix(providers): honor dynamic_models: false in declarative provider configs ( #8795 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 19:07:36 +00:00
g.sunilkumar
f2df168bec
Fix frontend extension session state and tool routes ( #8464 )
...
Signed-off-by: sunilkumarvalmiki <g.sunilkumarvalmiki@gmail.com >
Signed-off-by: jh-block <jhugo@block.xyz >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Signed-off-by: Michael Neale <michael.neale@gmail.com >
Signed-off-by: Angie Jones <jones.angie@gmail.com >
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com >
Signed-off-by: Adam Miller <admiller@redhat.com >
Signed-off-by: morgmart <98432065+morgmart@users.noreply.github.com >
Signed-off-by: Andrew Harvard <aharvard@squareup.com >
Signed-off-by: Matt Toohey <contact@matttoohey.com >
Signed-off-by: Wes <wesb@block.xyz >
Signed-off-by: Clay Delk <clay.delk@gmail.com >
Signed-off-by: Kalvin Chau <kalvin@block.xyz >
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Signed-off-by: Alex Hancock <alexhancock@block.xyz >
Signed-off-by: Treebird <treebird@treebird.dev >
Signed-off-by: tulsi <tulsi@block.xyz >
Signed-off-by: vonbai <nswanqi@gmail.com >
Signed-off-by: olaservo <olahungerford@gmail.com >
Signed-off-by: Abhijay Jain <Abhijay007j@gmail.com >
Signed-off-by: Rodolfo Olivieri <rolivier@redhat.com >
Signed-off-by: fresh3nough <anonwurcod@proton.me >
Signed-off-by: Jheison Martinez Bolivar <jheison.mb@gmail.com >
Co-authored-by: Matt Toohey <contact@matttoohey.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: Lifei Zhou <lifei@squareup.com >
Co-authored-by: jh-block <jhugo@block.xyz >
Co-authored-by: Alex Hancock <alexhancock@block.xyz >
Co-authored-by: Jack Amadeo <jackamadeo@block.xyz >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Michael Neale <michael.neale@gmail.com >
Co-authored-by: Angie Jones <jones.angie@gmail.com >
Co-authored-by: SomeSolutionsArchitect <139817767+SomeSolutionsArchitect@users.noreply.github.com >
Co-authored-by: Christian <chvargas@wfscorp.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com >
Co-authored-by: Adam Miller <admiller@redhat.com >
Co-authored-by: Jack Amadeo <jackamadeo@squareup.com >
Co-authored-by: morgmart <98432065+morgmart@users.noreply.github.com >
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrew Harvard <aharvard@squareup.com >
Co-authored-by: Kalvin C <kalvinnchau@users.noreply.github.com >
Co-authored-by: Adewale Abati <acekyd01@gmail.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Kalvin Chau <kalvin@block.xyz >
Co-authored-by: Clay Delk <clay.delk@gmail.com >
Co-authored-by: dorien-koelemeijer <62866702+dorien-koelemeijer@users.noreply.github.com >
Co-authored-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Monroe Williams <monroe@pobox.com >
Co-authored-by: Spike Wang <spike@spikewang.me >
Co-authored-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: Treebird <treebird@treebird.dev >
Co-authored-by: Sarthak Bhardwaj <100398847+SarthakB11@users.noreply.github.com >
Co-authored-by: Douwe Osinga <douwe@block.xyz >
Co-authored-by: tulsi <tulsi@block.xyz >
Co-authored-by: Vonbai <107612985+vonbai@users.noreply.github.com >
Co-authored-by: Ola Hungerford <olahungerford@gmail.com >
Co-authored-by: Lucas Kim <45152028+Raptors65@users.noreply.github.com >
Co-authored-by: Abhijay Jain <abhijay007j@gmail.com >
Co-authored-by: Rodolfo Olivieri <rolivier@redhat.com >
Co-authored-by: fre$h <anonwurcod@proton.me >
Co-authored-by: Jheison Martinez Bolivar <78370841+JheisonMB@users.noreply.github.com >
2026-05-12 19:04:26 +00:00
github-actions[bot]
831a7f27d3
chore(release): bump version to 1.34.0 (minor) ( #9006 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-11 19:13:45 +00:00
Douwe Osinga
ea5802c380
refactor: remove threads layer, use sessions directly for ACP ( #9078 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-08 20:10:55 +00:00
Lifei Zhou
2db5e58ec7
fix: revert the change for unexpected change from ui/goose2 work ( #9098 )
2026-05-08 09:19:15 +00:00
Angie Jones
17c12bfbd8
fix: unscheduling a recipe should not delete them ( #8978 )
...
Signed-off-by: Angie Jones <jones.angie@gmail.com >
2026-05-04 01:26:54 +00:00
morgmart
45d8bf81d0
Redesign Extensions page. Remove enable toggle in UI. Treat Extension Manager as core MCP enabler per session. ( #8940 )
...
Signed-off-by: morgmart <98432065+morgmart@users.noreply.github.com >
2026-05-02 02:16:55 +00:00
Jack Amadeo
23d3db445f
mergeable configs + cleanup ( #8378 )
2026-04-28 20:26:31 +00:00
github-actions[bot]
52b3f21ef7
chore(release): bump version to 1.33.0 (minor) ( #8872 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-28 09:55:14 +00:00
jh-block
4065d44ef7
Add NVIDIA provider, and improve declarative provider UX ( #8798 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-04-24 13:48:30 +00:00
github-actions[bot]
3fbe01d3b6
chore(release): bump version to 1.32.0 (minor) ( #8713 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Lifei Zhou <lifei@squareup.com >
2026-04-23 01:55:05 +00:00
Douwe Osinga
04514c6d20
Feature/at agent mention ( #8571 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-04-22 14:17:43 +00:00
Bradley Axen
8eda6fdabc
overhaul provider inventory and agent/model selection ( #8652 )
...
Signed-off-by: Bradley Axen <baxen@squareup.com >
2026-04-20 15:00:17 -07:00
Will Pfleger
7fa662bcac
feat(extensions): support Unix domain socket transport for StreamableHttp MCP ( #7860 )
2026-04-17 19:16:37 +00:00
jh-block
1a18c2748c
fix: eliminate ~5s delay when opening Switch Models panel with local provider ( #8626 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-04-17 19:08:41 +00:00
jh-block
d52cde3fb9
Register IconTheme in OpenAPI schema after rmcp 1.5.0 upgrade ( #8621 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-04-17 12:14:58 +00:00
Lifei Zhou
23755aa458
Lifei/oltp data ( #8458 )
2026-04-15 23:47:09 +00:00
github-actions[bot]
8e04d7c8be
chore(release): bump version to 1.31.0 (minor) ( #8527 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-14 14:48:16 +00:00
jh-block
65e5d97cac
Improve local inference settings and model downloader ( #8467 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-04-14 08:50:50 +00:00
jh-block
de317d5445
Add vision/image support for local inference models ( #8442 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-04-13 08:17:04 +00:00
jh-block
e8cbfc55da
fix: local inference provider loses thinking and fragments tool calls across turns ( #8415 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-04-09 09:27:31 +00:00
Bradley Axen
9d7de43eec
feat(acp): introduce threads ( #8344 )
...
Signed-off-by: Bradley Axen <baxen@squareup.com >
2026-04-08 22:14:28 -07:00
Jack Amadeo
583acd4335
chore(aaif): rename a bunch of repository references ( #8152 )
...
Signed-off-by: Michael Neale <michael.neale@gmail.com >
Co-authored-by: Michael Neale <michael.neale@gmail.com >
continuing migration to aaif
2026-04-07 15:34:48 +10:00
Ravitez Dondeti
8d4835f070
feat: add configurable fast_model for declarative providers ( #8194 )
...
Signed-off-by: rdondeti <ravitez.dondeti@gmail.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-04-02 13:54:11 +00:00
github-actions[bot]
5a8686bb83
chore(release): bump version to 1.30.0 (minor) ( #8217 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-02 10:29:55 -04:00
Vincenzo Palazzo
9feb3f3bca
feat: show installed skills in UI ( #7910 )
...
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-03-26 20:57:12 +00:00
Nick Kuhn
c936514014
fix: VMware Tanzu Platform provider - bug fixes, streaming, UI improvements ( #8126 )
...
Signed-off-by: Nick Kuhn <nick.kuhn@broadcom.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-03-26 18:16:01 +00:00
jh-block
11f46dc0e0
fix: GitHub Copilot auth fails to open browser in Desktop app ( #6957 ) ( #8019 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-03-26 18:03:44 +00:00
Rabi Mishra
f5ad3384b8
fix(acp): separate acp sessions from user sessions ( #7857 )
...
Signed-off-by: Rabi Mishra <mishra.rabi@gmail.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-03-26 16:52:42 +00:00
Lifei Zhou
d2553978c4
Lifei/clean up old onboarding flow ( #8099 )
2026-03-26 00:34:22 +00:00
Douwe Osinga
03f546bd14
fix: add skip_canonical_filtering to declarative providers ( #8052 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-03-25 12:30:20 +00:00
github-actions[bot]
d765029701
chore(release): bump version to 1.29.0 (minor) ( #8088 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-24 14:55:15 +00:00
이대희
c493c6160c
feat: feature-gate local inference dependencies ( #7976 )
...
Signed-off-by: DaeHee Lee <lee111dae11@proton.me >
Signed-off-by: jh-block <jhugo@block.xyz >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: jh-block <jhugo@block.xyz >
2026-03-23 15:49:24 +00:00
Abhijay Jain
79f539f8af
feat: ability to manage sub recipes in desktop ui ( #6360 )
...
Signed-off-by: Abhijay007 <Abhijay007j@gmail.com >
Signed-off-by: Abhijay Jain <Abhijay007j@gmail.com >
2026-03-23 15:34:58 +00:00
Andrew Harvard
a43cbe5875
feat(apps): Pass toolInfo to MCP Apps via hostContext ( #7506 )
...
Co-authored-by: Goose <opensource@block.xyz >
2026-03-23 13:12:47 +00:00
Douwe Osinga
6435e1a85c
Remove lead/worker provider ( #7989 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-03-18 20:27:36 +00:00
jh-block
7f1ca37234
chore(release): release version 1.28.0 ( #7991 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-18 19:48:16 +00:00
jh-block
8d72344602
Separate SSE streaming from POST work submission ( #7834 )
2026-03-18 17:00:06 +00:00
Vincenzo Palazzo
827175619a
fix: clean up OAuth token cache on provider deletion ( #7908 )
...
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 17:54:11 +00:00