super-ux 0.41.5 → 0.43.0

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 +81 -0
  2. package/package.json +4 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,71 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.43.0 — 2026-08-17
4
+
5
+ **`ux-flows` has told agents to sweep real products before inventing a flow since 0.35.0,
6
+ and no prompt could ask for it.** The body carries the rule — *"Real flows off the shelf,
7
+ before you invent one"*, with Refero read for structure and Mobbin looked at for whether it
8
+ reads — and `references/funnel-research.md` FR-01 collects live competitor funnels. The
9
+ `description` said flows, wireframes and task analysis, so `найди референсы дизайна`,
10
+ `подбери референсы` and `find reference screens` all reached no route at all.
11
+
12
+ The word is now advertised: the funnel clause reads *"read against reference screens from
13
+ products already in the category"*, which says the same thing in fewer characters and makes
14
+ `reference screens` / `референсы` routable.
15
+
16
+ **Why this skill and not the visual one.** `sheleg-design`'s own `DESIGN_SYNC_BRIDGE.md` §4
17
+ opens with *"A reference sweep answers what a good version of this screen contains —
18
+ sections, hierarchy, content order. It never answers what it looks like."* Structure is this
19
+ chain's ground, so the unqualified word lands here; the visual half (`visual reference` /
20
+ `визуальные референсы`) went to `sheleg-design` 1.40.0 in the same pass. A prompt naming both
21
+ — `нужны визуальные референсы` — now raises both routers, which is the wanted answer.
22
+
23
+ **Budget:** 893 → 940 characters, 30 free under the 970 working limit; the rewritten funnel
24
+ clause paid for most of the addition.
25
+
26
+ ## 0.42.0 — 2026-08-17
27
+
28
+ **The pack has carried the growth vocabulary since long before it could be asked for it.**
29
+ Counted across `plugins/super-ux`: **448** mentions of funnels, **499** of onboarding, **493**
30
+ of paywalls, **196** of retention, **171** of activation, **100** of referral. `retention`,
31
+ `onboarding`, `paywall`, `winback`, `lifecycle`, `activation`, `virality` and `referral` are
32
+ first-class tags in the practice taxonomy. `references/funnel-research.md` is 190 lines of
33
+ method, `FR-01`..`FR-07`. And not one of those words appeared in any skill's `description`.
34
+
35
+ That mattered more than it looks, because **a description is a routing surface**. The
36
+ umbrella's prompt hook may only fire on words the skill itself advertises — the fixture that
37
+ enforces it does a literal substring check — so fifteen of fifteen realistic growth prompts
38
+ reached no route at all: `как повысить ретеншн пользователей`, `спроектируй воронку
39
+ активации`, `добавь пейволл после онбординга`, `improve user retention`, `reduce churn on the
40
+ trial`, `add a paywall screen`. Measured by `test/route_coverage.js` in the umbrella.
41
+
42
+ ### Two descriptions, and which word goes where is not a preference
43
+
44
+ `funnel-research.md`'s own `FR-07` already says where each finding lands, so the split follows
45
+ it rather than convenience:
46
+
47
+ | Word | Skill | Why that one |
48
+ |---|---|---|
49
+ | funnel, onboarding, paywall, activation funnel | `ux-flows` | *"The funnel's step chain and its branches → `docs/ux/flows.md`"* — and this skill's body already names the chain (ad → landing → quiz → loading → offer → paywall → checkout → success) |
50
+ | user retention, churn | `ux-foundation` | *"Who the buyer is, what job they are hiring the product for → `foundation.md`"*; a journey covers before, **during and after**, which is where retention is won and churn starts |
51
+
52
+ Neither skill could carry the other's words honestly, which is why the route now fronts two
53
+ skills rather than one.
54
+
55
+ ### The English half is phrases and the Russian half is bare words, and that was measured
56
+
57
+ A first pass advertised the bare `activation` and `retention`. The umbrella's matcher stems
58
+ them to `activat-` and `retent-`, and the probe caught the cost immediately: `activate the
59
+ virtualenv` and `activate the feature flag` routed to `/ux`, and so did `retention policy for
60
+ logs`. The English words became `activation funnel` and `user retention`; «активация» and
61
+ «ретеншн» stayed single words, because nobody here writes «активация» about a virtualenv.
62
+ After the change all three noise cases are silent and every growth prompt still routes.
63
+
64
+ **Budget:** `ux-flows` 592 → 884 characters, `ux-foundation` 401 → 619. Both inside the 970
65
+ working limit with room left, which was the point of not spending it on the bare words.
66
+
67
+ `python3 test/validate.py` → `OK (3500 checks)`; the full gate green.
68
+
3
69
  ## 0.41.5 — 2026-08-16
