Skip to content

PROD-2203: remove --preflight-json flag#176

Open
5PK wants to merge 1 commit into
mainfrom
prod-2203-remove-preflight-json
Open

PROD-2203: remove --preflight-json flag#176
5PK wants to merge 1 commit into
mainfrom
prod-2203-remove-preflight-json

Conversation

@5PK

@5PK 5PK commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator

What & why

Follow-up to #168 (now merged). Removes the --preflight-json flag entirely.

During a live --preflight run against real instances, the --preflight-json output turned out not to be cleanly machine-readable: the JSON object was emitted in the middle of the sync's normal stdout logging (welcome banner, download progress, phase summaries), so a consumer could not pipe or parse stdout as JSON. Rather than rework the output channel, we drop the flag and keep the human-readable --preflight table as the only preflight output.

The core --preflight (dry-run preview) feature is unchanged and remains fully working and read-only.

Changes

  • Remove the preflightJson arg (system-args.ts), the State field, and its setState/resetState wiring (state.ts)
  • Remove PreflightReport.toJSON(); print() now always renders the table (preflight-report.ts)
  • Drop the JSON-output unit tests
  • Document the surviving --preflight flag in the README (Sync options table + example) — it was previously undocumented

Testing

  • tsc --noEmit clean
  • No remaining references to preflightJson / --preflight-json / toJSON in source or README
  • Preflight + state + system-args suites pass (138 tests)
  • Live re-check: --preflight still renders the table and stays read-only; --preflight-json is now an unrecognized flag and emits no JSON

🤖 Generated with Claude Code

The --preflight-json output was not cleanly machine-readable: the JSON
object was emitted amid the sync's normal stdout logging (welcome banner,
download progress), so it could not be piped or parsed directly. Rather
than rework the output channel, drop the flag entirely and keep the
human-readable --preflight table as the only preflight output.

- Remove the preflightJson arg, State field, and setState/resetState wiring
- Remove PreflightReport.toJSON(); print() now always renders the table
- Drop the JSON-output unit tests
- Document --preflight in the README Sync options table and examples

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.

1 participant