loadout-ai 0.3.1 → 0.4.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 (44) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/MASTER_PLAN.md +86 -13
  3. package/README.md +157 -284
  4. package/dashboard/app.js +4 -4
  5. package/dashboard/index.html +4 -4
  6. package/dist/src/cli.js +27 -21
  7. package/dist/src/core/adapters.js +10 -0
  8. package/dist/src/core/adopt.js +165 -32
  9. package/dist/src/core/agent-health-score.js +2 -2
  10. package/dist/src/core/catalog-coverage.js +2 -1
  11. package/dist/src/core/catalog-install.js +8 -1
  12. package/dist/src/core/catalog-release.js +2 -1
  13. package/dist/src/core/conformance.js +74 -0
  14. package/dist/src/core/install.js +36 -3
  15. package/dist/src/core/profiles.js +9 -4
  16. package/dist/src/core/ranking.js +1 -1
  17. package/dist/src/core/readme-claims.js +10 -0
  18. package/dist/src/core/readme-facts.js +40 -0
  19. package/dist/src/core/recommend.js +9 -3
  20. package/dist/src/core/runtime-tools.js +5 -2
  21. package/dist/src/core/scheduler.js +2 -1
  22. package/dist/src/core/snapshot.js +58 -13
  23. package/dist/src/core/state.js +8 -1
  24. package/dist/src/core/transaction.js +2 -1
  25. package/dist/src/core/uninstall.js +26 -2
  26. package/dist/src/dashboard.js +5 -2
  27. package/dist/src/shared/schemas.js +57 -0
  28. package/docs/FEATURE_TEST_MATRIX.md +16 -0
  29. package/docs/README_RESEARCH.md +36 -0
  30. package/docs/RELEASE_REVIEW.md +31 -5
  31. package/docs/REPOSITORY_STABILIZATION.md +190 -0
  32. package/docs/TESTING.md +50 -0
  33. package/docs/USER_TEST_GUIDE.md +26 -0
  34. package/docs/assets/loadout-hero.svg +259 -0
  35. package/docs/assets/loadout-mark.svg +54 -0
  36. package/docs/evidence/live-checks-2026-07-19.json +22 -0
  37. package/docs/evidence/live-checks.schema.json +28 -0
  38. package/docs/evidence/readme-claims.json +286 -0
  39. package/docs/superpowers/plans/2026-07-19-relatable-readme-hero.md +283 -0
  40. package/docs/superpowers/specs/2026-07-19-relatable-readme-hero-design.md +80 -0
  41. package/package.json +8 -4
  42. package/SIMPLE_PLAN.md +0 -44
  43. package/docs/plans/2026-07-18-release-0.3.md +0 -42
  44. package/docs/superpowers/plans/2026-07-18-cli-ux-polish.md +0 -86
package/CHANGELOG.md CHANGED
@@ -1,5 +1,47 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.0 - 2026-07-20
4
+
5
+ ### Added
6
+
7
+ - Add generated, test-enforced README facts and bounded release claims so public
8
+ documentation cannot silently drift away from the shipped catalog, profiles,
9
+ adapters, commands, or verification surface.
10
+ - Add disposable filesystem lifecycle conformance coverage for all 12 configured
11
+ agent adapters and an offline README product journey covering library install,
12
+ activation, inspection, privacy-safe sharing, and rollback.
13
+ - Add a new Loadout visual identity and a proof-first README organized around the
14
+ Choose -> Inspect -> Preview -> Apply -> Undo workflow.
15
+
16
+ ### Changed
17
+
18
+ - Make CI and claim-generation paths portable on Windows, fetch the repository
19
+ history needed by evidence checks, and pin third-party Actions by immutable commit.
20
+ - Consolidate active planning in `MASTER_PLAN.md` and retain completed implementation
21
+ documents only as historical evidence.
22
+
23
+ ### Fixed
24
+
25
+ - Refuse explicit rollback when managed paths changed after a mutation, including
26
+ dashboard restores and unsupported filesystem entries, while retaining automatic
27
+ failed-transaction recovery.
28
+ - Bind adoption to the complete safe skill tree, reject drift and forged plans, and
29
+ record ownership only after verifying the final bytes.
30
+ - Record installed-profile state inside the setup transaction so Stable and other
31
+ profile changes can be rolled back consistently.
32
+
33
+ ## 0.3.2 - 2026-07-18
34
+
35
+ ### Fixed
36
+
37
+ - Treat recursively empty skill directories left by an older removal as unoccupied,
38
+ while continuing to block every directory containing a file, symlink, or other
39
+ unmanaged entry.
40
+ - Re-check target occupancy immediately before copying or replacing files to close the
41
+ preview/apply race.
42
+ - Remove recursively empty managed skill directories during complete uninstall so a
43
+ clean reinstall does not encounter false conflicts.
44
+
3
45
  ## 0.3.1 - 2026-07-18
