Skip to content

refactor: delete sprint-init.js --dry-run/--json surfaces (#457) - #464

Merged
sungjunlee merged 2 commits into
mainfrom
feat/457-sprint-init-surfaces
Sep 18, 2026
Merged

sungjunlee merged 2 commits into
mainfrom
feat/457-sprint-init-surfaces

Conversation

@sungjunlee

Copy link
Copy Markdown
Owner

Closes #457. Part of #456.

Keep test: --dry-run / --json / the structured refusal JSON / issueCount / placeholderIssue had no consumer outside tests/; the overlap refusal, COMPONENT_RE validation, scope line, and skeleton are byte-identical. sprint-init.js 372 → 230 lines. Smoke probes that used --dry-run --json now run a real init into their temp dir and read the written file. Implemented by Grok 4.6 (cursor-agent); reviewed by GPT-6 Astra (codex, read-only) before merge.

Verified: node --test green, smoke green, doc-drift OK.

🤖 Generated with Claude Code

https://claude.ai/code/session_01X9gZYk7FcYSLAZBBe7JXvZ

@coderabbitai

coderabbitai Bot commented Sep 18, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: f042ec1e-aff2-45d6-914a-e508ec5bad45


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 18, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-18T00:10:02.808633Z 4c94d59 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a10eaeccc5

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines 53 to +56
// Explicit only (D2): the track axis is never inferred from touched paths.
const trackAxis = parseTrackAxis(filteredArgs);
if (trackAxis.error) return { ...trackAxis, dryRun, json };
return { topic, milestone, dryRun, json, ...trackAxis };
const trackAxis = parseTrackAxis(args);
if (trackAxis.error) return trackAxis;
return { topic, milestone, ...trackAxis };

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reject the removed dry-run flag before creating a sprint

When an existing caller still invokes sprint-init.js topic --dry-run, parseArgs now silently ignores the unrecognized flag and main creates an active sprint file, reversing an explicitly non-mutating command into a mutation. Reject removed/unknown flags so stale callers fail without modifying sprint state.

AGENTS.md reference: AGENTS.md:L39-L41

Useful? React with 👍 / 👎.

sungjunlee and others added 2 commits September 18, 2026 09:07
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X9gZYk7FcYSLAZBBe7JXvZ
Co-authored-by: Cursor <cursoragent@cursor.com>
…estore lost coverage (#457, Astra review)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X9gZYk7FcYSLAZBBe7JXvZ
@sungjunlee

Copy link
Copy Markdown
Owner Author

GPT-6 Astra review (codex, read-only): DO NOT MERGE — P1: retired --dry-run/--json were silently accepted, so a former dry-run call became a real write; P2: valueless --milestone accepted; coverage lost for CLI mutual-exclusion exit code + no-mkdir, existing-file preservation, no-placeholder skeleton, and exact scope line. All applied as a direct fix: unknown --flags and a valueless --milestone are rejected before any effect (regression tests added), the four assertions are restored, and the smoke scope check is an exact-line match. Kept the content field: printResult echoes the skeleton, which the issue lists under Keep. sprint-init.js 372 → 243.

@sungjunlee
sungjunlee force-pushed the feat/457-sprint-init-surfaces branch from a10eaec to 4c94d59 Compare September 18, 2026 00:07
sungjunlee added a commit that referenced this pull request Sep 18, 2026
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X9gZYk7FcYSLAZBBe7JXvZ
@sungjunlee
sungjunlee merged commit 5769eb9 into main Sep 18, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

sprint-init.js: delete --dry-run / --json / structured refusal / vestigial fields

1 participant