githolon 0.103.7 → 0.103.8
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/dist/dev-server.mjs +2 -2
- package/dist/full-cli.mjs +41 -23
- package/package.json +2 -2
package/dist/dev-server.mjs
CHANGED
|
@@ -2595,8 +2595,8 @@ function resolveGatewayOperation(spec, opName, method) {
|
|
|
2595
2595
|
|
|
2596
2596
|
// ../cloud/cloudflare-shell/src/kernel-registry.generated.ts
|
|
2597
2597
|
var DEPLOYED_KERNELS = [
|
|
2598
|
-
{ prefix: "
|
|
2599
|
-
{ prefix: "
|
|
2598
|
+
{ prefix: "171bd538", hash: "171bd538ffccfbf248b2b25962d44676cf78466d5da2dfa32c8618ba5f38bf45", version: "kernel-171bd538", note: "production (this candidate)", features: ["compoundKeys", "capturedReads", "invariantGate", "surfacedMerge", "fieldProvenance", "nullSemantics", "attestedReads", "conflictSnapshots", "ownedAudience"] },
|
|
2599
|
+
{ prefix: "8b521aba", hash: "8b521aba87dd4dd54a81db9c3571c79ec5d0c600f84ca3796379fc5ba098068b", version: "kernel-8b521aba", note: "test-mint (this candidate) \u2014 feature-equivalent to production", features: ["compoundKeys", "capturedReads", "invariantGate", "surfacedMerge", "fieldProvenance", "nullSemantics", "attestedReads", "conflictSnapshots", "ownedAudience"] }
|
|
2600
2600
|
];
|
|
2601
2601
|
|
|
2602
2602
|
// ../cloud/cloudflare-shell/src/staged-intents.ts
|
package/dist/full-cli.mjs
CHANGED
|
@@ -2322,7 +2322,7 @@ function recommendedActionSentence(action) {
|
|
|
2322
2322
|
case "recompileClient":
|
|
2323
2323
|
return "recompile the client (githolon compile / npx nomos-compile) against the deployed law";
|
|
2324
2324
|
case "redeployLaw":
|
|
2325
|
-
return "
|
|
2325
|
+
return "let the generated application prove, stage and govern adoption of its packaged law";
|
|
2326
2326
|
case "reauth":
|
|
2327
2327
|
return "re-authenticate (acquire a fresh auth-provider token) and reconnect";
|
|
2328
2328
|
case "quarantineLocalSnapshotAndReclone":
|
|
@@ -5209,7 +5209,7 @@ function lawStatusOf(installed, clientHash) {
|
|
|
5209
5209
|
function lawDriftMessage({ what, workspace, clientHash, installed }) {
|
|
5210
5210
|
const short2 = (h) => `${String(h).slice(0, 12)}\u2026`;
|
|
5211
5211
|
const runs = installed.length ? `runs law ${installed.slice(0, 6).map(short2).join(", ")}${installed.length > 6 ? ` (+${installed.length - 6} more)` : ""}` : "has NO active law installed";
|
|
5212
|
-
return `${what}: this client was generated under law ${short2(clientHash)}, but workspace '${workspace}' ${runs} \u2014 the client and the workspace have drifted (or this domain was never
|
|
5212
|
+
return `${what}: this client was generated under law ${short2(clientHash)}, but workspace '${workspace}' ${runs} \u2014 the client and the workspace have drifted (or this domain was never installed here). The generated application will now prove, stage and govern adoption of its packaged model; if adoption is refused it surfaces a typed model decision instead of requiring application code to deploy law. [law-drift]`;
|
|
5213
5213
|
}
|
|
5214
5214
|
function birthOutcomeFailure(birthOutcomes) {
|
|
5215
5215
|
if (!Array.isArray(birthOutcomes)) return null;
|
|
@@ -5476,7 +5476,12 @@ ${String(commit).toLowerCase()}`;
|
|
|
5476
5476
|
remoteMain = await resolveBranchHead().catch(() => null);
|
|
5477
5477
|
} else {
|
|
5478
5478
|
await writeSkeleton();
|
|
5479
|
-
|
|
5479
|
+
const _remoteStatus = span("receive", "boot: fetch remote status", "cloud-status");
|
|
5480
|
+
try {
|
|
5481
|
+
remoteMain = await fetchRemoteHead();
|
|
5482
|
+
} finally {
|
|
5483
|
+
_remoteStatus.end();
|
|
5484
|
+
}
|
|
5480
5485
|
if (!remoteMain) {
|
|
5481
5486
|
_bootLedger.end();
|
|
5482
5487
|
if (!allowUnborn) throw new Error(`workspace '${workspace}' has no ledger main \u2014 create it first (POST /v2/workspaces/${workspace})`);
|
|
@@ -5499,6 +5504,10 @@ ${String(commit).toLowerCase()}`;
|
|
|
5499
5504
|
let cloudLedgerCache = null;
|
|
5500
5505
|
const watchTicks = /* @__PURE__ */ new Set();
|
|
5501
5506
|
const watchStops = /* @__PURE__ */ new Set();
|
|
5507
|
+
let installedLawRowsCache;
|
|
5508
|
+
const invalidateInstalledLawRows = () => {
|
|
5509
|
+
installedLawRowsCache = void 0;
|
|
5510
|
+
};
|
|
5502
5511
|
let _disposed = false;
|
|
5503
5512
|
const nudgeWatches = () => {
|
|
5504
5513
|
try {
|
|
@@ -5765,25 +5774,29 @@ ${String(commit).toLowerCase()}`;
|
|
|
5765
5774
|
}
|
|
5766
5775
|
};
|
|
5767
5776
|
const installRowsInner = () => {
|
|
5777
|
+
if (installedLawRowsCache !== void 0) return installedLawRowsCache;
|
|
5768
5778
|
try {
|
|
5769
5779
|
const answer = JSON.parse(call("query", { queryBytes: qBytes({ op: "installedLaw" }) }));
|
|
5770
|
-
if (Array.isArray(answer?.domains))
|
|
5771
|
-
|
|
5772
|
-
|
|
5773
|
-
|
|
5774
|
-
|
|
5775
|
-
|
|
5776
|
-
|
|
5777
|
-
|
|
5778
|
-
|
|
5779
|
-
|
|
5780
|
-
|
|
5781
|
-
|
|
5782
|
-
|
|
5783
|
-
|
|
5784
|
-
|
|
5785
|
-
|
|
5786
|
-
|
|
5780
|
+
if (Array.isArray(answer?.domains)) {
|
|
5781
|
+
installedLawRowsCache = answer.domains.map((domain) => ({
|
|
5782
|
+
id: domain.installationId,
|
|
5783
|
+
data: {
|
|
5784
|
+
"spec.domainHash": domain.domainHash,
|
|
5785
|
+
"spec.packageHash": domain.packageHash,
|
|
5786
|
+
"spec.policyAggregate": domain.policyId,
|
|
5787
|
+
"spec.installedBy": domain.installedBy,
|
|
5788
|
+
"spec.authorityScope": domain.authorityScope,
|
|
5789
|
+
"spec.supersedes": domain.supersedes,
|
|
5790
|
+
"spec.lawClosureIdentity": domain.lawClosureIdentity,
|
|
5791
|
+
"spec.dependencies": Array.isArray(domain.dependencies) ? domain.dependencies : [],
|
|
5792
|
+
"spec.domainKeys": Array.isArray(domain.domainKeys) ? domain.domainKeys : [],
|
|
5793
|
+
"status.phase": domain.phase,
|
|
5794
|
+
"status.supersededBy": domain.supersededBy,
|
|
5795
|
+
"metadata.generation": domain.generation
|
|
5796
|
+
}
|
|
5797
|
+
}));
|
|
5798
|
+
return installedLawRowsCache;
|
|
5799
|
+
}
|
|
5787
5800
|
if (typeof process !== "undefined" && process.env?.NOMOS_DEBUG_RAW) {
|
|
5788
5801
|
console.error("[nomos] installedLaw meta-read returned no domains; using legacy projection fallback", answer);
|
|
5789
5802
|
}
|
|
@@ -5793,10 +5806,11 @@ ${String(commit).toLowerCase()}`;
|
|
|
5793
5806
|
}
|
|
5794
5807
|
}
|
|
5795
5808
|
try {
|
|
5796
|
-
|
|
5809
|
+
installedLawRowsCache = JSON.parse(call("query", { queryBytes: qBytes({ kind: "query", queryId: "aggregatesByType", paramsJson: JSON.stringify({ __type: "DomainInstallation" }) }) })) || [];
|
|
5797
5810
|
} catch {
|
|
5798
|
-
|
|
5811
|
+
installedLawRowsCache = null;
|
|
5799
5812
|
}
|
|
5813
|
+
return installedLawRowsCache;
|
|
5800
5814
|
};
|
|
5801
5815
|
const installedLawInner = () => {
|
|
5802
5816
|
const rows = installRowsInner();
|
|
@@ -5966,6 +5980,7 @@ ${String(commit).toLowerCase()}`;
|
|
|
5966
5980
|
}
|
|
5967
5981
|
}
|
|
5968
5982
|
}
|
|
5983
|
+
invalidateInstalledLawRows();
|
|
5969
5984
|
nudgeWatches();
|
|
5970
5985
|
return {
|
|
5971
5986
|
upToDate: false,
|
|
@@ -6597,6 +6612,9 @@ ${String(commit).toLowerCase()}`;
|
|
|
6597
6612
|
created = Array.isArray(res.created) ? res.created : [];
|
|
6598
6613
|
affected = Array.isArray(res.affected) ? res.affected : [];
|
|
6599
6614
|
}
|
|
6615
|
+
if ((domain === "nomos" || domain === "bootstrap") && ["installDomain", "stageDomain", "promoteDomain", "rollbackDomain"].includes(directiveId)) {
|
|
6616
|
+
invalidateInstalledLawRows();
|
|
6617
|
+
}
|
|
6600
6618
|
scheduleMaintenanceSoon();
|
|
6601
6619
|
nudgeWatchesSoon();
|
|
6602
6620
|
const bornFailure = birthOutcomeFailure(res.birthOutcomes);
|
|
@@ -6620,7 +6638,7 @@ ${String(commit).toLowerCase()}`;
|
|
|
6620
6638
|
if (!domain.trim() || !candidateHash.trim()) {
|
|
6621
6639
|
return { ok: false, stage: "preflight", error: "the generated model identity is missing" };
|
|
6622
6640
|
}
|
|
6623
|
-
const candidateInstallation = installRowsInner().find(
|
|
6641
|
+
const candidateInstallation = (installRowsInner() ?? []).find(
|
|
6624
6642
|
(row) => row?.id === `domain-installation:${candidateHash}`
|
|
6625
6643
|
);
|
|
6626
6644
|
const candidatePhase = String(candidateInstallation?.data?.["status.phase"] ?? "");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "githolon",
|
|
3
|
-
"version": "0.103.
|
|
3
|
+
"version": "0.103.8",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "githolon — the Nomos developer CLI: Rails-style generators for @githolon/dsl domains + the package compiler. Kernel-independent.",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@bjorn3/browser_wasi_shim": "0.4.2",
|
|
32
32
|
"@bufbuild/protobuf": "^2.13.0",
|
|
33
|
-
"@githolon/dsl": "^0.103.
|
|
33
|
+
"@githolon/dsl": "^0.103.8",
|
|
34
34
|
"isomorphic-git": "^1.38.4",
|
|
35
35
|
"tsx": "^4.19.2"
|
|
36
36
|
},
|