4
46
 
5
47
  ### Fixed
package/MASTER_PLAN.md CHANGED
@@ -6,13 +6,14 @@ Category: Developer Tools
6
6
  Team size: 3
7
7
  Target submission: July 21, 2026 at 5:00 PM Pacific / July 22 at 4:00 AM Dubai
8
8
 
9
- ## Current remaining work (July 18, 2026)
9
+ ## Current status and remaining work (July 20, 2026)
10
10
 
11
11
  This is the authoritative active list. The long phase history below is retained as
12
- an engineering record, not a command to build every speculative system before users
13
- can test Loadout.
12
+ an archival engineering record, not a second active plan and not a command to build
13
+ every speculative system before users can test Loadout. Completed implementation
14
+ plans and contributor-specific plans have been consolidated here and removed.
14
15
 
15
- ### Required before calling the CLI polished for public testing
16
+ ### Implemented product work
16
17
 
17
18
  - [x] `P18-01 [TERRA]` Make the first CLI screen beginner-readable: a read-only
18
19
  `loadout guide`, concise default library summary, focused first-screen help,
@@ -21,9 +22,6 @@ can test Loadout.
21
22
  - [x] `P18-02 [TERRA]` Make core machine output honest: `catalog --json` returns
22
23
  JSON, and `update --package <id>` checks only that package rather than every
23
24
  tracked installation.
24
- - [ ] `P18-03 [HUMAN+TERRA]` Run the founder acceptance path in
25
- `docs/USER_TEST_GUIDE.md` on the real Codex and Claude profiles. Record each
26
- observed failure and turn reproducible ones into regression tests.
27
25
  - [x] `P18-04 [TERRA]` Bound and explain live network checks in `health --updates`
28
26
  and `watch --once`; they must show progress, a clear timeout, and an actionable
29
27
  result even when a large Maximum library is present.
@@ -36,9 +34,78 @@ can test Loadout.
36
34
  - [x] `P18-07 [TERRA]` Add a concise beginner section to README that links to the
37
35
  testing guide and explains Stable, Power, Maximum, project recommendations,
38
36
  daily discovery, and rollback in plain language.
