Peter Steinberger
18e5b0e3e3
test(web): trim duplicate provider test surfaces ( #121727 )
2026-08-10 15:44:54 -07:00
Peter Steinberger
084833b324
fix(search): propagate cancellation through provider-owned requests ( #118895 )
2026-08-03 12:46:17 -07:00
Wynne668
522c747d3c
fix(exa): reject invalid UTF-8 search responses ( #111736 )
2026-07-29 05:58:02 -04:00
Peter Steinberger
edecdbd05e
refactor(config): config-surface reduction tranche 3 — product consolidations (review request) ( #111527 )
...
* refactor(config): consolidate media model lists
* refactor(config): unify memory configuration
* refactor(config): consolidate TTS ownership
* refactor(config): move typing policy to agents
* refactor(config): retire product-level config surfaces
* refactor(config): share scoped tool policy type
* chore(config): refresh generated baselines
* fix(config): honor agent typing overrides
* fix(config): migrate sibling config consumers
* refactor(infra): keep base64url decoder private
* fix(config): strip invalid legacy TTS values
* chore(config): refresh rebased baseline hash
* fix(doctor): route legacy messages.tts.realtime voice to talk during tts move
* refactor(config): polish final layout names
* refactor(config): freeze retired tuning defaults
* feat(config): add fast mode default symmetry
* refactor(config): key agent entries by id
* docs(config): update final layout reference
* test(config): cover final layout migrations
* chore(config): refresh final layout baselines
* fix(config): align final layout runtime readers
* fix(config): align remaining readers
* fix(config): stabilize final layout migrations
* fix(config): finalize config projection proof
* fix(config): address final layout review
* docs(release): preserve historical config names
* fix(config): complete keyed agent migration
* fix(config): close final migration gaps
* fix(config): finish full-branch review
* fix(config): complete runtime secret detection
* fix(config): close final review findings
* fix(config): finish canonical docs and heartbeat migration
* fix(config): integrate latest main after rebase
* refactor(env): isolate test-only controls
* refactor(env): isolate build and development controls
* refactor(env): collapse process identity indirection
* refactor(env): remove duplicate config and temp aliases
* docs(env): define the operator-facing allowlist
* ci(env): ratchet production variable count
* fix(env): remove stale provider helper import
* fix(env): make ratchet sorting explicit
* test(env): keep test seam in dead-code audit
* test(env): cover ratchet growth and boundary; document surface budgets
* docs(config): document tier-eval consolidations
* docs(config): clarify speech preference ownership
* test(memory): align retired tuning fixtures
* refactor(memory): freeze engine heuristics
* refactor(config): apply tier-eval tranche
* refactor(tts): move persona shaping to providers
* refactor(compaction): move prompt policy to providers
* test(config): align hookified prompt fixtures
* chore(deadcode): classify test-only exports
* chore(github): remove unused spawn helper
* chore(deadcode): classify queue diagnostics
* chore(deadcode): remove unused lane snapshot export
* chore(plugin-sdk): ratchet consolidated surface
* fix(config): integrate latest main after rebase
2026-07-21 20:28:43 -07:00
Peter Steinberger
c7e7ac2728
refactor: remove expired plugin compatibility surfaces ( #111451 )
...
* docs(secrets): remove retired web credential paths
* refactor(web): remove retired provider compatibility paths
* refactor(providers): delete retired compatibility routes
* refactor(secrets): remove retired credential aliases
* refactor(plugin-sdk): delete retired compatibility surfaces
* docs(plugin-sdk): remove retired migration guidance
* chore(plugin-sdk): refresh rebased surface budgets
* chore(plugin-sdk): refresh API removal baseline
* refactor(compat): migrate retired internal callers
* chore(plugin-sdk): refresh current-main baselines
* test(config): migrate plugin-owned secret assertions
* test(gateway): narrow plugin secret refs
* fix(plugin-sdk): preserve private boundary type identity
* chore(compat): remove stale sweep references
* chore(lint): lower max-lines budget
* refactor(secrets): remove unused web helper
* build(plugin-sdk): drop removed compat entries
* chore(plugin-sdk): refresh rebased API baseline
* chore(plugin-sdk): use Linux API baseline hash
* fix(plugin-sdk): preserve private bundled build entries
* fix(plugin-sdk): package private runtime facades
* fix(plugins): preserve external credential contracts
2026-07-19 11:04:48 -07:00
Peter Steinberger
7bf80dc2c6
chore(tooling): enforce formatting and refresh TypeScript checks ( #104239 )
...
* chore(tooling): enforce current formatter and refresh checks
* chore(tooling): keep release changelog formatter-owned
* chore(tooling): retain compatible Node type surface
* ci: enforce formatting for docs-only changes
* ci: isolate docs formatter check
* chore(tooling): apply updated lint and format rules
* chore(tooling): satisfy updated switch lint
* style(ui): apply Linux formatter layout
* test(doctor): match quiet local audio contribution
* test(doctor): assert quiet output only
* test(doctor): follow restored information contract
2026-07-11 01:09:51 -07:00
soldforaloss
200e1df007
fix(exa): cache disabled content options separately ( #103653 )
...
* fix(exa): partition cache by disabled content options
* fix(exa): align cache keys with effective contents
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-11 10:25:22 +08:00
Dallin Romney
8c5f45fc36
refactor(shared): consolidate provider and utility lazy loaders ( #98749 )
...
* refactor(shared): consolidate provider lazy loaders
* refactor(shared): leave enforcement to follow-up
2026-07-02 21:16:26 -07:00
Alix-007
605aede38c
fix(exa): bound untrusted search JSON response reads ( #96038 )
...
Exa search success responses were read via an unbounded `await
response.json()`, so a misbehaving or hostile endpoint could stream an
arbitrarily large body into memory before parsing. Read the success
body through the shared bounded reader (16 MiB cap, the same limit other
bundled providers use) and cancel the stream on overflow. This mirrors
the error-body bound already in place and the #95103/#95108 response
-limit campaign on the success-JSON side.
AI-assisted.
2026-06-24 10:57:37 -04:00
Vincent Koc
1e53ee4fd5
fix(exa): bound search error bodies
2026-06-19 19:18:38 +02:00
Peter Steinberger
4fa5092cdc
docs: document small extension sources
2026-06-04 21:02:07 -04:00
Peter Steinberger
d095d1663b
fix(exa): reject non-decimal search counts
2026-05-29 06:49:23 -04:00
Peter Steinberger
59d4327698
fix: validate web search count integers
2026-05-28 18:38:39 -04:00
Peter Steinberger
4f4d108639
chore(lint): remove underscore-dangle allow list ( #83542 )
...
* chore(lint): reduce underscore-dangle exceptions
* chore(lint): reduce more underscore exceptions
* chore(lint): remove underscore-dangle allow list
* fix(lint): repair underscore cleanup regressions
* test(lint): track version define suppression
2026-05-18 14:56:06 +01:00
Vincent Koc
31bfe7f084
fix(web-search): wrap malformed provider json
2026-05-15 09:04:20 +08:00
Shakker
748788177b
test: tighten exa provider assertions
2026-05-11 08:18:30 +01:00
Shakker
0aac9e8758
test: clear exa broad matcher
2026-05-10 16:39:14 +01:00
Peter Steinberger
827b0de0ce
refactor: reduce plugin sdk surface
2026-05-10 12:37:10 +01:00
Peter Steinberger
92c702b97a
test: tighten provider config helper assertions
2026-05-08 20:52:17 +01:00
Shakker
b7bdcaeb88
test: tighten web search provider assertions
2026-05-08 18:58:20 +01:00
Peter Steinberger
12342ed0e8
fix(web-search): support Exa baseUrl
2026-05-02 06:06:40 +01:00
Peter Steinberger
98ba5fd952
fix(extensions): type web search onboarding scopes
2026-04-20 22:14:50 +01:00
Peter Steinberger
0324114293
refactor: share exa web search provider base
2026-04-20 22:05:39 +01:00
Peter Steinberger
1f1ff0567a
refactor(lint): reduce map spread patterns
2026-04-18 19:27:43 +01:00
Peter Steinberger
a7e029fde9
refactor: cache provider tool runtimes
2026-04-18 19:05:00 +01:00
Gustavo Madeira Santana
b1c032245c
test: lazy-load exa web search runtime
...
Keep Exa provider registration metadata-light and move request,
cache, validation, and test helpers behind a runtime seam.
2026-04-17 18:01:58 -04:00
Gustavo Madeira Santana
a464f5926b
Secrets: avoid broad web search discovery for single plugin config
...
Add an Exa web-search contract artifact and use single bundled plugin-scoped webSearch config as a provider hint. This keeps runtime secret resolution on metadata-only surfaces instead of importing full provider tool implementations.
2026-04-17 13:38:24 -04:00
Peter Steinberger
5fa3b8d7a0
refactor: dedupe provider trimmed readers
2026-04-08 00:09:41 +01:00
Peter Steinberger
b39c7eece6
refactor: dedupe extension lowercase readers
2026-04-07 12:18:01 +01:00
Peter Steinberger
86361f4fca
fix: restore ci after rebase drift
2026-04-07 08:40:35 +01:00
Vincent Koc
d88eb0e031
fix(exa): show Exa in setup pickers
2026-04-06 23:09:46 +01:00
Peter Steinberger
af62a2c2e4
style: fix extension lint violations
2026-04-06 14:53:55 +01:00
Peter Steinberger
73ead2425b
test: drop redundant web search registration smokes
2026-04-01 02:57:08 +01:00
Peter Steinberger
83591fabfb
test: consolidate plugin provider suites
2026-03-25 00:42:09 +00:00
Peter Steinberger
6f6468027a
refactor: dedupe test and runtime seams
2026-03-24 23:33:30 +00:00
Vincent Koc
a45ebf74bb
fix(web-search): align Exa plugin with current API
2026-03-22 21:16:08 -07:00
Vincent Koc
ee749b520e
fix(exa): align freshness typing and config docs
2026-03-22 21:10:49 -07:00
Vincent Koc
1042b59471
feat(web-search): add bundled Exa plugin ( #52617 )
2026-03-22 20:57:33 -07:00