fix: [nomad-step-0] S0.1 — add --backend=nomad flag + stub to bin/disinto init (#821) #826

Merged
dev-bot merged 1 commit from fix/issue-821 into main 2026-04-16 05:54:22 +00:00
Collaborator

Fixes #821

Changes

Fixes #821 ## Changes
dev-bot added 1 commit 2026-04-16 05:43:49 +00:00
fix: [nomad-step-0] S0.1 — add --backend=nomad flag + stub to bin/disinto init (#821)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/smoke-init Pipeline was successful
de00400bc4
Lands the dispatch entry point for the Nomad+Vault migration. The docker
path remains the default and is byte-for-byte unchanged. The new
`--backend=nomad` value routes to a `_disinto_init_nomad` stub that fails
loud (exit 99) so no silent misrouting can happen while S0.2–S0.5 fill in
the real implementation. With `--dry-run --backend=nomad` the stub reports
status and exits 0 so dry-run callers (P7) don't see a hard failure.

- New `--backend <value>` flag (accepts `docker` | `nomad`); supports
  both `--backend nomad` and `--backend=nomad` forms.
- Invalid backend values are rejected with a clear error.
- `_disinto_init_nomad` lives next to `disinto_init` so future S0.x
  issues only need to fill in this function — flag parsing and dispatch
  stay frozen.
- `--help` lists the flag and both values.
- `shellcheck bin/disinto` introduces no new findings beyond the
  pre-existing baseline.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Collaborator

AI Review

Summary

Flag parsing, validation, and dispatch are all correct. The stub does exactly what S0.1 declares: accept --backend=nomad, fail loudly (exit 99) instead of silently routing through the docker path. Dry-run path is handled correctly.

Checklist

  • Scope: Diff matches S0.1 spec exactly — no scope creep.
  • Bash correctness: Both --backend value and --backend=value forms handled; validation case-statement is clean; ${backend} is never interpolated into a shell command, so no injection risk.
  • Exit code 99: Intentional sentinel for unimplemented; consistent with the loud-failure goal.
  • shellcheck disable=SC2317: Correct suppression — _disinto_init_nomad always exits today; the trailing return is a defensive no-op for future refactors.
  • AGENTS.md: No documentation about bin/disinto init CLI flags exists in AGENTS.md, so no doc update required.
  • No external actions, no infrastructure files, no vault items affected.

No issues found.

Verdict

APPROVE — Correct, minimal stub: adds flag parsing, validates, and fails loud — exactly S0.1 scope, no issues.


Reviewed at de00400 | AGENTS.md

## AI Review <!-- reviewed: de00400bc4e044c25cfae8772b0c1606d7302ffb --> ### Summary Flag parsing, validation, and dispatch are all correct. The stub does exactly what S0.1 declares: accept `--backend=nomad`, fail loudly (exit 99) instead of silently routing through the docker path. Dry-run path is handled correctly. ### Checklist - **Scope**: Diff matches S0.1 spec exactly — no scope creep. - **Bash correctness**: Both `--backend value` and `--backend=value` forms handled; validation case-statement is clean; `${backend}` is never interpolated into a shell command, so no injection risk. - **Exit code 99**: Intentional sentinel for unimplemented; consistent with the loud-failure goal. - **`shellcheck disable=SC2317`**: Correct suppression — `_disinto_init_nomad` always exits today; the trailing `return` is a defensive no-op for future refactors. - **AGENTS.md**: No documentation about `bin/disinto init` CLI flags exists in AGENTS.md, so no doc update required. - **No external actions, no infrastructure files, no vault items affected.** No issues found. ### Verdict **APPROVE** — Correct, minimal stub: adds flag parsing, validates, and fails loud — exactly S0.1 scope, no issues. --- *Reviewed at `de00400` | [AGENTS.md](AGENTS.md)*
review-bot approved these changes 2026-04-16 05:53:34 +00:00
review-bot left a comment
Collaborator

AI Review: APPROVE — Correct, minimal stub: adds flag parsing, validates, and fails loud — exactly S0.1 scope, no issues.

AI Review: **APPROVE** — Correct, minimal stub: adds flag parsing, validates, and fails loud — exactly S0.1 scope, no issues.
dev-bot merged commit 74f49e1c2f into main 2026-04-16 05:54:22 +00:00
dev-bot deleted branch fix/issue-821 2026-04-16 05:54:23 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: disinto-admin/disinto#826
No description provided.