feat: add silent CodeDiff CLI dogfooding - #288
Draft
jlitola wants to merge 18 commits into
Draft
Conversation
Split the merged public CLI/MCP phase into a CLI-only dogfood launch and a later agent rollout. Pin the Git-like command contract, validation boundaries, and release impact for the next increment.
Add the workspace-internal request contract for Git-like diff views, exact range parsing, bounded repository-relative globs, and raw option validation without exposing an MCP tool.
Add the workspace-internal data-first success envelope with view-minimal file facts, exact resolution identity, and mandatory path-encoding safety across every CLI view.
Classify bounded CodeDiff resolver failures into the existing CLI error contract while retaining safe recovery metadata and exact partial resolutions.
Render Git-like diff views while keeping completeness and safety diagnostics on stderr.
Register a Git-like code diff surface for CLI dogfooding without adding MCP or agent-facing guidance.
Render familiar per-file bars and totals while identifying returned-only totals when projection is incomplete.
Document the CLI-only rollout, add release impact, and cover help, auth, validation, and live JSON behavior in CLI smoke.
Require the Git-style double-dash boundary for the repository-relative glob and refresh Phase 2 plan status after implementation.
Validate the actual Commander argv suffix and cover valid, trailing-delimiter, and root-delimiter parsing.
Compare the final argv tokens directly so a literal double-dash glob remains valid after the separator.
Use CLI-native validation names, reject Git pathspec magic, align stat formatting, share numeric bounds, mark truncated recovery lists, document backend escaping, and smoke the delimiter contract.
Translate remaining target fields and retain a lower bound when recovery candidates are truncated twice.
Capture the final verification and review evidence while keeping broader post-merge dogfooding as the Phase 3 gate.
Bind raw diff placeholder headers to each authoritative file path, including Git-style /dev/null sides for additions and deletions. Add unit and authenticated smoke regression coverage.
Normalize JSON and text patch headers to authoritative paths, preserve unusual path identities with Git quoting, and suppress unexpectedly non-applicable patch streams while retaining caller-selected bounds.
Accept the live backend patch-budget omission reason and improve diff-specific help, suppression diagnostics, and recovery guidance.
Keep invalid-target help diff-specific while listing the package registries accepted by the target parser.
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
Verification
Preflight, internal runtime review, and retained external Claude review are clean. Broader representative CLI dogfooding remains the post-merge gate before MCP exposure.