Commit db47ee5
fix(bundler): normalize the catalog entry id and cover the nested version field
Addresses two review comments.
1. `CatalogEntry.from_dict` still computed `entry_id` with
`str(data.get("id", ""))`, so an explicit `id: null` remained the literal
"None". That is truthy, so `load_catalog_payload` compared it against the
mapping key and reported the wrong error:
before: Catalog entry id mismatch: key 'demo' != entry id 'None'.
after : Catalog entry for 'demo' is missing its 'id' field.
Now routed through `_text` like every other text field.
2. `requires.speckit_version` was switched to `_text` in this PR but only the
seven top-level attributes were tested, so that branch could regress while
the suite still passed. Added a dedicated case.
Mutation-verified: reverting only `entry_id` fails only the null-id test, and
reverting only `requires_speckit_version` fails only the nested-field test --
each pins its own branch.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>1 parent 92d5971 commit db47ee5
2 files changed
Lines changed: 39 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
170 | 170 | | |
171 | 171 | | |
172 | 172 | | |
173 | | - | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
174 | 178 | | |
175 | 179 | | |
176 | 180 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
404 | 404 | | |
405 | 405 | | |
406 | 406 | | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
0 commit comments