wholestack 0.5.5 → 0.5.7
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.
- package/README.md +40 -0
- package/dist/chunk-TLYCOIEA.js +9406 -0
- package/dist/cli.js +1207 -53
- package/dist/index.d.ts +594 -1
- package/dist/index.js +1 -1
- package/package.json +15 -11
- package/skills/fix-failing-build.md +38 -0
- package/skills/review-before-ship.md +34 -0
- package/skills/ship-a-saas.md +39 -0
- package/dist/chunk-7NZ77Q7Q.js +0 -5460
package/README.md
CHANGED
|
@@ -43,6 +43,23 @@ on wholestack.ai.
|
|
|
43
43
|
| `-p, --print` | non-interactive, print result and exit |
|
|
44
44
|
| `--zeta-url <url>` | override the engine origin (defaults to https://wholestack.ai) |
|
|
45
45
|
|
|
46
|
+
## Projects — one spine with the web IDE
|
|
47
|
+
|
|
48
|
+
Everything you build (terminal, wholestack.ai/build, /demo) lands in the same
|
|
49
|
+
project list. The terminal can read and write the exact working tree the web
|
|
50
|
+
IDE edits:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
wholestack projects # list your platform projects
|
|
54
|
+
wholestack pull <id> [dir] # download a project's working tree
|
|
55
|
+
wholestack push [dir] # sync local edits back to the web IDE
|
|
56
|
+
wholestack open [buildId] # open a generated build in the web IDE
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
`pull` links the directory via `.wholestack/project.json`, so a later `push`
|
|
60
|
+
(and `open` inside a delivered app) needs no arguments. Pushes skip
|
|
61
|
+
`node_modules`, build output, `.env*` and binaries.
|
|
62
|
+
|
|
46
63
|
## Security verification
|
|
47
64
|
|
|
48
65
|
Run ShipGate's gates on a generated contract:
|
|
@@ -51,6 +68,29 @@ Run ShipGate's gates on a generated contract:
|
|
|
51
68
|
wholestack prove ./contracts MyToken --property conservation
|
|
52
69
|
```
|
|
53
70
|
|
|
71
|
+
## Prove-gate (any repo, in CI)
|
|
72
|
+
|
|
73
|
+
Gate ANY Next.js + Prisma repo — not just generated ones — with the deterministic
|
|
74
|
+
prove-gate. It proves tenant isolation (RLS) and authorization-completeness (no
|
|
75
|
+
unprotected/orphan endpoint) over your code and exits non-zero on `NO_SHIP`, so it
|
|
76
|
+
drops straight into CI as a required status check. Fail-closed: a check that can't
|
|
77
|
+
bind its artifact is reported "not run", never a silent pass.
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
wholestack prove . # gate the checked-out repo; exit 0 = SHIP, 1 = NO_SHIP
|
|
81
|
+
wholestack prove . --json # full machine-readable verdict to stdout
|
|
82
|
+
wholestack prove --remote --github owner/repo --ref <sha> # hosted, HMAC-SIGNED verdict
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
`--remote` returns a verdict signed by the ISL server (HMAC over the canonical
|
|
86
|
+
verdict: `schema · verdict · score · checks · blockingReasons · sourceHash ·
|
|
87
|
+
deepTierTargets`), so a stored or shared verdict can be re-verified offline and any
|
|
88
|
+
tampering with the SHIP/NO_SHIP, score, or blocking reasons is detectable.
|
|
89
|
+
|
|
90
|
+
A ready-to-use GitHub Actions workflow is in
|
|
91
|
+
[`examples/github-actions/isl-prove.yml`](./examples/github-actions/isl-prove.yml) —
|
|
92
|
+
copy it to `.github/workflows/` to block PRs that fail the gate.
|
|
93
|
+
|
|
54
94
|
## Requirements
|
|
55
95
|
|
|
56
96
|
- Node.js ≥ 20
|