also looking at this
fix(cli): let packages.strategy reach its flags, and sync CLAUDE.md's embedded README
#1441
4 files
+182
-64
| @@ -93,6 +93,18 @@ describe('CLI surface', () => { | ||
| 93 | 93 | } |
| 94 | 94 | }, 30000) |
| 95 | 95 | |
| 96 | it('success case - the strategy flag no longer shadows the config', async () => { | |
| 97 | // `--strategy` carried `{ default: 'all' }`, so the option was always | |
| 98 | // "set" and the handler's `options.strategy ?? config.packages?.strategy` | |
| 99 | // chain never reached the config — packages.strategy was dead on the | |
| 100 | // scan/update/check/schedule paths unless a flag was typed. | |
| 101 | const { code, output } = await run(['update', '--help']) | |
| 102 | ||
| 103 | expect(code).toBe(0) | |
| 104 | expect(output).toContain('packages.strategy from config') | |
| 105 | expect(output).not.toContain('(default: all)') | |
| 106 | }, 30000) | |
| 107 | ||
| 96 | 108 | it('failure case - an unknown flag is rejected rather than ignored', async () => { |
| 97 | 109 | // clapp hard-errors on unknown options, which is why a documented-but- |
| 98 | 110 | // unimplemented flag crashed rather than degrading. |