Commit b562ba1
feat(launcher-standard): require --version mode with machine-greppable format (#173)
## Summary
The launcher-standard requires `--help` but not `--version`, so
launchers
had no obligation to emit a version string. Result: field bug reports
consistently lack a build identity ("it's broken on my machine" with no
SHA, no way to bisect, no way to tell two builds apart).
This adds `--version` (and the alias `-V`) to the required meta-modes.
The first line of output MUST follow a machine-greppable format:
\`\`\`
{app-name} {version} ({build-sha-short}) [{platform}]
\`\`\`
Example: `aerie-launcher 0.4.2 (a1b2c3d) [linux-x86_64]`
Additional lines (build date, runtime versions, dep summary) MAY follow.
Exit code MUST be 0 on success.
## Changes
- **`launcher/launcher-standard.a2ml`**: added `--version` to
`[required-modes].meta`; added new `[version-output]` table specifying
the first-line format, an example, exit code, and machine-greppable
flag.
- **`docs/UX-standards/launcher-standard.adoc`**: added a row to the
§Required Modes table describing `--version` / `-V`, the format, and
the rationale.
Both files updated in the same commit per the §Sync requirement and the
lock-step CI gate (PR #172) — this PR is a good first live test of that
gate.
## Test plan
- [x] a2ml parses (python tomllib): `meta = ['--help', '--version']`,
`[version-output]` round-trips with all four fields intact.
- [x] AsciiDoc table renders (visual — added one row, no structural
changes).
- [ ] Lock-step gate (#172) goes green on this PR's first push (both
files in diff).
## Coordination
- Independent of #170, #171, #172. The lock-step gate runs on every PR
touching either of the two group files, so this PR will be one of
the first live exercises of that gate once #172 lands.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent f67d6d5 commit b562ba1
2 files changed
Lines changed: 22 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
170 | 170 | | |
171 | 171 | | |
172 | 172 | | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
173 | 181 | | |
174 | 182 | | |
175 | 183 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
49 | | - | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
50 | 63 | | |
51 | 64 | | |
52 | 65 | | |
| |||
0 commit comments