Skip to content

fix: unify search target state and recovery guidance - #326

Merged
jlitola merged 24 commits into
mainfrom
jlitola/analyze-search-tool-smoke
Aug 31, 2026
Merged

fix: unify search target state and recovery guidance#326
jlitola merged 24 commits into
mainfrom
jlitola/analyze-search-tool-smoke

Conversation

@jlitola

@jlitola jlitola commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Summary

  • render CLI and MCP search state as one outcome-first target list instead of separate progress, unavailable, recovery, and session sections
  • keep target-local Fix: / replayable Try: guidance next to the affected package, repository, or site; reserve one global Next: for session/query continuation
  • collapse healthy results to one token-efficient Sources: row while keeping ranked hits separate and JSON/error envelopes lossless
  • retain concrete documentation provenance as canonical site:<host[/path]> and github:<owner>/<repo>#<revision> locators; avoid the generic docs label when physical provenance is unavailable
  • preserve exact terminal lane reasons, stale/provisional/coverage facts, alternatives, warnings, and active lifecycle/readiness without repeating target identities or searchRef
  • correct multi-target recovery precedence so indexing peers rerun, searched-empty evidence rewrites only when appropriate, and terminal bare reasons never become coordinate retries
  • document canonical Swift/Zig identities and package artifact scope versus public GitHub repository scope; keep backend failure-detail Phase 2 blocked on private #2133

Review closure

  • internal code-review findings are closed
  • the original fresh UX-first Opus loop completed cleanly in three rounds
  • a separate fresh Opus provenance loop used its maximum three rounds; the final pinned-target finding is closed in dcbb9f9, and the final internal changed-delta review found no remaining issue
  • retained provenance reviewer terminal: term_5d5f43f5-27fd-45f2-b08b-4646a3163130

Validation

  • bun test — 3,570 pass, 0 fail; 11,390 expectations
  • bun run typecheck
  • bun run format:check — 439 files
  • bun run lint — 439 files
  • bun run build
  • focused formatter/CLI suite — 153 pass, 0 fail; 560 expectations
  • targeted descriptor-profile Codex agent evaluation — success, high confidence, no instruction issue, no invented search_status action
  • source and built live searches verified the final Express and pinned-repository source shapes
  • all four source/built CLI/MCP smoke modes passed at bc51e67
  • after the final two repository-only provenance fixes, the final CLI smoke attempt stopped before search because the unrelated get_example request timed out after 240 seconds; no retry or weakened assertion was added

The deterministic final-head tests cover the two repository-provenance fixes made after the last complete smoke run.

Keep terminal target failures actionable, preserve symbol and warning provenance, and verify CLI/MCP parity through focused presentation tests.
Document canonical Swift and Zig package identities and the package-versus-repository scope boundary across CLI, MCP, and public skills. Record terminal recovery contracts and the dual-package patch release fragment.
Make CLI repository target help grammatical and tell package-target callers to verify the registry coordinate and version before suggesting repository-wide evidence.
Classify canonical registry targets as packages before repository-resolution fallbacks and keep indexed alternatives actionable for terminal empty results without freshness signals.
Mark Phase 1 complete after deterministic, build, package, plugin, smoke, live, and agent-evaluation validation. Keep private backend issue traceability without publishing repository details and clarify any-entry terminal recovery semantics.
Name the implementation, runtime/preflight, and privacy/wording review commits in the active Phase 1 plan without adding a self-referential bookkeeping commit.
@jlitola jlitola added bug Something isn't working fix documentation Improvements or additions to documentation labels Aug 28, 2026
jlitola added 12 commits August 29, 2026 12:25
Define the single target-state presentation, inline recovery rules, compact output grammar, and verification contract for Phase 1B.
Keep target lifecycle, terminal recovery, and source warnings together in compact CLI and MCP text while leaving JSON lossless.
Record the durable target-state output, release fragment, and Phase 1B completion evidence while keeping Phase 2 blocked.
Remove the obsolete session row and document the single target-state continuation contract across CLI and MCP.
Declare all projected target aliases in the helper return type and compute terminal reasons once per source entry without changing behavior.
Normalize latest package display identities before composing replay targets, retain exact terminal recovery alongside healthy peer hits, and let smoke validators recognize target-local Fix/Try actions as actionable empty results.
Keep target-local terminal reasons visible while returning a global rerun action when no local recovery exists. Remove phantom post-hit separators and align MCP and CLI smoke validation with bare readiness states and terminal reason labels.
Align the active plan with terminal bare-lane rerun semantics, final-head test/build/smoke evidence, runtime closure commits, and the pending Opus follow-up review.
Prioritize indexing peers in completed-empty action selection, keep terminal bare-lane alternatives informational, and remove redundant post-hit spacing. Make smoke readiness grouping assertions discriminate valid grouped state from ungrouped details.
Document multi-target indexing precedence, Opus round-two closure, and final-head validation after the runtime review fixes. Keep the third and final Opus closure round explicitly pending while Phase 2 remains blocked.
Delete the dead terminal-reason branch after the lifecycle cases in target recovery. The control flow and rendered behavior remain unchanged; focused recovery and action coverage continues to pass.
Record the final Opus round, the behavior-neutral unreachable-branch cleanup, and focused closure evidence. Keep final-head validation counts unchanged and leave Phase 2 blocked on the backend contract.
@jlitola jlitola changed the title fix: improve search recovery and target guidance fix: unify search target state and recovery guidance Aug 29, 2026
Render canonical site locators and compact repository revisions in healthy unified-search output. Keep contributor-less documentation in detailed target state instead of inventing a generic compact source.
Use canonical GitHub target syntax, deduplicate standalone source identities, and indent wrapped source continuations. Add direct multi-target coverage for compact provenance grouping.
Keep repository documentation in detailed target state when the backend omits its commit, preventing a mutable locator from replacing a pinned target.
Keep an explicitly pinned repository target beside the resolved commit in compact source provenance while retaining the shorter form for ref-less repository targets.
Document the final source shapes, review closure, agent evaluation, and the unrelated live-smoke timeout without overstating final-head coverage.
Give the container integration test the same timeout budget as other tests that exercise the production PowerShell process-identity probe.
@jlitola
jlitola marked this pull request as ready for review August 31, 2026 10:09
@jlitola
jlitola merged commit b4d40e6 into main Aug 31, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working documentation Improvements or additions to documentation fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant