feat(release): supercharge — _short_id, duration_ms, exit_code, fix pre-existing breakage, 40 new tests
_short_id() helper: - Handles both sha256:-prefixed and bare-hex commit IDs - Returns sha256:<12-hex> (19 chars) — consistent with all Muse commands - Used everywhere text format showed a commit ID
Text format fixes (pre-existing bug): - commit_id[:8] on sha256:-prefixed IDs yielded 'sha256:a' — just the prefix - All text paths (_format_release, run_list, run_suggest drivers) now use _short_id() - Changelog entries in read/text also fixed
duration_ms + exit_code on every JSON path: - run_add: full ReleaseRecord dict + metadata fields - run_list: {total, releases, duration_ms, exit_code} envelope - run_read: full ReleaseRecord dict + metadata fields - run_push: _ReleasePushJson extended with duration_ms + exit_code - run_delete: _ReleaseDeleteJson extended with duration_ms + exit_code (all 3 status paths) - run_suggest: payload dict extended with duration_ms + exit_code
Pre-existing test breakage fixed (36 → 0 failures): - release show → release read (subcommand was renamed) - list JSON schema: tests expected bare [] array; output is now {total, releases} envelope - j_alias tests: duration_ms varies between runs; compare with key excluded
New tests (40): TestShortId, TestDurationAndExitCode (16 cases across all subcommands), TestTextFormatShortId, TestListJsonEnvelope, TestSecuritySupercharge, TestPerformanceSupercharge
0 comments
muse hub commit comment sha256:94c3b61d43bb71ad9a32df7feff7c3a8b97c408b93ec33cd632344a12e318baf --body "your comment"
No comments yet. Be the first to start the discussion.