@githolon/dsl 0.105.18 → 0.105.22
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/dart/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## 0.64.36
|
|
2
|
+
|
|
3
|
+
- Restaged with the current kernel candidate: regenerated vendored assets (kernel release identity is baked into them). Published pub.dev archives are immutable, so regenerated bytes ride their own version.
|
|
4
|
+
|
|
5
|
+
## 0.64.35
|
|
6
|
+
|
|
7
|
+
- Match application home birth certificates to the locally sealed parent offer's CAS-as-law verification verdict.
|
|
8
|
+
|
|
9
|
+
## 0.64.34
|
|
10
|
+
|
|
11
|
+
- Keep the typed birth certificate on the birth offer only, so preliminary signer enrolment can settle before generated business APIs open.
|
|
12
|
+
|
|
1
13
|
## 0.64.33
|
|
2
14
|
|
|
3
15
|
- Converge arbitrary historical generated-model backlogs while failing a genuinely repeated immutable lifecycle step with a typed stall error.
|
|
@@ -7458,6 +7458,12 @@ function createWasmKernelProvider({ span } = {}) {
|
|
|
7458
7458
|
return createWasmEnginePlane({ span }).providerFor();
|
|
7459
7459
|
}
|
|
7460
7460
|
|
|
7461
|
+
// src/offer_args.ts
|
|
7462
|
+
function withoutBirthCertificate(args) {
|
|
7463
|
+
const { birthCertificate: _birthCertificate, ...rest } = args;
|
|
7464
|
+
return rest;
|
|
7465
|
+
}
|
|
7466
|
+
|
|
7461
7467
|
// src/_adapter/custody-transport.ts
|
|
7462
7468
|
var enc3 = new TextEncoder();
|
|
7463
7469
|
var dec3 = new TextDecoder();
|
|
@@ -8509,6 +8515,37 @@ function createSerializedScheduler() {
|
|
|
8509
8515
|
// src/intent_offer_codec.ts
|
|
8510
8516
|
var encoder = new TextEncoder();
|
|
8511
8517
|
|
|
8518
|
+
// src/domain_readiness.ts
|
|
8519
|
+
async function prepareDomainUntilReady({
|
|
8520
|
+
domain,
|
|
8521
|
+
packageHash,
|
|
8522
|
+
directiveId,
|
|
8523
|
+
warm,
|
|
8524
|
+
timeoutMs = 3e4,
|
|
8525
|
+
yieldEvery = 32,
|
|
8526
|
+
now = Date.now,
|
|
8527
|
+
yieldHost = () => new Promise((resolve) => setTimeout(resolve, 0)),
|
|
8528
|
+
onQuantum
|
|
8529
|
+
}) {
|
|
8530
|
+
if (!domain || !packageHash) return { prepared: false, reason: "invalid-target", quanta: 0 };
|
|
8531
|
+
const selector = directiveId ? `plan:offer:${domain}:${directiveId}` : `plan:domain:${domain}`;
|
|
8532
|
+
const deadlineAt = now() + timeoutMs;
|
|
8533
|
+
let quanta = 0;
|
|
8534
|
+
while (now() <= deadlineAt) {
|
|
8535
|
+
quanta += 1;
|
|
8536
|
+
const progress = await warm();
|
|
8537
|
+
onQuantum?.(progress);
|
|
8538
|
+
if (progress.preparedCommandDomain === domain && progress.preparedCommandPackage === packageHash && progress.preparedCommandSelector === selector) {
|
|
8539
|
+
return { prepared: true, quanta };
|
|
8540
|
+
}
|
|
8541
|
+
if (progress.maintenancePending !== true) {
|
|
8542
|
+
return { prepared: false, reason: "maintenance-exhausted", quanta };
|
|
8543
|
+
}
|
|
8544
|
+
if (quanta % Math.max(1, yieldEvery) === 0) await yieldHost();
|
|
8545
|
+
}
|
|
8546
|
+
return { prepared: false, reason: "deadline-exceeded", quanta };
|
|
8547
|
+
}
|
|
8548
|
+
|
|
8512
8549
|
// src/index.ts
|
|
8513
8550
|
var enc4 = new TextEncoder();
|
|
8514
8551
|
var dec4 = new TextDecoder();
|
|
@@ -9077,30 +9114,31 @@ ${String(commit).toLowerCase()}`;
|
|
|
9077
9114
|
scheduleMaintenanceSoon();
|
|
9078
9115
|
};
|
|
9079
9116
|
const prepareDomainReady = async (domain, packageHash, directiveId) => {
|
|
9080
|
-
if (!domain || !packageHash) return { prepared: false };
|
|
9081
9117
|
requestDomainMaintenance(domain, packageHash, directiveId);
|
|
9082
|
-
const
|
|
9083
|
-
|
|
9084
|
-
|
|
9118
|
+
const readiness = await prepareDomainUntilReady({
|
|
9119
|
+
domain,
|
|
9120
|
+
packageHash,
|
|
9121
|
+
directiveId,
|
|
9122
|
+
warm: () => serialize(async () => JSON.parse(call("query", { queryBytes: qBytes({
|
|
9085
9123
|
op: "warm",
|
|
9086
9124
|
interactiveOnly: true,
|
|
9087
9125
|
requestedDomain: domain,
|
|
9088
9126
|
...directiveId ? { requestedDirective: directiveId } : {},
|
|
9089
9127
|
requestedPackage: packageHash
|
|
9090
|
-
}) })), "prepare generated domain", false)
|
|
9091
|
-
|
|
9092
|
-
|
|
9093
|
-
|
|
9094
|
-
|
|
9095
|
-
const index = _maintenanceTargets.findIndex(
|
|
9096
|
-
(target) => target.domain === domain && target.packageHash === packageHash && target.directiveId === directiveId
|
|
9097
|
-
);
|
|
9098
|
-
if (index >= 0) _maintenanceTargets.splice(index, 1);
|
|
9099
|
-
return { prepared: true };
|
|
9128
|
+
}) })), "prepare generated domain", false),
|
|
9129
|
+
onQuantum: (result) => {
|
|
9130
|
+
if (typeof process !== "undefined" && process.env?.NOMOS_DEBUG_RAW) {
|
|
9131
|
+
console.error("[nomos] generated domain readiness quantum", result);
|
|
9132
|
+
}
|
|
9100
9133
|
}
|
|
9101
|
-
|
|
9134
|
+
});
|
|
9135
|
+
if (readiness.prepared) {
|
|
9136
|
+
const index = _maintenanceTargets.findIndex(
|
|
9137
|
+
(target) => target.domain === domain && target.packageHash === packageHash && target.directiveId === directiveId
|
|
9138
|
+
);
|
|
9139
|
+
if (index >= 0) _maintenanceTargets.splice(index, 1);
|
|
9102
9140
|
}
|
|
9103
|
-
return
|
|
9141
|
+
return readiness;
|
|
9104
9142
|
};
|
|
9105
9143
|
const scheduleMaintenanceSoon = (delayMs = 0) => {
|
|
9106
9144
|
if (_disposed || _maintenanceTimer !== null || _maintenanceInFlight) return;
|
|
@@ -10008,7 +10046,7 @@ ${String(commit).toLowerCase()}`;
|
|
|
10008
10046
|
};
|
|
10009
10047
|
writeWork(`envelope-${es}.json`, enc4.encode(stringifyBig(enrollEnvelope)));
|
|
10010
10048
|
const enrollment = JSON.parse(authorViaOffer({
|
|
10011
|
-
...authorArgs,
|
|
10049
|
+
...withoutBirthCertificate(authorArgs),
|
|
10012
10050
|
directiveId: "enrollSigner",
|
|
10013
10051
|
envelopeFile: `/work/envelope-${es}.json`,
|
|
10014
10052
|
seq: es
|
|
@@ -10219,7 +10257,9 @@ ${String(commit).toLowerCase()}`;
|
|
|
10219
10257
|
try {
|
|
10220
10258
|
const readiness = await prepareDomainReady(domain, candidateHash);
|
|
10221
10259
|
if (readiness.prepared !== true) {
|
|
10222
|
-
throw new Error(
|
|
10260
|
+
throw new Error(
|
|
10261
|
+
`the current model '${candidateHash}' authenticated '${domain}' USDA slice did not become ready (${readiness.reason} after ${readiness.quanta} maintenance quanta)`
|
|
10262
|
+
);
|
|
10223
10263
|
}
|
|
10224
10264
|
return { ok: true, stage: "promoted" };
|
|
10225
10265
|
} catch (error) {
|
|
@@ -10267,7 +10307,9 @@ ${String(commit).toLowerCase()}`;
|
|
|
10267
10307
|
const readiness = await prepareDomainReady(domain, candidateHash);
|
|
10268
10308
|
if (readiness.prepared !== true) {
|
|
10269
10309
|
throw Object.assign(
|
|
10270
|
-
new Error(
|
|
10310
|
+
new Error(
|
|
10311
|
+
`the promoted model '${candidateHash}' is active but its authenticated '${domain}' USDA slice did not become ready (${readiness.reason} after ${readiness.quanta} maintenance quanta)`
|
|
10312
|
+
),
|
|
10271
10313
|
{ code: "nomos.model.readiness_failed" }
|
|
10272
10314
|
);
|
|
10273
10315
|
}
|
package/dart/pubspec.yaml
CHANGED
|
@@ -7,7 +7,7 @@ repository: https://github.com/Captain-App/nomos2
|
|
|
7
7
|
description: >-
|
|
8
8
|
Nomos 2 Dart client — generated domain values, intent payloads and application
|
|
9
9
|
lifecycle types over the typed Nomos kernel protocol and USDA custody model.
|
|
10
|
-
version: 0.64.
|
|
10
|
+
version: 0.64.36
|
|
11
11
|
|
|
12
12
|
environment:
|
|
13
13
|
sdk: ^3.5.0
|
package/package.json
CHANGED
|
@@ -6489,6 +6489,12 @@ function createWasmKernelProvider({ span } = {}) {
|
|
|
6489
6489
|
return createWasmEnginePlane({ span }).providerFor();
|
|
6490
6490
|
}
|
|
6491
6491
|
|
|
6492
|
+
// ../cloud/web-client/src/offer_args.ts
|
|
6493
|
+
function withoutBirthCertificate(args) {
|
|
6494
|
+
const { birthCertificate: _birthCertificate, ...rest } = args;
|
|
6495
|
+
return rest;
|
|
6496
|
+
}
|
|
6497
|
+
|
|
6492
6498
|
// ../cloud/web-client/src/_adapter/custody-transport.ts
|
|
6493
6499
|
var enc3 = new TextEncoder();
|
|
6494
6500
|
var dec3 = new TextDecoder();
|
|
@@ -7540,6 +7546,37 @@ function createSerializedScheduler() {
|
|
|
7540
7546
|
// ../cloud/web-client/src/intent_offer_codec.ts
|
|
7541
7547
|
var encoder = new TextEncoder();
|
|
7542
7548
|
|
|
7549
|
+
// ../cloud/web-client/src/domain_readiness.ts
|
|
7550
|
+
async function prepareDomainUntilReady({
|
|
7551
|
+
domain,
|
|
7552
|
+
packageHash,
|
|
7553
|
+
directiveId,
|
|
7554
|
+
warm,
|
|
7555
|
+
timeoutMs = 3e4,
|
|
7556
|
+
yieldEvery = 32,
|
|
7557
|
+
now = Date.now,
|
|
7558
|
+
yieldHost = () => new Promise((resolve) => setTimeout(resolve, 0)),
|
|
7559
|
+
onQuantum
|
|
7560
|
+
}) {
|
|
7561
|
+
if (!domain || !packageHash) return { prepared: false, reason: "invalid-target", quanta: 0 };
|
|
7562
|
+
const selector = directiveId ? `plan:offer:${domain}:${directiveId}` : `plan:domain:${domain}`;
|
|
7563
|
+
const deadlineAt = now() + timeoutMs;
|
|
7564
|
+
let quanta = 0;
|
|
7565
|
+
while (now() <= deadlineAt) {
|
|
7566
|
+
quanta += 1;
|
|
7567
|
+
const progress = await warm();
|
|
7568
|
+
onQuantum?.(progress);
|
|
7569
|
+
if (progress.preparedCommandDomain === domain && progress.preparedCommandPackage === packageHash && progress.preparedCommandSelector === selector) {
|
|
7570
|
+
return { prepared: true, quanta };
|
|
7571
|
+
}
|
|
7572
|
+
if (progress.maintenancePending !== true) {
|
|
7573
|
+
return { prepared: false, reason: "maintenance-exhausted", quanta };
|
|
7574
|
+
}
|
|
7575
|
+
if (quanta % Math.max(1, yieldEvery) === 0) await yieldHost();
|
|
7576
|
+
}
|
|
7577
|
+
return { prepared: false, reason: "deadline-exceeded", quanta };
|
|
7578
|
+
}
|
|
7579
|
+
|
|
7543
7580
|
// ../cloud/web-client/src/index.ts
|
|
7544
7581
|
var enc4 = new TextEncoder();
|
|
7545
7582
|
var dec4 = new TextDecoder();
|
|
@@ -8108,30 +8145,31 @@ ${String(commit).toLowerCase()}`;
|
|
|
8108
8145
|
scheduleMaintenanceSoon();
|
|
8109
8146
|
};
|
|
8110
8147
|
const prepareDomainReady = async (domain, packageHash, directiveId) => {
|
|
8111
|
-
if (!domain || !packageHash) return { prepared: false };
|
|
8112
8148
|
requestDomainMaintenance(domain, packageHash, directiveId);
|
|
8113
|
-
const
|
|
8114
|
-
|
|
8115
|
-
|
|
8149
|
+
const readiness = await prepareDomainUntilReady({
|
|
8150
|
+
domain,
|
|
8151
|
+
packageHash,
|
|
8152
|
+
directiveId,
|
|
8153
|
+
warm: () => serialize(async () => JSON.parse(call("query", { queryBytes: qBytes({
|
|
8116
8154
|
op: "warm",
|
|
8117
8155
|
interactiveOnly: true,
|
|
8118
8156
|
requestedDomain: domain,
|
|
8119
8157
|
...directiveId ? { requestedDirective: directiveId } : {},
|
|
8120
8158
|
requestedPackage: packageHash
|
|
8121
|
-
}) })), "prepare generated domain", false)
|
|
8122
|
-
|
|
8123
|
-
|
|
8124
|
-
|
|
8125
|
-
|
|
8126
|
-
const index = _maintenanceTargets.findIndex(
|
|
8127
|
-
(target) => target.domain === domain && target.packageHash === packageHash && target.directiveId === directiveId
|
|
8128
|
-
);
|
|
8129
|
-
if (index >= 0) _maintenanceTargets.splice(index, 1);
|
|
8130
|
-
return { prepared: true };
|
|
8159
|
+
}) })), "prepare generated domain", false),
|
|
8160
|
+
onQuantum: (result) => {
|
|
8161
|
+
if (typeof process !== "undefined" && process.env?.NOMOS_DEBUG_RAW) {
|
|
8162
|
+
console.error("[nomos] generated domain readiness quantum", result);
|
|
8163
|
+
}
|
|
8131
8164
|
}
|
|
8132
|
-
|
|
8165
|
+
});
|
|
8166
|
+
if (readiness.prepared) {
|
|
8167
|
+
const index = _maintenanceTargets.findIndex(
|
|
8168
|
+
(target) => target.domain === domain && target.packageHash === packageHash && target.directiveId === directiveId
|
|
8169
|
+
);
|
|
8170
|
+
if (index >= 0) _maintenanceTargets.splice(index, 1);
|
|
8133
8171
|
}
|
|
8134
|
-
return
|
|
8172
|
+
return readiness;
|
|
8135
8173
|
};
|
|
8136
8174
|
const scheduleMaintenanceSoon = (delayMs = 0) => {
|
|
8137
8175
|
if (_disposed || _maintenanceTimer !== null || _maintenanceInFlight) return;
|
|
@@ -9039,7 +9077,7 @@ ${String(commit).toLowerCase()}`;
|
|
|
9039
9077
|
};
|
|
9040
9078
|
writeWork(`envelope-${es}.json`, enc4.encode(stringifyBig(enrollEnvelope)));
|
|
9041
9079
|
const enrollment = JSON.parse(authorViaOffer({
|
|
9042
|
-
...authorArgs,
|
|
9080
|
+
...withoutBirthCertificate(authorArgs),
|
|
9043
9081
|
directiveId: "enrollSigner",
|
|
9044
9082
|
envelopeFile: `/work/envelope-${es}.json`,
|
|
9045
9083
|
seq: es
|
|
@@ -9250,7 +9288,9 @@ ${String(commit).toLowerCase()}`;
|
|
|
9250
9288
|
try {
|
|
9251
9289
|
const readiness = await prepareDomainReady(domain, candidateHash);
|
|
9252
9290
|
if (readiness.prepared !== true) {
|
|
9253
|
-
throw new Error(
|
|
9291
|
+
throw new Error(
|
|
9292
|
+
`the current model '${candidateHash}' authenticated '${domain}' USDA slice did not become ready (${readiness.reason} after ${readiness.quanta} maintenance quanta)`
|
|
9293
|
+
);
|
|
9254
9294
|
}
|
|
9255
9295
|
return { ok: true, stage: "promoted" };
|
|
9256
9296
|
} catch (error) {
|
|
@@ -9298,7 +9338,9 @@ ${String(commit).toLowerCase()}`;
|
|
|
9298
9338
|
const readiness = await prepareDomainReady(domain, candidateHash);
|
|
9299
9339
|
if (readiness.prepared !== true) {
|
|
9300
9340
|
throw Object.assign(
|
|
9301
|
-
new Error(
|
|
9341
|
+
new Error(
|
|
9342
|
+
`the promoted model '${candidateHash}' is active but its authenticated '${domain}' USDA slice did not become ready (${readiness.reason} after ${readiness.quanta} maintenance quanta)`
|
|
9343
|
+
),
|
|
9302
9344
|
{ code: "nomos.model.readiness_failed" }
|
|
9303
9345
|
);
|
|
9304
9346
|
}
|
|
@@ -13904,6 +13946,7 @@ async function nomosInternalOpenGeneratedApplication(options, bind, internals =
|
|
|
13904
13946
|
throw applicationError("Sign in changed authority while preparing this application device.", "nomos.authority.changed_during_open");
|
|
13905
13947
|
}
|
|
13906
13948
|
authToken = deviceToken;
|
|
13949
|
+
authorityHolon = await measureOpen("bind attested application device", () => mountAuthority(secret, authToken));
|
|
13907
13950
|
const birthOrRepeat = async () => {
|
|
13908
13951
|
const birth = await measureOpen("establish private application custody", () => authorityHolon.nomosInternalBirthReceivingGroup({
|
|
13909
13952
|
parent: application,
|
|
@@ -1664,8 +1664,8 @@ const NOMOS_TYPES_DEP = "^0.8.7";
|
|
|
1664
1664
|
// 0.48.x: session-bound clients (XClient.bind/NomosClientInterface/DomainClientSessionMismatch/
|
|
1665
1665
|
// DomainNotInstalledForSession, engine.follow, pendingConflicts lanes) — the generated client
|
|
1666
1666
|
// REQUIRES this surface. 0.48.1 fixes NomosSession.watchPendingConflicts delegation.
|
|
1667
|
-
const NOMOS_CLIENT_DEP = "^0.64.
|
|
1668
|
-
const NOMOS_FLUTTER_DEP = "^0.63.
|
|
1667
|
+
const NOMOS_CLIENT_DEP = "^0.64.36";
|
|
1668
|
+
const NOMOS_FLUTTER_DEP = "^0.63.61";
|
|
1669
1669
|
// DRIFT TRIPWIRE: pubspec_pins.test.ts asserts these equal the CURRENT versions in dsl/dart/pubspec.yaml
|
|
1670
1670
|
// and dsl/dart_types/pubspec.yaml — a Dart release without this bump fails the suite, so tenants never
|
|
1671
1671
|
// land back in dependency_overrides (the exact co2 report this closes, third occurrence).
|