super-ux 0.52.2 → 0.52.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.52.3 — the front matter gets read by a parser, not by a regex
4
+
5
+ - **`validate_front_matter_is_yaml` parses all 30 shipped front-matter blocks with PyYAML**
6
+ (`B-033`): 7 `SKILL.md`, 15 commands, 8 `.mdc` mirrors. `front_matter()` reads a block line
7
+ by line and never asks what a YAML parser would, so a `: ` inside an unquoted scalar turns
8
+ the whole block into an invalid mapping and ships anyway — green here, refused by every
9
+ installer that parses YAML, and the hub copy freezes on the previous version. The family
10
+ shipped exactly that twice in twelve days (`sheleg-design` 1.37.4 and 1.58.0, both
11
+ `mapping values are not allowed here`), so the remedy is **ported from the sibling that
12
+ paid for it** rather than reinvented.
13
+ - **The two guards are the ones that history says matter.** It fails **closed** when PyYAML
14
+ is missing, because a guard that discloses and passes when its tool is absent is the hole
15
+ the first fix left open; and it refuses an **empty walk**, because globs that all match
16
+ nothing is a moved directory rather than a clean tree. Both watched: `yaml` blocked at
17
+ import, and the three globs renamed.
18
+ - **`YAML_SELF_TEST` is a permanent plant, not a one-off.** This gate's whole claim is that
19
+ it sees what `front_matter()` cannot; a parser that stopped refusing that shape would leave
20
+ it green on a clean tree forever, so the shape is re-checked on every run.
21
+ - PyYAML installed in both workflows: `setup-python` puts a different interpreter on PATH
22
+ than the runner's system one, which is where PyYAML is preinstalled.
23
+
3
24
  ## 0.52.2 — the evals stop being a promise, and 0.52.1's stowaways get their record
4
25
 
5
26
  - **The eval suite has dated rows instead of a vacant table** (SUX-04, family audit
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "super-ux",
3
- "version": "0.52.2",
3
+ "version": "0.52.3",
4
4
  "scripts": {
5
5
  "test": "python3 test/validate.py && python3 test/brand_lint_test.py && python3 test/ux_lint_test.py && python3 docs/ux/lint.py && python3 docs/brand/lint.py && node test/installer_test.js"
6
6
  },