Repository navigation
Commit 03b2979
committed
test(migrate): make "a migration owns the prose" enforceable
Follow-up to the N9 fix, turning the lesson into a check rather than a
thing to remember.
A migration that moves, renames or deletes anything under `.taskless/`
makes the files describing that directory wrong from that moment, and it
is the only commit that knows. Every other mechanism runs later than the
moment the fact changed, which is how `rule-tests/` stayed in the
installed README and skill description for two releases after `0005`
deleted it.
The rule is written at the migration registry, where the next person to
add one will be looking, with the three things that follow: update what
describes the directory, refresh this repository's own `.taskless/` and
commit it, and ask whether already-current projects need a version to
reach them at all.
The check is `installed-documentation.test.ts`, and it asks the question
nothing was asking: is the artifact installed in THIS repository the one
this build would write. Not whether a generated file matches its own
generator, which is vacuous — whether the copy on disk was refreshed
after the template changed, which is the step that was missed. It also
names `rule-tests/` and `sg/rules/` directly, so a reintroduction is
caught by what it says and not only by a whole-file comparison.
Verified by reintroducing the stale sentence and confirming both
assertions fail.1 parent 80013b5 commit 03b2979
2 files changed
Lines changed: 91 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
265 | 265 | | |
266 | 266 | | |
267 | 267 | | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
268 | 294 | | |
269 | 295 | | |
270 | 296 | | |
| |||
| 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 | + | |
0 commit comments