feat: use @ for repository revisions - #396
Merged
Merged
Conversation
Record the verified parser, output, Ask, documentation, and backend rollout boundaries for adopting repository @ref targets.
Make @ref the only repository revision grammar across CLI, MCP, Ask sources, formatters, guidance, and follow-up locators. Reject legacy #ref inputs precisely while preserving package versions and documentation fragments.
Normalize backend repository labels in indexing-estimate progress and remove stale dual-syntax guidance from current agent documentation. Cover initial and replayed search output while preserving package targets and documentation fragments.
Mark only validated repository #ref inputs as legacy revisions. Keep documentation and provider web URLs available to resolve and Ask backend classification while strict target parsers continue rejecting them.
Translate legacy repository ref validation into the CLI argument-error domain so JSON callers retain the standard envelope. Preserve the prior short-SHA display for commit-only repository resolution identities.
Mark the implementation review-clean and record final unit, package, smoke, and Opus review evidence, including the investigated transient auth probe.
Integrate the compact MCP target schema changes from main while preserving the canonical @ref repository grammar, precise legacy migration errors, and updated verification evidence.
Document the verified @ref search labels and the remaining legacy Agentic Ask source output after the backend deployment.
jlitola
marked this pull request as ready for review
September 16, 2026 06:17
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
provider:path@refthe only caller-facing and emitted repository revision grammar across CLI, MCP, shared formatters, Ask/read/search follow-ups, status/replay output, help, docs, public skills, and examples#refinputs with a precise@refmigration while reserving#for documentation fragments@characters inside refs, scoped/package@versioncoordinates, repository-backed docs locators, URL fragments, and pre-existing fuzzy URL classificationVerification
bun test— 4,774 passed, 16,557 assertionsbun run typecheckbun run lint— no errors; eight existing non-null warningsbun run formatbun run buildbun run plugins:generate && bun run plugins:checkbun run validate:packagesbun run smoke:cli— 116 stepsbun run smoke:mcp— 59 stepsbun run smoke:cli:built— 31 stepsbun run smoke:mcp:built— 9 stepsterm_975da2f2-76f3-44b0-b15f-8524d9ca2ca8One settled-code CLI smoke attempt completed 107 steps before a second isolated auth probe returned neither live data nor auth guidance. The identical isolated probe immediately succeeded, and the complete serial rerun passed all four smoke cohorts above. During final integration, one concurrent built-CLI smoke raced package validation while it replaced
dist; a serial rebuild and rerun passed all 31 built-CLI steps.Targeted Claude and Codex agent evals produced no usable qualitative evidence: Codex reached its account usage limit before tool calls, and Claude stopped before artifacts were written. Deterministic descriptor, instruction-parity, workload, smoke, and full-suite coverage passed.
Production verification and rollout dependency
Post-deployment raw-service verification confirmed
@refin repositorytargetLabel,requestedTargetLabel,freshTargetLabel, andservedTargetLabel, plus unchanged@commit/filedocumentation locators. A no-wait indexing probe returned structuredrepoUrl/gitRefprogress without a compact legacy target, and a missing-ref error contained no legacy compact target. Raw Agentic Ask code sources still usedgithub:expressjs/express#<commit>, so the production Ask source producer remains the exact external dependency. This client normalizes those typed sources to@<commit>during rollout. Hosted clients receive the client-side behavior only after@githits/mcpis released,remote-mcpupdates that dependency, and the hosted server is deployed.Base note
Implementation and external review used
origin/mainatfe553ce. The branch then merged currentorigin/mainatdc148c5, preserving #395's compact string-only MCP target schemas while applying the canonical@refgrammar to its descriptors, tests, plan, and pending release fragment.