Commit d0d2781
fix(cli): migration failures reach the CLI exit code (#3105)
* fix(cli): migration failures reach the CLI exit code
Three reporting-honesty gaps let migrator failures exit 0, so a
`wheels migrate latest && ...` CI gate proceeded as if the schema moved.
The migrate-side sibling of the #2973/#2987 seeder honesty fix.
- migrate latest|up|down: migrateTo() folds a failed up()/down() step into
its returned message ("Error migrating to <version>.") instead of
throwing, so the /wheels/cli bridge reports success:true and the CLI
printed the error inside the green success block at exit 0. runMigration
now detects that signature for the schema-mutating actions and throws.
- db reset --force: the migrate step's catch swallowed the refusal
(ServerNotRunning) / failure with return "" (exit 0). It now rethrows,
matching migrate latest and seed.
- migrate forget|pretend: server-side refusals (not in tracking table,
matching local file exists, already applied, no matching file) came back
success:false but printed red and returned "" (exit 0). They now throw.
Informational dry-run output (missing <version> / missing --yes) still
exits 0.
Two public $-prefixed helpers carry the detection logic so the CLI specs
can unit-test it; the mcpHiddenTools() structural sweep keeps them off the
MCP surface.
Refs #3081
Signed-off-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
* docs(web/guides): note migration failure exit codes in database guide
migrate latest/up/down, db reset --force, and migrate forget/pretend
now exit non-zero on failure or refusal (#3081).
Signed-off-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
* test(cli): drive the db reset refusal spec through the callerArgs path
The gap-2 spec set mod.__arguments externally, which lands in the
component's this scope; structuredArgs()'s unscoped read resolves the
variables scope in the in-server suite, so db() saw zero args, printed
usage help, and returned without throwing. Switch to the
mod.db(arg1, arg2) callerArgs form — the same mechanism DbCommandSpec's
throwing spec uses — and pin the expected Wheels.ServerNotRunning type.
Signed-off-by: Peter Amiri <peter@alurium.com>
---------
Signed-off-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Signed-off-by: Peter Amiri <peter@alurium.com>
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Peter Amiri <peter@alurium.com>1 parent 32380d9 commit d0d2781
4 files changed
Lines changed: 211 additions & 10 deletions
File tree
- changelog.d
- cli/lucli
- tests/specs/commands
- web/sites/guides/src/content/docs/v4-0-0/command-line-tools/wheels-commands
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3941 | 3941 | | |
3942 | 3942 | | |
3943 | 3943 | | |
| 3944 | + | |
| 3945 | + | |
| 3946 | + | |
| 3947 | + | |
| 3948 | + | |
| 3949 | + | |
| 3950 | + | |
| 3951 | + | |
| 3952 | + | |
| 3953 | + | |
| 3954 | + | |
| 3955 | + | |
| 3956 | + | |
| 3957 | + | |
| 3958 | + | |
| 3959 | + | |
| 3960 | + | |
| 3961 | + | |
| 3962 | + | |
| 3963 | + | |
| 3964 | + | |
| 3965 | + | |
| 3966 | + | |
| 3967 | + | |
| 3968 | + | |
| 3969 | + | |
| 3970 | + | |
| 3971 | + | |
| 3972 | + | |
| 3973 | + | |
| 3974 | + | |
| 3975 | + | |
| 3976 | + | |
3944 | 3977 | | |
3945 | 3978 | | |
3946 | 3979 | | |
| |||
3983 | 4016 | | |
3984 | 4017 | | |
3985 | 4018 | | |
| 4019 | + | |
| 4020 | + | |
| 4021 | + | |
| 4022 | + | |
| 4023 | + | |
| 4024 | + | |
| 4025 | + | |
| 4026 | + | |
| 4027 | + | |
| 4028 | + | |
| 4029 | + | |
| 4030 | + | |
| 4031 | + | |
| 4032 | + | |
3986 | 4033 | | |
3987 | 4034 | | |
3988 | 4035 | | |
| |||
4061 | 4108 | | |
4062 | 4109 | | |
4063 | 4110 | | |
4064 | | - | |
4065 | 4111 | | |
4066 | 4112 | | |
4067 | | - | |
4068 | | - | |
4069 | | - | |
4070 | | - | |
| 4113 | + | |
| 4114 | + | |
| 4115 | + | |
| 4116 | + | |
| 4117 | + | |
| 4118 | + | |
| 4119 | + | |
| 4120 | + | |
| 4121 | + | |
| 4122 | + | |
| 4123 | + | |
| 4124 | + | |
| 4125 | + | |
4071 | 4126 | | |
| 4127 | + | |
| 4128 | + | |
4072 | 4129 | | |
4073 | 4130 | | |
4074 | 4131 | | |
| |||
4209 | 4266 | | |
4210 | 4267 | | |
4211 | 4268 | | |
4212 | | - | |
| 4269 | + | |
| 4270 | + | |
| 4271 | + | |
| 4272 | + | |
| 4273 | + | |
| 4274 | + | |
4213 | 4275 | | |
4214 | 4276 | | |
4215 | 4277 | | |
| |||
Lines changed: 138 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
Lines changed: 4 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
60 | | - | |
| 60 | + | |
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
64 | | - | |
| 64 | + | |
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
| 76 | + | |
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
| |||
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
145 | | - | |
| 145 | + | |
146 | 146 | | |
147 | 147 | | |
148 | 148 | | |
| |||
0 commit comments