39
- - [ ] `P18-08 [HUMAN+TERRA]` Run the full verification gate, publish the next npm
40
- patch/minor only after founder acceptance, and test that exact tarball in a
41
- fresh terminal.
37
+ - [x] `P18-15 [TERRA]` Bind material README claims to checked repository evidence,
38
+ add generated facts and adapter lifecycle coverage, test the documented product
39
+ flow, and separate deterministic, live, and human evidence.
40
+ - [x] `P18-16 [TERRA]` Make risky setup previews include every required approval
41
+ flag, reject unknown top-level commands, and make user-requested rollback fail
42
+ closed when files changed after a mutation or when a legacy snapshot lacks
43
+ post-mutation evidence. Internal failed-transaction recovery remains
44
+ authoritative.
45
+ - [x] `P18-19 [SOL+TERRA]` Re-audit the final unmerged development branch before deletion and preserve its
46
+ one valuable adoption-safety intent in the current architecture. Adoption now
47
+ binds the complete safe tree, rejects drift and special entries, records only
48
+ final verified bytes, conservatively attributes catalog review, deep-freezes
49
+ previews, and accepts only the exact same-process planner-issued plan
50
+ (`186daa0`, `09e0e0c`, `3f2cafe`, `10d6109`). No valuable work remains on the
51
+ retired branch; its local and remote copies were deleted after synchronization while
52
+ the user's ignored `.superpowers/` directory was preserved.
53
+ - [x] `P18-20 [SOL+TERRA]` Fix the fresh-clone live Stable rollback regression
54
+ without weakening drift protection. `5f8e38e` records installed-profile state
55
+ inside the catalog transaction before post-mutation evidence and makes the live
56
+ evidence journey roll Stable back before unrelated fixture transactions. An
57
+ unsafe proposal to ignore `state.json` drift was rejected because it could
58
+ orphan later installations.
59
+
60
+ All intended work through P18-20 is on remote `main`, and there are no open PRs. The
61
+ merged `codex/relatable-readme-hero` remote branch remains safe to delete after the
62
+ 0.4.0 release checkpoint.
63
+
64
+ ### Deterministic repository verification
65
+
66
+ - [x] `P18-08 [TERRA]` Run the complete clean-state verification gate after plan and
67
+ documentation consolidation, including formatting, lint, type checking, build,
68
+ evidence checks, unit and integration tests, CLI and README product flows,
69
+ package smoke, performance, dashboard Playwright, package contents, and
70
+ `git diff --check`. The July 20 integrated-main audit passed 113 test files with
71
+ 597 tests passing and one intentionally skipped, both product flows, package
72
+ smoke, the 1,000-skill performance gate at 2.40 seconds p95, and both dashboard
73
+ viewports.
74
+ The additional live Stable gate installed four pinned packages and completed
75
+ state and filesystem rollback assertions at `5f8e38e`.
76
+
77
+ ### Branch cleanup status
78
+
79
+ - [x] Review all unique history on the final unmerged development branch before
80
+ deletion; the adoption gap above was the only remaining valuable intent.
81
+ - [x] Reimplement and regression-test that intent in the current architecture.
82
+ - [x] Complete the second remote synchronization, confirm the four adoption commits
83
+ are reachable from remote `main`, and delete the superseded development
84
+ branches. The temporary worktree was removed and the unrelated ignored
85
+ `.superpowers/` directory was preserved. The later merged README hero branch is
86
+ retained only until the 0.4.0 release checkpoint.
87
+
88
+ ### Human and external work (not provable by local tests)
89
+
90
+ - [ ] `P18-03 [HUMAN+TERRA]` Run the founder acceptance path in
91
+ `docs/USER_TEST_GUIDE.md` on real Codex and Claude profiles. Record each
92
+ observed failure and turn reproducible ones into regression tests.
93
+ - [ ] `P18-13 [HUMAN+TERRA]` Publish `loadout-ai@0.4.0` to npm, then test that exact
94
+ registry tarball in a fresh terminal through Stable -> rollback -> Power ->
95
+ rollback -> Maximum -> project optimization -> dashboard -> complete uninstall.
96
+ The registry exposed versions only through `0.3.1` before this release attempt;
97
+ local package metadata and a Git tag do not prove publication.
98
+ - [ ] `P18-17 [HUMAN]` Resolve the GitHub account billing or spending-limit condition
99
+ that prevents Actions jobs from starting, rerun CI and daily discovery on the
100
+ integrated commit, and record the result. CI runs
101
+ [`29691581581`](https://github.com/VirajMishra1/loadout/actions/runs/29691581581)
102
+ (`4fdc473`) and [`29692535521`](https://github.com/VirajMishra1/loadout/actions/runs/29692535521)
103
+ (`e74ba16`) failed before any step ran; their annotations cite failed recent
104
+ account payments or a spending limit that must be increased. They are external
105
+ runner-account failures, not product-test failures.
106
+ - [ ] `P18-18 [HUMAN]` Decide and configure appropriate `main` branch protection.
107
+ GitHub currently returns 404 for the protection endpoint, so protection is
108
+ absent or not observable; do not describe it as enabled.
42
109
 
43
110
  ### Release 0.3 lifecycle hardening
44
111
 
@@ -52,9 +119,9 @@ can test Loadout.
52
119
  - [x] `P18-12 [TERRA]` Add a pinned Chrome DevTools MCP recipe and distinguish
53
120
  separately billed AI/model API keys from unrelated service credentials. The
54
121
  no-model-key inventory includes GitHub read-only with its token disclosed.
55
- - [ ] `P18-13 [HUMAN+TERRA]` Publish `0.3.1`, then run Stable -> rollback -> Power ->
56
- rollback -> Maximum -> project optimization -> dashboard -> complete uninstall
57
- against the exact npm package.
122
+ - [x] `P18-14 [TERRA]` Treat recursively empty directories from legacy cleanup as
123
+ unoccupied without weakening unmanaged-file protection, and make complete
124
+ uninstall remove empty nested directory shells.
58
125
 
59
126
  ### Explicitly deferred (do not expand during this usability pass)
60
127
 
@@ -66,6 +133,12 @@ can test Loadout.
66
133
  - A universal quality score, social-network scraping, or support claims for an agent
67
134
  that has not passed a real adapter test.
68
135
 
136
+ ## Archived implementation history
137
+
138
+ Sections 1–20 below preserve the original product design, allocation, completed work,
139
+ and deferred exploration. They are historical context. Only the current-status section
140
+ above defines active work.
141
+
69
142
  ## 1. Executive summary
70
143
 
71
144
  Loadout is a universal extension manager for AI coding agents. It detects the agents