behavior-contracts 0.8.8 → 0.8.9
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/behavior.d.ts +12 -0
- package/dist/behavior.d.ts.map +1 -1
- package/dist/behavior.js +60 -41
- package/dist/behavior.js.map +1 -1
- package/dist/generator/emit-shared-typescript.d.ts.map +1 -1
- package/dist/generator/emit-shared-typescript.js +37 -4
- package/dist/generator/emit-shared-typescript.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/behavior.d.ts
CHANGED
|
@@ -313,6 +313,18 @@ export declare class BehaviorFailure extends Error {
|
|
|
313
313
|
detail?: ErrorDetail;
|
|
314
314
|
constructor(code: BehaviorFailureCode, message: string, detail?: ErrorDetail);
|
|
315
315
|
}
|
|
316
|
+
/**
|
|
317
|
+
* conformResultToOutType — ノード結果を宣言 `outType` に照らして検査し、正規化した値を返す公開 seam。
|
|
318
|
+
*
|
|
319
|
+
* run_behavior({@link checkNodeOutTypeIn})と、生成された straight-line / typed TS モジュールが
|
|
320
|
+
* **この 1 箇所を共有**して「node 結果 ≡ 宣言 outType」の正規化を行う(検査の発散も正規化の発散も
|
|
321
|
+
* 作らない — 型消去の TS でも生成コードは runtime でこの SSoT を呼び、run_behavior と byte 一致する)。
|
|
322
|
+
*
|
|
323
|
+
* map ノードの `outType` は**要素型**(scp-error.md「Map element type」)なので、結果型は
|
|
324
|
+
* `{arr: 要素型}`。これは compiler がノード結果参照の型を解決するときの読み方(`type-gate` の
|
|
325
|
+
* `"map" in n ? {arr: ot} : ot`)と同一。map 以外は結果型そのもの。
|
|
326
|
+
*/
|
|
327
|
+
export declare function conformResultToOutType(nodeId: string, value: Value, outType: PortableType, isMapNode: boolean): Value;
|
|
316
328
|
/**
|
|
317
329
|
* FANOUT_DEDUP_DROP — THE ONE dedup/drop definition(behaviorVersion 3)。
|
|
318
330
|
*
|
package/dist/behavior.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"behavior.d.ts","sourceRoot":"","sources":["../src/behavior.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"behavior.d.ts","sourceRoot":"","sources":["../src/behavior.ts"],"names":[],"mappings":"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"}
|
package/dist/behavior.js
CHANGED
|
@@ -213,18 +213,23 @@ function conformFail(code, message, kind, nodeId, field, expected, actual) {
|
|
|
213
213
|
throw new ExprFailure(code, message, detail);
|
|
214
214
|
}
|
|
215
215
|
/**
|
|
216
|
-
* assertConformsToOutType — handler
|
|
216
|
+
* assertConformsToOutType — handler 結果を**宣言された `outType`** に照らして検査し、**その型の値へ
|
|
217
|
+
* 正規化して返す**(scp-error.md の fail-closed 検査 + de-box と同じ正規化)。
|
|
217
218
|
*
|
|
218
219
|
* 宣言は「その値がこうである」という主張であり、検査されなければ主張は無償になる(宣言と実際の
|
|
219
220
|
* handler 結果がずれていても静かに通り、そのまま codegen へ流れる)。ここは runtime が**宣言型と
|
|
220
|
-
* 返り値の両方を持つ唯一の地点**なので、Error Value(scp-error.md)はここで生成する。silent
|
|
221
|
-
*
|
|
221
|
+
* 返り値の両方を持つ唯一の地点**なので、Error Value(scp-error.md)はここで生成する。silent
|
|
222
|
+
* pass-through はしない。
|
|
222
223
|
*
|
|
223
|
-
* 意味論は typed/native emitter の
|
|
224
|
-
*
|
|
225
|
-
* - `float` は int も受けて widen
|
|
226
|
-
*
|
|
227
|
-
* - `opt` は null
|
|
224
|
+
* 意味論は typed/native emitter の de-box と**厳密に一致**させる(両面が発散すると「生成コード ≡
|
|
225
|
+
* run_behavior」の等価不変則が壊れる)。検査だけでなく**値も de-box と同じ形に正規化して返す**:
|
|
226
|
+
* - `float` は int も受けて **値を float へ widen** する(de-box の `ParseFloat` と同一 —
|
|
227
|
+
* 整数値は float で厳密表現できる)。整数のまま返すと de-box(float)と発散する。
|
|
228
|
+
* - `opt` は null を許す。**宣言 obj フィールドのキーが欠落**しているとき、その型が `opt` なら
|
|
229
|
+
* 「値が無い」= null として materialize する(de-box の absent→None と同一・MISSING_PROP に
|
|
230
|
+
* しない)。required フィールドの欠落は MISSING_PROP のまま。
|
|
231
|
+
* - `obj` は宣言フィールドを検査し、未宣言の余剰キーはそのまま通す(de-box は読まないが、
|
|
232
|
+
* interpreter は従来どおり保持 — 余剰キーの扱いは本 ruling の対象外)。
|
|
228
233
|
*/
|
|
229
234
|
function assertConformsToOutType(nodeId, v, t, field) {
|
|
230
235
|
if (typeof t === "string") {
|
|
@@ -232,82 +237,96 @@ function assertConformsToOutType(nodeId, v, t, field) {
|
|
|
232
237
|
case "string":
|
|
233
238
|
if (typeof v !== "string")
|
|
234
239
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected string, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
235
|
-
return;
|
|
240
|
+
return v;
|
|
236
241
|
case "int":
|
|
237
242
|
if (typeof v !== "bigint")
|
|
238
243
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected int, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
239
|
-
return;
|
|
244
|
+
return v;
|
|
240
245
|
case "float":
|
|
241
|
-
// int を widen
|
|
242
|
-
if (typeof v
|
|
246
|
+
// int を widen して受け、**値を float(number) へ coerce** する(de-box: ParseFloat と同一)。
|
|
247
|
+
if (typeof v === "bigint")
|
|
248
|
+
return Number(v);
|
|
249
|
+
if (typeof v !== "number")
|
|
243
250
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected float, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
244
|
-
return;
|
|
251
|
+
return v;
|
|
245
252
|
case "bool":
|
|
246
253
|
if (typeof v !== "boolean")
|
|
247
254
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected bool, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
248
|
-
return;
|
|
255
|
+
return v;
|
|
249
256
|
case "null":
|
|
250
257
|
if (v !== null)
|
|
251
258
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected null, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
252
|
-
return;
|
|
259
|
+
return v;
|
|
253
260
|
}
|
|
254
261
|
}
|
|
255
262
|
if ("opt" in t) {
|
|
256
263
|
if (v === null)
|
|
257
|
-
return;
|
|
258
|
-
assertConformsToOutType(nodeId, v, t.opt, field);
|
|
259
|
-
return;
|
|
264
|
+
return null;
|
|
265
|
+
return assertConformsToOutType(nodeId, v, t.opt, field);
|
|
260
266
|
}
|
|
261
267
|
if ("arr" in t) {
|
|
262
268
|
if (!Array.isArray(v))
|
|
263
269
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected arr, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
264
|
-
v.
|
|
265
|
-
return;
|
|
270
|
+
return v.map((el, i) => assertConformsToOutType(nodeId, el, t.arr, `${field}[${i}]`));
|
|
266
271
|
}
|
|
267
272
|
if ("map" in t) {
|
|
268
273
|
if (v === null || typeof v !== "object" || Array.isArray(v))
|
|
269
274
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected map, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
275
|
+
const out = {};
|
|
270
276
|
for (const [k, mv] of Object.entries(v))
|
|
271
|
-
assertConformsToOutType(nodeId, mv, t.map, `${field}.${k}`);
|
|
272
|
-
return;
|
|
277
|
+
out[k] = assertConformsToOutType(nodeId, mv, t.map, `${field}.${k}`);
|
|
278
|
+
return out;
|
|
273
279
|
}
|
|
274
|
-
// obj:
|
|
280
|
+
// obj: 宣言フィールドを検査(欠落 opt は null へ materialize、欠落 required は MISSING_PROP)。
|
|
281
|
+
// 未宣言の余剰キーは保持する。
|
|
275
282
|
if (v === null || typeof v !== "object" || Array.isArray(v))
|
|
276
283
|
conformFail("TYPE_MISMATCH", `node '${nodeId}': ${field}: expected obj, got ${wireTypeName(v)}`, "typeMismatch", nodeId, field, t, v);
|
|
277
284
|
const o = v;
|
|
285
|
+
const out = { ...o };
|
|
278
286
|
for (const [k, ft] of Object.entries(t.obj)) {
|
|
279
|
-
if (!Object.prototype.hasOwnProperty.call(o, k))
|
|
287
|
+
if (!Object.prototype.hasOwnProperty.call(o, k)) {
|
|
288
|
+
// 欠落キー: opt なら「値が無い」= null(de-box の absent→None と同一)。required は MISSING_PROP。
|
|
289
|
+
if (typeof ft === "object" && "opt" in ft) {
|
|
290
|
+
out[k] = null;
|
|
291
|
+
continue;
|
|
292
|
+
}
|
|
280
293
|
conformFail("MISSING_PROP", `node '${nodeId}': ${field}: missing property .${k}`, "missingField", nodeId, `${field}.${k}`, ft, undefined);
|
|
281
|
-
|
|
294
|
+
}
|
|
295
|
+
out[k] = assertConformsToOutType(nodeId, o[k], ft, `${field}.${k}`);
|
|
282
296
|
}
|
|
297
|
+
return out;
|
|
283
298
|
}
|
|
284
299
|
/**
|
|
285
|
-
* ノード結果を**宣言された `outType`**
|
|
286
|
-
*
|
|
287
|
-
* 検査しなければ偽の注記が静かに codegen
|
|
300
|
+
* ノード結果を**宣言された `outType`** に照らして検査し、**正規化した値を返す**(scp-error.md)。
|
|
301
|
+
* 注記の無いノードは検査せず値をそのまま返す(宣言が無ければ主張も無い)。注記があるなら
|
|
302
|
+
* 「この値はこうである」という主張なので検査する — 検査しなければ偽の注記が静かに codegen まで
|
|
303
|
+
* 流れ、どのテストからも見えなくなる。正規化(int→float widen / 欠落 opt→null)は de-box と一致。
|
|
288
304
|
*
|
|
289
305
|
* sync / async の両 runner がこの 1 箇所を共有する(検査の発散を作らない)。
|
|
290
306
|
*/
|
|
291
307
|
function checkNodeOutTypeIn(body, idToIndex, opId, v) {
|
|
292
308
|
const idx = idToIndex.get(opId);
|
|
293
309
|
if (idx === undefined)
|
|
294
|
-
return;
|
|
310
|
+
return v;
|
|
295
311
|
const node = body[idx];
|
|
296
312
|
const t = node.outType;
|
|
297
313
|
if (t === undefined)
|
|
298
|
-
return;
|
|
299
|
-
|
|
314
|
+
return v;
|
|
315
|
+
return conformResultToOutType(opId, v, t, "map" in node);
|
|
300
316
|
}
|
|
301
317
|
/**
|
|
302
|
-
*
|
|
318
|
+
* conformResultToOutType — ノード結果を宣言 `outType` に照らして検査し、正規化した値を返す公開 seam。
|
|
319
|
+
*
|
|
320
|
+
* run_behavior({@link checkNodeOutTypeIn})と、生成された straight-line / typed TS モジュールが
|
|
321
|
+
* **この 1 箇所を共有**して「node 結果 ≡ 宣言 outType」の正規化を行う(検査の発散も正規化の発散も
|
|
322
|
+
* 作らない — 型消去の TS でも生成コードは runtime でこの SSoT を呼び、run_behavior と byte 一致する)。
|
|
303
323
|
*
|
|
304
|
-
* map ノードの `outType` は**要素型**(scp-error.md「Map element type
|
|
324
|
+
* map ノードの `outType` は**要素型**(scp-error.md「Map element type」)なので、結果型は
|
|
305
325
|
* `{arr: 要素型}`。これは compiler がノード結果参照の型を解決するときの読み方(`type-gate` の
|
|
306
|
-
* `"map" in n ? {arr: ot} : ot
|
|
307
|
-
* それ自体 `arr` でも表現できる(要素 `arr(T)` → 結果 `arr(arr(T))`)。map 以外は結果型そのもの。
|
|
326
|
+
* `"map" in n ? {arr: ot} : ot`)と同一。map 以外は結果型そのもの。
|
|
308
327
|
*/
|
|
309
|
-
function
|
|
310
|
-
return
|
|
328
|
+
export function conformResultToOutType(nodeId, value, outType, isMapNode) {
|
|
329
|
+
return assertConformsToOutType(nodeId, value, isMapNode ? { arr: outType } : outType, "result");
|
|
311
330
|
}
|
|
312
331
|
/**
|
|
313
332
|
* Element Error Policy Kind を解決する(scp-error.md「The Element Error Policy」)。
|
|
@@ -579,8 +598,8 @@ export function runBehavior(ir, handlers, input = {}, entry) {
|
|
|
579
598
|
const wrappedExec = (op, bound) => {
|
|
580
599
|
const outcome = exec(op, bound);
|
|
581
600
|
if ("ok" in outcome) {
|
|
582
|
-
|
|
583
|
-
results[op.id] = outcome.ok;
|
|
601
|
+
// outType へ正規化した値を results に載せる(de-box と同じ float widen / 欠落 opt→null)。
|
|
602
|
+
results[op.id] = checkNodeOutType(op.id, outcome.ok);
|
|
584
603
|
}
|
|
585
604
|
return outcome;
|
|
586
605
|
};
|
|
@@ -726,8 +745,8 @@ export async function runBehaviorAsync(ir, handlers, input = {}, entry) {
|
|
|
726
745
|
const wrappedExec = async (op, bound) => {
|
|
727
746
|
const outcome = await exec(op, bound);
|
|
728
747
|
if ("ok" in outcome) {
|
|
729
|
-
|
|
730
|
-
results[op.id] = outcome.ok;
|
|
748
|
+
// outType へ正規化した値を results に載せる(sync runBehavior と同一)。
|
|
749
|
+
results[op.id] = checkNodeOutTypeIn(body, idToIndex, op.id, outcome.ok);
|
|
731
750
|
}
|
|
732
751
|
return outcome;
|
|
733
752
|
};
|
package/dist/behavior.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"behavior.js","sourceRoot":"","sources":["../src/behavior.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"behavior.js","sourceRoot":"","sources":["../src/behavior.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit-shared-typescript.d.ts","sourceRoot":"","sources":["../../src/generator/emit-shared-typescript.ts"],"names":[],"mappings":"AAmCA,OAAO,EASL,KAAK,mBAAmB,EAEzB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"emit-shared-typescript.d.ts","sourceRoot":"","sources":["../../src/generator/emit-shared-typescript.ts"],"names":[],"mappings":"AAmCA,OAAO,EASL,KAAK,mBAAmB,EAEzB,MAAM,mBAAmB,CAAC;AAktC3B;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,mBAA6B,CAAC;AAClE,oFAAoF;AACpF,eAAO,MAAM,QAAQ,YAAQ,CAAC;AAC9B,uDAAuD;AACvD,eAAO,MAAM,YAAY,aAAY,CAAC"}
|
|
@@ -93,6 +93,7 @@ const usage = {
|
|
|
93
93
|
planTypes: false, // Exec/AsyncExec/OpSpec/RelationKind(RunPlan 経路のみ)
|
|
94
94
|
handlerType: false, // Handler/AsyncHandler(handler を呼ぶ component の run_* param 型)
|
|
95
95
|
fanoutDedupDrop: false, // #135: fanout の dedup/drop SSoT(fanoutDedupDrop)を import する
|
|
96
|
+
conformOutType: false, // node 結果を宣言 outType へ正規化する SSoT(conformResultToOutType)を import する
|
|
96
97
|
};
|
|
97
98
|
function resetUsage() {
|
|
98
99
|
for (const k of Object.keys(usage))
|
|
@@ -337,13 +338,25 @@ function emitSeqOpExec(op, plan, ctx, hvars, aw, lines, indent, bindVar, bindRea
|
|
|
337
338
|
const canSkip = meta.canSkip || meta.alwaysSkip;
|
|
338
339
|
const inner = [];
|
|
339
340
|
const bodyIndent = bindVar ? indent + " " : indent;
|
|
341
|
+
// node 結果は宣言 outType へ正規化してから格納する(run_behavior の wrappedExec と同一の SSoT
|
|
342
|
+
// = conformResultToOutType: int→float widen / 欠落 opt→null。型消去の TS でも runtime でこの
|
|
343
|
+
// 正規化を行うことで straight-line 生成 ≡ runBehavior が値レベルで保たれる)。outType 無しは素通し。
|
|
344
|
+
const nodeOut = plan.component.body[i].outType;
|
|
345
|
+
const isMapNode = "map" in plan.component.body[i];
|
|
346
|
+
const conform = (valueExpr) => nodeOut === undefined
|
|
347
|
+
? valueExpr
|
|
348
|
+
: (() => {
|
|
349
|
+
usage.conformOutType = true;
|
|
350
|
+
return `conformResultToOutType(${JSON.stringify(id)}, ${valueExpr}, ${JSON.stringify(nodeOut)}, ${isMapNode})`;
|
|
351
|
+
})();
|
|
340
352
|
// 成功時の格納(ローカル + 進行形 scope)。
|
|
341
353
|
const store = (valueExpr, ind, target) => {
|
|
354
|
+
const stored = conform(valueExpr);
|
|
342
355
|
if (canSkip) {
|
|
343
|
-
target.push(`${ind}${local} = ${
|
|
356
|
+
target.push(`${ind}${local} = ${stored};`, `${ind}${ctx.okFlag.get(id)} = true;`);
|
|
344
357
|
}
|
|
345
358
|
else {
|
|
346
|
-
target.push(`${ind}const ${local}: Value = ${
|
|
359
|
+
target.push(`${ind}const ${local}: Value = ${stored};`);
|
|
347
360
|
}
|
|
348
361
|
if (ctx.scopeVar)
|
|
349
362
|
target.push(`${ind}${ctx.scopeVar}[${JSON.stringify(id)}] = ${local};`);
|
|
@@ -826,6 +839,16 @@ function emitPlanDrivenFn(plan, aw) {
|
|
|
826
839
|
const planLiteral = plan.component.plan ? emitDocLiteral(plan.component.plan, "ts", 1) : "null";
|
|
827
840
|
const output = emitExpr(plan.component.output, SCOPE);
|
|
828
841
|
const relationKinds = plan.opsLiteral.map((o) => (o.relationKind === "connection" ? "connection" : "single"));
|
|
842
|
+
// node 結果 → 宣言 outType の正規化表(id → {t, m})。exec が outcome.ok をこの SSoT で正規化する
|
|
843
|
+
// (逐次経路の store と同一・run_behavior の wrappedExec と同一)。outType 無しノードは表に載らない。
|
|
844
|
+
const outTypeEntries = plan.opsLiteral
|
|
845
|
+
.map((o, i) => {
|
|
846
|
+
const ot = plan.component.body[i].outType;
|
|
847
|
+
return ot === undefined ? null : ` ${JSON.stringify(o.id)}: { t: ${JSON.stringify(ot)}, m: ${"map" in plan.component.body[i]} },`;
|
|
848
|
+
})
|
|
849
|
+
.filter((x) => x !== null);
|
|
850
|
+
if (outTypeEntries.length > 0)
|
|
851
|
+
usage.conformOutType = true;
|
|
829
852
|
const fns = plan.ops
|
|
830
853
|
.map((o) => ` ${JSON.stringify(o.id)}: ${aw === "" ? "" : "async "}()${aw === "" ? ": ExecOutcome" : ": Promise<ExecOutcome>"} => {
|
|
831
854
|
${emitExecFn(o, aw, hvars)}
|
|
@@ -835,7 +858,9 @@ ${emitExecFn(o, aw, hvars)}
|
|
|
835
858
|
const ops: OpSpec[] = ${emitOpsLiteral(plan)};
|
|
836
859
|
const results: Record<string, Value> = {};
|
|
837
860
|
const scope = (): Scope => ({ ...input, ...results });
|
|
838
|
-
const relationKinds: (RelationKind | undefined)[] = ${JSON.stringify(relationKinds)}
|
|
861
|
+
const relationKinds: (RelationKind | undefined)[] = ${JSON.stringify(relationKinds)};${outTypeEntries.length > 0
|
|
862
|
+
? `\n const outTypes: Record<string, { t: PortableType; m: boolean }> = {\n${outTypeEntries.join("\n")}\n };`
|
|
863
|
+
: ""}
|
|
839
864
|
// per-op exec は事前解決した関数表で引く(線形 ID 探索は無い — bc#75)。
|
|
840
865
|
const execs: Record<string, ${aw === "" ? "() => ExecOutcome" : "() => Promise<ExecOutcome>"}> = {
|
|
841
866
|
${fns}
|
|
@@ -844,7 +869,10 @@ ${fns}
|
|
|
844
869
|
const f = execs[op.id];
|
|
845
870
|
if (!f) throw new BehaviorFailure("UNKNOWN_NODE_KIND", \`op '\${op.id}' has no generated exec arm (fail-closed)\`);
|
|
846
871
|
const outcome = ${aw}f();
|
|
847
|
-
if ("ok" in outcome)
|
|
872
|
+
if ("ok" in outcome) {${outTypeEntries.length > 0
|
|
873
|
+
? `\n const ot = outTypes[op.id];\n results[op.id] = ot === undefined ? outcome.ok : conformResultToOutType(op.id, outcome.ok, ot.t, ot.m);`
|
|
874
|
+
: `\n results[op.id] = outcome.ok;`}
|
|
875
|
+
}
|
|
848
876
|
return outcome;
|
|
849
877
|
};
|
|
850
878
|
const run = ${aw}${aw === "" ? "runPlan" : "runPlanAsync"}(${planLiteral}, ops, exec);
|
|
@@ -968,6 +996,8 @@ function emitModule(plans, ctx) {
|
|
|
968
996
|
valueImports.push(`codegenPrimitives as ${CGP}`);
|
|
969
997
|
if (usage.fanoutDedupDrop)
|
|
970
998
|
valueImports.push("fanoutDedupDrop"); // #135: fanout dedup/drop SSoT
|
|
999
|
+
if (usage.conformOutType)
|
|
1000
|
+
valueImports.push("conformResultToOutType"); // node 結果 → 宣言 outType 正規化 SSoT
|
|
971
1001
|
if (usage.runPlan)
|
|
972
1002
|
valueImports.push("runPlan");
|
|
973
1003
|
if (usage.runPlanAsync)
|
|
@@ -982,6 +1012,9 @@ function emitModule(plans, ctx) {
|
|
|
982
1012
|
typeImports.push("Handler", "AsyncHandler");
|
|
983
1013
|
if (usage.planTypes)
|
|
984
1014
|
typeImports.push("AsyncExec", "Exec", "ExecOutcome", "OpSpec", "RelationKind");
|
|
1015
|
+
// RunPlan 経路で outType 正規化表を持つときだけ PortableType 型を使う(逐次経路は値の直呼びのみ)。
|
|
1016
|
+
if (usage.conformOutType && (usage.runPlan || usage.runPlanAsync))
|
|
1017
|
+
typeImports.push("PortableType");
|
|
985
1018
|
typeImports.sort();
|
|
986
1019
|
return `// GENERATED by behavior-contracts common generator (bc#37/#42/#75, straight-line) — DO NOT EDIT.
|
|
987
1020
|
// Input: portable component-graph IR only (scp-ir-architecture.md §5/§7.4).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit-shared-typescript.js","sourceRoot":"","sources":["../../src/generator/emit-shared-typescript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emit-shared-typescript.js","sourceRoot":"","sources":["../../src/generator/emit-shared-typescript.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -43,7 +43,7 @@ export type { CanonicalFailureCode } from "./canonical.js";
|
|
|
43
43
|
export { validateEnvelope, EnvelopeFailure } from "./envelope.js";
|
|
44
44
|
export type { EnvelopeFailureCode } from "./envelope.js";
|
|
45
45
|
export { assertPortable, assertPortableComponentGraph, assertPortableTypeNotation, PORTABLE_EXPR_OPERATORS, PORTABLE_SCALAR_TYPES, PortabilityError, } from "./guard.js";
|
|
46
|
-
export { runBehavior, runBehaviorAsync, BehaviorFailure, fanoutDedupDrop, portableTypeNotation } from "./behavior.js";
|
|
46
|
+
export { runBehavior, runBehaviorAsync, BehaviorFailure, fanoutDedupDrop, portableTypeNotation, conformResultToOutType } from "./behavior.js";
|
|
47
47
|
export type { FanoutDedupDropSpec, PortSchema, PortableType, PortableScalarType, CatalogEntry, CatalogOutput, Catalog, Handler, HandlerCtx, Handlers, AsyncHandler, AsyncHandlers, BehaviorFailureCode, } from "./behavior.js";
|
|
48
48
|
import type { ComponentGraphIR as ComponentGraphIRShape, Component as ComponentShape, BodyNode as BodyNodeShape, ComponentRefNode as ComponentRefNodeShape, MapNode as MapNodeShape, CondNode as CondNodeShape, FanoutNode as FanoutNodeShape } from "./behavior.js";
|
|
49
49
|
declare const IR_BRAND: unique symbol;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,eAAO,MAAM,aAAa;;;;;;;;;CAShB,CAAC;AAEX,4EAA4E;AAC5E,eAAO,MAAM,qBAAqB,EAAG,KAAc,CAAC;AAGpD,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC/H,YAAY,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC3I,YAAY,EACV,iBAAiB,EACjB,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,EACX,SAAS,EACT,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,eAAe,GAChB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,YAAY,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG3D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAClE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -46,7 +46,7 @@ export { validateEnvelope, EnvelopeFailure } from "./envelope.js";
|
|
|
46
46
|
// ── guard(Portability Guard) ────────────────────────────────────────────────
|
|
47
47
|
export { assertPortable, assertPortableComponentGraph, assertPortableTypeNotation, PORTABLE_EXPR_OPERATORS, PORTABLE_SCALAR_TYPES, PortabilityError, } from "./guard.js";
|
|
48
48
|
// ── behavior(component-graph IR + runBehavior) ──────────────────────────────
|
|
49
|
-
export { runBehavior, runBehaviorAsync, BehaviorFailure, fanoutDedupDrop, portableTypeNotation } from "./behavior.js";
|
|
49
|
+
export { runBehavior, runBehaviorAsync, BehaviorFailure, fanoutDedupDrop, portableTypeNotation, conformResultToOutType } from "./behavior.js";
|
|
50
50
|
// ── provenance(出自 token + fingerprint-gated loader — SA1/SA2/SA3/SA7)──────────
|
|
51
51
|
// `fingerprintComponentGraph` は出自ゲート付きの公開版(provenance.ts)。生 JSON からの内部
|
|
52
52
|
// fingerprint(loader / codegen core)は generator/fingerprint.ts の raw を直接使う。
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,gEAAgE;AAChE,oEAAoE;AACpE,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU,EAAE,CAAC,EAAE,6DAA6D;IAC5E,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC,EAAE,8DAA8D;IAC5E,QAAQ,EAAE,CAAC,EAAE,ycAAyc;IACtd,KAAK,EAAE,CAAC,EAAE,kLAAkL;IAC5L,EAAE,EAAE,CAAC,EAAE,mEAAmE;IAC1E,UAAU,EAAE,CAAC,EAAE,yGAAyG;CAChH,CAAC;AAEX,4EAA4E;AAC5E,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAc,CAAC;AAKpD,+EAA+E;AAC/E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG/H,+EAA+E;AAC/E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhF,+EAA+E;AAC/E,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAgB3I,+EAA+E;AAC/E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG9F,+EAA+E;AAC/E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGlE,+EAA+E;AAC/E,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "behavior-contracts",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.9",
|
|
4
4
|
"description": "Language-agnostic runtime core for behavior contracts (dsl-contracts): validateEnvelope / evaluateExpression / renderTemplate / runPlan / canonical serialization. Single source of truth for the shared DSL runtime primitives.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|