4
70
 
5
71
  **`copywriting` now answers when somebody asks for a landing page.** The unqualified
@@ -90,6 +156,11 @@ Both are recoveries from the same mistake, and only one of them is safe.
90
156
 
91
157
  ## 0.41.2 — 2026-08-16
92
158
 
159
+ > **Never released on its own.** There is no `v0.41.2` tag and no `0.41.2` on npm,
160
+ > so `npm install super-ux@0.41.2` and `git checkout v0.41.2` both fail. This section
161
+ > describes work that shipped inside a later version. The note is here because
162
+ > the section reads as a release (2026-08-17, umbrella `B-71`).
163
+
93
164
  **A source file is not prose, and the prose rules were reading all of it.** On
94
165
  `sshlg.me`, whose `Sources:` block points `marketing` at `src/data/*.ts`, that
95
166
  produced 20 rhetorical-dash errors inside `//` comments and 7 keyword-stuffing
@@ -144,6 +215,11 @@ buried under twenty false ones.
144
215
 
145
216
  ## 0.41.1 — 2026-08-16
146
217
 
218
+ > **Never released on its own.** There is no `v0.41.1` tag and no `0.41.1` on npm,
219
+ > so `npm install super-ux@0.41.1` and `git checkout v0.41.1` both fail. This section
220
+ > describes work that shipped inside a later version. The note is here because
221
+ > the section reads as a release (2026-08-17, umbrella `B-71`).
222
+
147
223
  **`B024` fined the writer for meeting a threshold this pack sets.** The
148
224
  sentence-case check reads any capitalised word inside a sentence as Title Case,
149
225
  and a contraction of the first person survived every exemption it had: `I'm` is
@@ -1247,6 +1323,11 @@ copy.
1247
1323
 
1248
1324
  ## 0.25.0 — 2026-07-29
1249
1325
 
1326
+ > **Never released on its own.** There is no `v0.25.0` tag and no `0.25.0` on npm,
1327
+ > so `npm install super-ux@0.25.0` and `git checkout v0.25.0` both fail. This section
1328
+ > describes work that shipped inside a later version. The note is here because
1329
+ > the section reads as a release (2026-08-17, umbrella `B-71`).
1330
+
1250
1331
  The catalog knew how to sell inside an app and almost nothing about selling
1251
1332
  on the web. Two funnels were missing: web-to-web (landing → pricing →
1252
1333
  checkout → recurring billing → cancel) had only generic form advice, and
package/package.json CHANGED
@@ -1,6 +1,9 @@
1
1
  {
2
2
  "name": "super-ux",
3
- "version": "0.41.5",
3
+ "version": "0.43.0",
4
+ "scripts": {
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"
6
+ },
4
7
  "description": "Scenario-driven UI development for AI agents (Claude Code, Cursor, 70+ agents): a versioned design chain in docs/ux/, a scenario-first hard rule, a deterministic drift linter, and evidence-backed UX audits. This package is the installer CLI.",
5
8
  "bin": {
6
9
  "super-ux": "bin/super-ux.js"