create-githolon 0.108.7 → 0.110.1
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/index.mjs +3 -3
- package/package.json +1 -1
- package/template/CLAUDE.md +9 -7
- package/template/README.md +9 -10
- package/template/package.json +0 -1
- package/template/tsconfig.json +1 -2
package/index.mjs
CHANGED
|
@@ -17,7 +17,7 @@ var NOMOS_VERSION = (() => {
|
|
|
17
17
|
var args = process.argv.slice(2);
|
|
18
18
|
if (args.includes("-h") || args.includes("--help")) {
|
|
19
19
|
process.stdout.write(
|
|
20
|
-
"create-githolon \u2014 scaffold a Nomos business-law package\n\nUsage:\n npm create githolon <dir> (or: npx create-githolon <dir>)\n\nScaffolds one durable business root, one atomic multi-aggregate intent,\none generated application, and a one-page explanation into <dir>\n(default: my-holon-app).
|
|
20
|
+
"create-githolon \u2014 scaffold a Nomos business-law package\n\nUsage:\n npm create githolon <dir> (or: npx create-githolon <dir>)\n\nScaffolds one durable business root, one atomic multi-aggregate intent,\none generated application, and a one-page explanation into <dir>\n(default: my-holon-app). Compile emits the law and application.\n\nFlags:\n --no-git skip git init\n"
|
|
21
21
|
);
|
|
22
22
|
process.exit(0);
|
|
23
23
|
}
|
|
@@ -67,8 +67,8 @@ Nomos in one page: ${path.join(rel, "README.md")}
|
|
|
67
67
|
Next:
|
|
68
68
|
cd ${rel}
|
|
69
69
|
npm install
|
|
70
|
-
npm run compile # law + generated business application
|
|
71
|
-
npm run
|
|
70
|
+
npm run compile # law + generated business application
|
|
71
|
+
npm run typecheck # check the authored TypeScript
|
|
72
72
|
|
|
73
73
|
The starter exposes one intent: commissionAsset(businessFacts).
|
|
74
74
|
Identity, authorship, persistence, synchronisation, provenance, and recovery stay underneath it.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-githolon",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.110.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Scaffold a Nomos domain package: the starter domain + compile config + live e2e. `npm create githolon my-app`.",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
package/template/CLAUDE.md
CHANGED
|
@@ -16,16 +16,18 @@ Model the business language. Do not recreate Nomos as application infrastructure
|
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
18
|
npm run compile
|
|
19
|
-
npm run
|
|
19
|
+
npm run typecheck
|
|
20
20
|
# After the first deployed model, prove the candidate over copied real custody too:
|
|
21
|
-
npx githolon
|
|
21
|
+
npx githolon test
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
`compile` is the evolution gate. `
|
|
25
|
-
|
|
26
|
-
its custody into a disposable local kernel,
|
|
27
|
-
in that copy, and cold-opens the result.
|
|
28
|
-
|
|
24
|
+
`compile` is the evolution gate. `typecheck` checks the authored TypeScript.
|
|
25
|
+
`githolon test` resolves the workspace already bound in `nomos.project.ts`, copies
|
|
26
|
+
its custody into a disposable local kernel, verifies the existing chain under its recorded eras, derives
|
|
27
|
+
the candidate's current-frontier transition, promotes it only in that copy, and cold-opens the result.
|
|
28
|
+
Stable-id retirements, retypes, or rebinds stop for an explicit `--acceptance-reason`; never invent one.
|
|
29
|
+
Whole-history simulation is an explicitly requested counterfactual and is never an adoption gate. Never
|
|
30
|
+
make deployment the first place a candidate law is executed.
|
|
29
31
|
|
|
30
32
|
If either command exposes framework implementation machinery, treat that as a Nomos defect rather than
|
|
31
33
|
teaching the application to handle it.
|
package/template/README.md
CHANGED
|
@@ -56,12 +56,10 @@ The development loop is one path:
|
|
|
56
56
|
```bash
|
|
57
57
|
npm install
|
|
58
58
|
npm run compile
|
|
59
|
-
npm run
|
|
59
|
+
npm run typecheck
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
`compile` emits the law and generated business application. `
|
|
63
|
-
real local engine, discards resident state, restores it from durable custody, verifies its history, and reads
|
|
64
|
-
the business world back.
|
|
62
|
+
`compile` emits the law and generated business application. `typecheck` checks the authored TypeScript.
|
|
65
63
|
|
|
66
64
|
From the second compile onward, `compile` also compares the candidate with the committed
|
|
67
65
|
`nomos.identity.usda`. Additions and inferred renames pass automatically. A removal, contract change, or
|
|
@@ -82,18 +80,19 @@ export const evolveAssetName = evolution(Asset, "name")
|
|
|
82
80
|
```
|
|
83
81
|
|
|
84
82
|
These files are discovered by compile and editor checks but are never loaded as application plans. Keep the
|
|
85
|
-
updated identity file beside the domain source,
|
|
83
|
+
updated identity file beside the domain source, then compile and typecheck before deployment.
|
|
86
84
|
|
|
87
85
|
Before upgrading an existing application, run the history-shaped proof as well:
|
|
88
86
|
|
|
89
87
|
```bash
|
|
90
|
-
npx githolon
|
|
88
|
+
npx githolon test
|
|
91
89
|
```
|
|
92
90
|
|
|
93
91
|
It uses the workspace binding in `nomos.project.ts` (or accepts a workspace/local-ledger argument), copies
|
|
94
|
-
that custody into the local kernel,
|
|
95
|
-
copy, and proves a cold restart. The source is never
|
|
96
|
-
|
|
92
|
+
that custody into the local kernel, verifies the chain under its recorded eras, derives the candidate's
|
|
93
|
+
current-frontier transition, promotes only in the copy, and proves a cold restart. The source is never
|
|
94
|
+
modified. Stable-id retirements, retypes, or rebinds require an accountable `--acceptance-reason`.
|
|
95
|
+
Whole-history simulation is available only as an explicit counterfactual and never gates adoption.
|
|
97
96
|
|
|
98
97
|
Useful files:
|
|
99
98
|
|
|
@@ -102,7 +101,7 @@ Useful files:
|
|
|
102
101
|
- [`nomos.project.ts`](nomos.project.ts): typed business-law authoring input; it emits the readable USDA law closure and its `.law.usdz` package;
|
|
103
102
|
- [`nomos.application.ts`](nomos.application.ts): application-composition authoring input; only the emitted `.application.usda` travels;
|
|
104
103
|
- `build/application/__APP_DART_NAME___application/`: the sole Flutter application dependency;
|
|
105
|
-
- `build/__APP_NAME__.
|
|
104
|
+
- `build/__APP_NAME__.reception.mjs`: the application's TypeScript Reception (drive it from vitest with `@githolon/testing`).
|
|
106
105
|
|
|
107
106
|
If application code needs to understand workspaces, event sourcing, JWTs, signatures, retries, topology,
|
|
108
107
|
serialization, or merge algorithms, a framework concern has leaked out of Nomos.
|
package/template/package.json
CHANGED
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
"description": "A Nomos business application: public intents over private atomic consequences.",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"compile": "githolon compile ./nomos.project.ts && githolon compile ./nomos.application.ts",
|
|
9
|
-
"proof": "githolon proof",
|
|
10
9
|
"typecheck": "tsc --noEmit"
|
|
11
10
|
},
|
|
12
11
|
"dependencies": {
|