Commit Graph
8 Commits
Author SHA1 Message Date
jif 7c71783135 Expose executor skills through skill tools (#35184)
## What changed

- Add executor authority support to `skills.list` and `skills.read` for skills from selected capability roots.
- Allow `skills.read` to load package-relative resources referenced by an executor skill while keeping reads within the selected package.
- Paginate skill listings and resource contents with bounded response sizes and stale-cursor validation.
- Resolve executor filesystems per sampling step so skill tools use the active selected capability roots.

## Testing

- Extend the app-server executor skill test to list an executor skill, read its main `SKILL.md`, and read a paginated reference resource.
- Cover visibility filtering, metadata bounds, pagination, invalid cursors, package boundaries, and resource size limits.

GitOrigin-RevId: 1b5de95d5d1b9f79c34d2879d6e67f24401e9c29
2026-07-24 13:46:20 +00:00
jif 51200321eb Add routing-card lexical skill selection (#34581)
## What changed

- Add a bounded `routing_card_exact_v1` selector that ranks normalized exact
  matches across skill names, tool dependencies, short descriptions, and full
  descriptions, with stronger weights for routing-specific fields.
- Run the selector in the shadow selection experiment and include catalog entry
  dependencies in selection documents.
- Report a selection as `selected` when an exact-name match succeeds even if
  the query contains no searchable terms.

## Testing

- Cover dependency ranking, stop-word skill names, exact-term matching, and
  input bounds.

GitOrigin-RevId: dfb0b668d726f64ae5da3b3ce2d8c9b23a664ac0
2026-07-21 17:18:01 +00:00
jif 6915bac7ba Add reciprocal rank fusion skill selection (#34547)
## What changed

- Add a skill selector that uses reciprocal rank fusion to combine the top 50 results from the weighted lexical and character n-gram selectors.
- Prefer candidates supported by both rankings, with deterministic rank and identifier tie-breakers, and propagate truncation metadata from both selectors.
- Include the fused selector in the shadow-selection experiment under `rrf_lexical_char_v1`.

## Testing

- Add unit coverage for cross-ranking support, deterministic tie-breaking, and combined input-bound reporting.

GitOrigin-RevId: 3165136b8729ea3a9484f25c7f2ce0f91fb8aaa9
2026-07-21 13:49:22 +00:00
jif 0f44bca915 Add multi-query lexical skill selection (#33614)
## What changed

- Add a lexical selector that splits compound queries into sentence and connector-delimited views.
- Merge candidates across the full query and its component views, prioritizing their best rank while using full-query rank, view coverage, and stable identifiers as tie-breakers.
- Bound query decomposition and result counts, propagate truncation signals, and include the selector in the shadow-selection experiment.

## Testing

- Add unit coverage for compound-query ranking, single-query compatibility, query splitting, and bounded-input signals.

GitOrigin-RevId: 2442bf7198fc24295cbc270b9d222275ae8a7cc3
2026-07-16 14:42:41 +00:00
jif c983a53f20 Add character n-gram skill selection (#33613)
## What changed

- Add a character n-gram selector that scores matches across skill names, short descriptions, and descriptions using field weights and inverse document frequency.
- Include the selector in the shadow selection experiment alongside the existing lexical selectors.
- Bound query, document, candidate, and result processing, and report query or candidate truncation through the existing selection metadata.

## Testing

Add unit coverage for related word forms, typos, CJK text without word boundaries, and bounded inputs.

GitOrigin-RevId: 4df60cc661338050eeb7741c716bc1c9f730fedd
2026-07-16 14:38:36 +00:00
jif a47c661ea9 Add fielded BM25 to shadow skill selection (#33605)
## What changed

- Add a bounded BM25 selector that ranks skills across name, short-description,
  and description fields, weighting names most heavily and rare terms more highly.
- Run the selector alongside the weighted lexical method in the shadow-selection
  experiment, with deterministic tie-breaking and existing per-method metrics.
- Add unit coverage for field weighting, rare-term ranking, unmatched queries,
  and input limits.
- Remove the implicit-invocation integration test and its telemetry development
  dependency.

GitOrigin-RevId: e5ac6a1f0d6a1f68b194467ef7da48adf4a88d7c
2026-07-16 13:57:47 +00:00
jif 2b0b37abb7 Align shadow skill selection with observable sources (#32768)
## Why

Shadow selection can observe invocations from host and orchestrator skills, but
including executor skills in its candidates can skew the resulting metrics.

## What changed

Limit eligible shadow-selection candidates to enabled, prompt-visible skills
from host or orchestrator sources.

## Testing

Extend the implicit-invocation test to add matching executor candidates and
verify that the host skill remains the selected invocation hit.

GitOrigin-RevId: fd444fe27254b5a880ef5c03c29b5e195127cd97
2026-07-13 11:05:31 +00:00
jif c100109280 Add shadow metrics for lexical skill selection (#32761)
## What changed

- Add an opt-in `skill_search` feature that ranks prompt-visible skills against each turn's user input with a bounded weighted lexical selector.
- Keep the ranked selection out of model-visible context and record metrics for selection cost, catalog reduction, and whether later implicit or `skills.read` invocations matched the ranked candidates.
- Include host-provided skills in the experiment catalog without changing the rendered skill catalog.

## Testing

- Add selector unit tests covering ranking, limits, truncation, stop words, and deterministic tie-breaking.
- Add extension tests covering turn-local invocation recording and host-skill shadow selection.

GitOrigin-RevId: 4d00a1c805ea8b391d6c6ac6a8450afa88ca3e25
2026-07-13 10:38:37 +00:00