@principles/core 1.296.0 → 1.296.2
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/principle-tree-ledger.d.ts +24 -4
- package/dist/principle-tree-ledger.d.ts.map +1 -1
- package/dist/principle-tree-ledger.js +201 -24
- package/dist/principle-tree-ledger.js.map +1 -1
- package/dist/runtime-v2/activation/ledger-identity.d.ts +4 -22
- package/dist/runtime-v2/activation/ledger-identity.d.ts.map +1 -1
- package/dist/runtime-v2/activation/ledger-identity.js +54 -0
- package/dist/runtime-v2/activation/ledger-identity.js.map +1 -1
- package/dist/runtime-v2/adapter/artificer-l2-adapter.d.ts.map +1 -1
- package/dist/runtime-v2/adapter/artificer-l2-adapter.js +18 -0
- package/dist/runtime-v2/adapter/artificer-l2-adapter.js.map +1 -1
- package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.d.ts +11 -0
- package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.d.ts.map +1 -1
- package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.js +67 -1
- package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.js.map +1 -1
- package/dist/runtime-v2/index.d.ts +2 -0
- package/dist/runtime-v2/index.d.ts.map +1 -1
- package/dist/runtime-v2/index.js +1 -0
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-intent-preflight.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-intent-preflight.js +10 -0
- package/dist/runtime-v2/internalization/artificer-intent-preflight.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.js +3 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-runner.d.ts +3 -0
- package/dist/runtime-v2/internalization/artificer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-runner.js +23 -3
- package/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/candidate-identity.d.ts +17 -0
- package/dist/runtime-v2/internalization/candidate-identity.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/candidate-identity.js +56 -0
- package/dist/runtime-v2/internalization/candidate-identity.js.map +1 -0
- package/dist/runtime-v2/internalization/evaluator-output.d.ts +2 -0
- package/dist/runtime-v2/internalization/evaluator-output.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-output.js +3 -0
- package/dist/runtime-v2/internalization/evaluator-output.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts +2 -2
- package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-prompt-builder.js +90 -38
- package/dist/runtime-v2/internalization/evaluator-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts +2 -0
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.js +158 -41
- package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts +4 -0
- package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/peer-runner-contracts.js +13 -0
- package/dist/runtime-v2/internalization/peer-runner-contracts.js.map +1 -1
- package/dist/runtime-v2/internalization/pitask-metadata.d.ts +2 -0
- package/dist/runtime-v2/internalization/pitask-metadata.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/pitask-metadata.js +8 -0
- package/dist/runtime-v2/internalization/pitask-metadata.js.map +1 -1
- package/dist/runtime-v2/internalization/rule-binding-revision.d.ts +28 -0
- package/dist/runtime-v2/internalization/rule-binding-revision.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/rule-binding-revision.js +92 -0
- package/dist/runtime-v2/internalization/rule-binding-revision.js.map +1 -0
- package/dist/runtime-v2/internalization/rulecode-verification-obligations.d.ts +66 -0
- package/dist/runtime-v2/internalization/rulecode-verification-obligations.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/rulecode-verification-obligations.js +150 -0
- package/dist/runtime-v2/internalization/rulecode-verification-obligations.js.map +1 -0
- package/dist/runtime-v2/internalization/scribe-runner.d.ts +7 -1
- package/dist/runtime-v2/internalization/scribe-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/scribe-runner.js +67 -3
- package/dist/runtime-v2/internalization/scribe-runner.js.map +1 -1
- package/dist/runtime-v2/principle-tree/ledger-codec.d.ts.map +1 -1
- package/dist/runtime-v2/principle-tree/ledger-codec.js +3 -6
- package/dist/runtime-v2/principle-tree/ledger-codec.js.map +1 -1
- package/dist/runtime-v2/principle-tree/rule-candidate-binding.d.ts +12 -0
- package/dist/runtime-v2/principle-tree/rule-candidate-binding.d.ts.map +1 -0
- package/dist/runtime-v2/principle-tree/rule-candidate-binding.js +129 -0
- package/dist/runtime-v2/principle-tree/rule-candidate-binding.js.map +1 -0
- package/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.d.ts.map +1 -1
- package/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.js +70 -6
- package/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.js.map +1 -1
- package/dist/runtime-v2/store/sqlite-connection.d.ts.map +1 -1
- package/dist/runtime-v2/store/sqlite-connection.js +15 -1
- package/dist/runtime-v2/store/sqlite-connection.js.map +1 -1
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts +10 -0
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.js +55 -5
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
- package/dist/runtime-v2/types/ledger-store.d.ts +3 -0
- package/dist/runtime-v2/types/ledger-store.d.ts.map +1 -1
- package/dist/runtime-v2/types/ledger-store.js.map +1 -1
- package/dist/runtime-v2/types/rule-candidate-binding.d.ts +98 -0
- package/dist/runtime-v2/types/rule-candidate-binding.d.ts.map +1 -0
- package/dist/runtime-v2/types/rule-candidate-binding.js +2 -0
- package/dist/runtime-v2/types/rule-candidate-binding.js.map +1 -0
- package/dist/telemetry-event.d.ts +2 -2
- package/dist/telemetry-event.d.ts.map +1 -1
- package/dist/telemetry-event.js +1 -0
- package/dist/telemetry-event.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluator-prompt-builder.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-prompt-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAK9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"evaluator-prompt-builder.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-prompt-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
* @see BasePeerRunner in runner/base-peer-runner.ts
|
|
26
26
|
*/
|
|
27
27
|
import type { RunHandle } from '../runtime-protocol.js';
|
|
28
|
+
import { type CandidateIdentityPort } from './candidate-identity.js';
|
|
28
29
|
import type { EvaluatorOutputV1, EvaluatorValidator } from './evaluator-output.js';
|
|
29
30
|
import type { TaskRecord } from '../task-status.js';
|
|
30
31
|
import { type PDErrorCategory } from '../error-categories.js';
|
|
@@ -205,6 +206,7 @@ export interface EvaluatorRunnerDeps extends PeerRunnerDeps {
|
|
|
205
206
|
readonly ledgerIdentity?: {
|
|
206
207
|
readonly isAvailable: () => boolean;
|
|
207
208
|
readonly hasPrinciple: (principleId: string) => boolean;
|
|
209
|
+
readonly resolveForCandidate?: CandidateIdentityPort['resolveForCandidate'];
|
|
208
210
|
};
|
|
209
211
|
}
|
|
210
212
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluator-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"evaluator-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { selectTaskRevisionArtifact } from './peer-runner-contracts.js';
|
|
2
|
+
import { verifyArtifactCandidateIdentity } from './candidate-identity.js';
|
|
1
3
|
import { isEvaluatorOutputV2, MAX_FAILED_CASE_INPUT_LENGTH } from './evaluator-output.js';
|
|
2
4
|
// PRI-911A: the identity shape gate is the SAME authority the activation
|
|
3
5
|
// boundary uses (PR #1856) — never re-implement a UUID parser here.
|
|
@@ -21,6 +23,7 @@ import { buildGoldenTraceFromArtificer } from '../golden-trace.js';
|
|
|
21
23
|
// PRI-485 Phase 6: auto-generate 5 v2 adversarial cases (unavailable/truncation/
|
|
22
24
|
// alias/path/combination) to defend against false-positive blocks.
|
|
23
25
|
import { generateV2ContextAdversarialCases } from './v2-adversarial-cases.js';
|
|
26
|
+
import { deriveRuleCodeVerification } from './rulecode-verification-obligations.js';
|
|
24
27
|
import { canonicalizeToolKind } from './rule-context-v2.js';
|
|
25
28
|
/** PRI-741: length of the shared case-insensitive prefix of two tool names. */
|
|
26
29
|
function commonPrefixLength(a, b) {
|
|
@@ -303,7 +306,7 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
303
306
|
const dependencyRepairPayload = depPi?.repairPayload;
|
|
304
307
|
const artifacts = await this.artifactStore.listBySourceTaskId(depId);
|
|
305
308
|
if (artifacts.length > 0) {
|
|
306
|
-
const
|
|
309
|
+
const firstArtifact = selectTaskRevisionArtifact(depTask, artifacts, depPi?.revisionCount ?? 0);
|
|
307
310
|
if (!firstArtifact)
|
|
308
311
|
continue;
|
|
309
312
|
const artifactRef = firstArtifact.artifactId;
|
|
@@ -381,6 +384,31 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
381
384
|
throw new PDRuntimeError('input_invalid', 'Artificer dependency artifact not found');
|
|
382
385
|
}
|
|
383
386
|
async invokeRuntime(taskId, context) {
|
|
387
|
+
if (this.ledgerIdentity?.resolveForCandidate) {
|
|
388
|
+
const source = context.sourceScribeArtifactId ? await this.artifactStore.getArtifactById(context.sourceScribeArtifactId) : null;
|
|
389
|
+
if (!source)
|
|
390
|
+
throw new PDRuntimeError('input_invalid', 'candidate_identity_unavailable:scribe_missing');
|
|
391
|
+
await verifyArtifactCandidateIdentity(source, {
|
|
392
|
+
ledger: { resolveForCandidate: this.ledgerIdentity.resolveForCandidate },
|
|
393
|
+
getArtifactById: id => this.artifactStore.getArtifactById(id),
|
|
394
|
+
getTaskDiagnosticJson: async (id) => (await this.stateManager.getTask(id))?.diagnosticJson ?? null,
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
if (context.scribeArtifact !== null) {
|
|
398
|
+
let scribe;
|
|
399
|
+
try {
|
|
400
|
+
scribe = JSON.parse(context.scribeArtifact);
|
|
401
|
+
}
|
|
402
|
+
catch {
|
|
403
|
+
throw new PDRuntimeError('input_invalid', 'scribe_artifact_unparseable');
|
|
404
|
+
}
|
|
405
|
+
const material = deriveRuleCodeVerification(scribe, [], this.hostSemanticContext?.tools ?? []);
|
|
406
|
+
if (material.unavailable.length > 0) {
|
|
407
|
+
this.emitEvent('adversarial_replay_skipped', taskId, { reason: 'required_fact_verification_unavailable', required: material.required,
|
|
408
|
+
executed: 0, passed: 0, failed: 0, unavailable: material.unavailable, nextAction: 'restore_supported_valid_fact_contract_before_model_request' });
|
|
409
|
+
throw new PDRuntimeError('input_invalid', `required_fact_verification_unavailable:${material.unavailable.join(',')}`);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
384
412
|
// Single-stage evaluation is the only path — the two-stage
|
|
385
413
|
// progressive_evaluator branch was retired with PRI-819 R-06.
|
|
386
414
|
const { message, systemPrompt } = await this.buildEvaluatorPrompt(taskId, context);
|
|
@@ -2086,13 +2114,17 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2086
2114
|
// PRI-705 / PRI-703 Phase 2: 混合场景 (非纯 out-of-scope) 下,归因与
|
|
2087
2115
|
// out-of-scope case 清单随载荷流动 — 修复 LLM 明确知道哪些失败属于
|
|
2088
2116
|
// 通道设计限制(不得尝试满足),哪些是真实 Rule 缺陷(必须修复)。
|
|
2117
|
+
const systemReplayChanges = ctx.diagnosticReplayEvidence?.passed === false
|
|
2118
|
+
&& output.evaluation.requiredChanges.length === 0 && isEvaluatorOutputV2(output)
|
|
2119
|
+
? [`[system deterministic replay] Repair the RuleCode against the executed failure evidence without inventing Owner facts: ${(output.adversarialResult?.failedCases ?? []).slice(0, 8).map((failure) => `${failure.caseId}: expected=${failure.expectedDecision}, actual=${failure.actualDecision ?? 'no decision'}, error=${failure.errorType ?? 'unknown'}; ${(failure.message ?? failure.rationale).slice(0, 160)}`).join(' | ') || 'deterministic replay failed; inspect the referenced evaluator artifact for the execution failure and restore the supported contract.'}`]
|
|
2120
|
+
: [];
|
|
2089
2121
|
const repairPayload = {
|
|
2090
2122
|
requiredChanges: completionIntent?.transitionOverrideReason === 'owner_golden_trace_provenance_missing'
|
|
2091
2123
|
? [
|
|
2092
2124
|
...output.evaluation.requiredChanges,
|
|
2093
2125
|
'Regenerate this RuleCode from the current validated Owner BehaviorExamplePack so the persisted artifact carries the system-owned ownerGoldenTraceCases; preserve the approved principle semantics.',
|
|
2094
2126
|
]
|
|
2095
|
-
: [...output.evaluation.requiredChanges],
|
|
2127
|
+
: [...output.evaluation.requiredChanges, ...systemReplayChanges],
|
|
2096
2128
|
concerns: [...output.evaluation.concerns],
|
|
2097
2129
|
previousScore: output.evaluation.score,
|
|
2098
2130
|
repairIteration: priorRepairIteration + 1,
|
|
@@ -2353,6 +2385,30 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2353
2385
|
// examples as its independent Owner acceptance baseline.
|
|
2354
2386
|
positiveCases = this.extractPositiveCases(goldenTraceCases);
|
|
2355
2387
|
}
|
|
2388
|
+
let scribe = null;
|
|
2389
|
+
try {
|
|
2390
|
+
scribe = context.scribeArtifact === null ? null : JSON.parse(context.scribeArtifact);
|
|
2391
|
+
}
|
|
2392
|
+
catch { /* the declaration extraction below fails closed on malformed content */ }
|
|
2393
|
+
const verification = deriveRuleCodeVerification(scribe, [...positiveCases, ...ownerNegativeCases], this.hostSemanticContext?.tools ?? []);
|
|
2394
|
+
if (context.scribeArtifact !== null && scribe === null)
|
|
2395
|
+
verification.unavailable.push('scribe_artifact_unparseable');
|
|
2396
|
+
if (verification.unavailable.length > 0) {
|
|
2397
|
+
this.emitEvent('adversarial_replay_skipped', taskId, { runId, reason: 'required_fact_verification_unavailable',
|
|
2398
|
+
required: verification.required, unavailable: verification.unavailable, historical: verification.historical,
|
|
2399
|
+
nextAction: 'restore_valid_declared_fact_contract_and_supported_host_projection_before_replay' });
|
|
2400
|
+
return { updatedOutput: null, skipReason: `required_fact_verification_unavailable:${verification.unavailable.join(',')}` };
|
|
2401
|
+
}
|
|
2402
|
+
positiveCases = verification.replayCases.filter((entry) => entry.kind === 'positive');
|
|
2403
|
+
ownerNegativeCases = verification.replayCases.filter((entry) => entry.kind === 'negative');
|
|
2404
|
+
// Explicit system contract positives can establish replay eligibility;
|
|
2405
|
+
// historical evidence-only labels are preserved but never counted as pass.
|
|
2406
|
+
if (positiveCases.length === 0 && verification.counterfactuals.length > 0) {
|
|
2407
|
+
positiveCases = verification.counterfactuals.filter((entry) => entry.expectedDecision === 'allow').map((entry) => ({
|
|
2408
|
+
caseId: entry.caseId, kind: 'positive', toolName: entry.toolName, params: entry.params,
|
|
2409
|
+
expectedDecision: 'allow', ruleContext: entry.ruleContext,
|
|
2410
|
+
}));
|
|
2411
|
+
}
|
|
2356
2412
|
if (positiveCases.length === 0) {
|
|
2357
2413
|
this.emitEvent('adversarial_replay_skipped', taskId, {
|
|
2358
2414
|
runId,
|
|
@@ -2368,7 +2424,7 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2368
2424
|
// PRI-634 R1: V1-shaped outputs carry no adversarialCases — the merged
|
|
2369
2425
|
// set below then relies entirely on the auto-generated v2 cases.
|
|
2370
2426
|
const llmCases = isEvaluatorOutputV2(output) ? (output.adversarialCases ?? []) : [];
|
|
2371
|
-
const v2Cases = this.generateV2CasesFromArtificer(affectedTools, positiveCases, taskId, runId);
|
|
2427
|
+
const v2Cases = verification.required.length > 0 ? [] : this.generateV2CasesFromArtificer(affectedTools, positiveCases, taskId, runId);
|
|
2372
2428
|
if (!Array.isArray(v2Cases)) {
|
|
2373
2429
|
this.emitEvent('v2_adversarial_cases_skipped', taskId, { runId, ...v2Cases });
|
|
2374
2430
|
this.emitEvent('adversarial_replay_skipped', taskId, { runId, ...v2Cases });
|
|
@@ -2376,7 +2432,7 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2376
2432
|
}
|
|
2377
2433
|
// PRI-741: host-name parity case — the rule must reach the same decision
|
|
2378
2434
|
// under the REAL host tool name as under the author's vocabulary.
|
|
2379
|
-
const hostAliasCase = this.generateHostAliasCase(requiresContextVersion === 2 ? ownerGoldenTraceCases : goldenTraceCases, taskId, runId);
|
|
2435
|
+
const hostAliasCase = this.generateHostAliasCase(verification.required.length > 0 ? verification.replayCases : requiresContextVersion === 2 ? ownerGoldenTraceCases : goldenTraceCases, taskId, runId);
|
|
2380
2436
|
const ownerNegativeAdversarial = ownerNegativeCases.map((ownerCase) => ({
|
|
2381
2437
|
caseId: `owner:${ownerCase.caseId}`,
|
|
2382
2438
|
attackType: 'boundary',
|
|
@@ -2386,39 +2442,12 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2386
2442
|
rationale: 'System-restored Owner-labelled negative behavior example; expected decision comes from the validated BehaviorExamplePack.',
|
|
2387
2443
|
...(ownerCase.ruleContext !== undefined ? { ruleContext: ownerCase.ruleContext } : {}),
|
|
2388
2444
|
}));
|
|
2389
|
-
// A trusted design fact scopes the invocation already. Changing its command
|
|
2390
|
-
// spelling must not bypass the same denied scope (counterfactual, not history).
|
|
2391
|
-
const designScopeCases = [];
|
|
2392
|
-
if (context.scribeArtifact !== null) {
|
|
2393
|
-
let scribe;
|
|
2394
|
-
try {
|
|
2395
|
-
scribe = JSON.parse(context.scribeArtifact);
|
|
2396
|
-
}
|
|
2397
|
-
catch {
|
|
2398
|
-
scribe = null;
|
|
2399
|
-
}
|
|
2400
|
-
const conditions = extractExecutionConditions(scribe);
|
|
2401
|
-
if (!conditions.corrupted && conditions.conditions?.requiredFacts.some((fact) => fact.required && fact.factKind === 'design_approval')) {
|
|
2402
|
-
for (const ownerCase of ownerNegativeCases) {
|
|
2403
|
-
const fact = ownerCase.ruleContext?.facts.designGate;
|
|
2404
|
-
const semantic = this.hostSemanticContext?.tools.find((tool) => tool.rawToolName === ownerCase.toolName);
|
|
2405
|
-
if (semantic?.canonicalKind !== 'execute' || fact?.resolution !== 'not_approved' || !fact.requiresApproval)
|
|
2406
|
-
continue;
|
|
2407
|
-
designScopeCases.push({
|
|
2408
|
-
caseId: `design-scope:${ownerCase.caseId}`, attackType: 'omission', toolName: ownerCase.toolName,
|
|
2409
|
-
params: { command: 'node -e "process.stdout.write(123)"' }, expectedDecision: 'block',
|
|
2410
|
-
rationale: 'System-derived counterfactual: the same trusted denied invocation scope cannot depend on command spelling; not a claim about historical behavior.',
|
|
2411
|
-
ruleContext: ownerCase.ruleContext,
|
|
2412
|
-
});
|
|
2413
|
-
}
|
|
2414
|
-
}
|
|
2415
|
-
}
|
|
2416
2445
|
const mergedAdversarialCases = [
|
|
2417
2446
|
...ownerNegativeAdversarial,
|
|
2418
|
-
...
|
|
2447
|
+
...verification.counterfactuals.filter((entry) => !positiveCases.some((positive) => positive.caseId === entry.caseId)),
|
|
2419
2448
|
...v2Cases,
|
|
2420
2449
|
...(hostAliasCase !== null ? [hostAliasCase] : []),
|
|
2421
|
-
...llmCases,
|
|
2450
|
+
...llmCases.filter((entry) => verification.required.length === 0 || entry.ruleContext?.facts.designGate !== undefined),
|
|
2422
2451
|
];
|
|
2423
2452
|
// (4) No adversarial cases (neither v2-generated nor LLM-supplied) →
|
|
2424
2453
|
// nothing to replay. codeReview may still be present (passive review only).
|
|
@@ -2552,11 +2581,33 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2552
2581
|
const accepted = gateResult.decision === 'accepted_shadow';
|
|
2553
2582
|
const failedCases = accepted
|
|
2554
2583
|
? []
|
|
2555
|
-
: this.mapFailedCases(gateResult, mergedAdversarialCases);
|
|
2584
|
+
: this.mapFailedCases(gateResult, mergedAdversarialCases, mergedTrace.cases);
|
|
2585
|
+
const failedIds = new Set(gateResult.sandboxResult.failedCases.map((entry) => entry.caseId));
|
|
2586
|
+
const runtimeUnavailable = gateResult.sandboxResult.forbiddenPatternViolations.length > 0
|
|
2587
|
+
|| (!gateResult.sandboxResult.success && gateResult.sandboxResult.failedCases.length === 0)
|
|
2588
|
+
|| gateResult.sandboxResult.failedCases.some((entry) => RESERVED_SYSTEM_CASE_ID.test(entry.caseId));
|
|
2589
|
+
const historyExecuted = runtimeUnavailable ? 0 : verification.replayCases.length;
|
|
2590
|
+
const historyFailed = verification.replayCases.filter((entry) => failedIds.has(entry.caseId) || failedIds.has(`owner:${entry.caseId}`)).length;
|
|
2591
|
+
const contractExecuted = runtimeUnavailable ? 0 : verification.counterfactuals.length;
|
|
2592
|
+
const contractFailed = verification.counterfactuals.filter((entry) => failedIds.has(entry.caseId)).length;
|
|
2556
2593
|
const adversarialResult = {
|
|
2557
2594
|
passed: accepted,
|
|
2558
2595
|
failedCases,
|
|
2559
2596
|
...(gateResult.failure ? { failure: { layer: gateResult.failure.layer, reasonCode: gateResult.failure.reasonCode } } : {}),
|
|
2597
|
+
verificationCoverage: {
|
|
2598
|
+
required: verification.required,
|
|
2599
|
+
executed: runtimeUnavailable ? 0 : mergedTrace.cases.length,
|
|
2600
|
+
passed: runtimeUnavailable ? 0 : mergedTrace.cases.length - gateResult.sandboxResult.failedCases.length,
|
|
2601
|
+
failed: runtimeUnavailable ? 0 : gateResult.sandboxResult.failedCases.length,
|
|
2602
|
+
unavailable: runtimeUnavailable ? [...verification.unavailable, 'sandbox_execution_unavailable'] : verification.unavailable,
|
|
2603
|
+
historicalCoverage: { executed: historyExecuted, passed: Math.max(0, historyExecuted - historyFailed), failed: historyFailed,
|
|
2604
|
+
unavailable: verification.historical.length - historyExecuted },
|
|
2605
|
+
contractCoverage: { required: verification.counterfactuals.length, executed: contractExecuted,
|
|
2606
|
+
passed: Math.max(0, contractExecuted - contractFailed), failed: contractFailed,
|
|
2607
|
+
unavailable: verification.counterfactuals.length - contractExecuted },
|
|
2608
|
+
historical: verification.historical,
|
|
2609
|
+
counterfactuals: verification.counterfactuals.map((entry) => ({ caseId: entry.caseId, source: 'system_counterfactual', contract: 'DesignGateFact/v1' })),
|
|
2610
|
+
},
|
|
2560
2611
|
};
|
|
2561
2612
|
return {
|
|
2562
2613
|
updatedOutput: { ...output, adversarialResult },
|
|
@@ -2801,8 +2852,14 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2801
2852
|
* (Runtime Contract Rule 9: graceful degradation includes a reason).
|
|
2802
2853
|
*/
|
|
2803
2854
|
// eslint-disable-next-line @typescript-eslint/class-methods-use-this
|
|
2804
|
-
mapFailedCases(gateResult, adversarialCases) {
|
|
2855
|
+
mapFailedCases(gateResult, adversarialCases, executedCases = []) {
|
|
2805
2856
|
const advById = new Map(adversarialCases.map((c) => [c.caseId, c]));
|
|
2857
|
+
for (const entry of executedCases) {
|
|
2858
|
+
if (!advById.has(entry.caseId))
|
|
2859
|
+
advById.set(entry.caseId, { caseId: entry.caseId, attackType: 'boundary',
|
|
2860
|
+
toolName: entry.toolName, params: entry.params, expectedDecision: entry.expectedDecision,
|
|
2861
|
+
rationale: 'System-executed replay case; this input is execution evidence, not a reconstructed historical fact.', ruleContext: entry.ruleContext });
|
|
2862
|
+
}
|
|
2806
2863
|
// PRI-634 PR-A (SPEC §14): the sandbox failedCase is the authority for
|
|
2807
2864
|
// expected/actual/errorType — it sees merged positive-case failures the
|
|
2808
2865
|
// adversarial-case list cannot. actualDecision is copied ONLY when the
|
|
@@ -2871,7 +2928,11 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
2871
2928
|
const contextState = adv.ruleContext
|
|
2872
2929
|
? `history ${history?.status ?? 'unknown'}${history?.truncated ? ' (truncated)' : ''}`
|
|
2873
2930
|
: 'none';
|
|
2874
|
-
const
|
|
2931
|
+
const gate = facts?.designGate;
|
|
2932
|
+
const designContext = gate !== undefined
|
|
2933
|
+
? `designGate=${gate.resolution}, requiresApproval=${gate.requiresApproval}, binding=${gate.taskRef === gate.decisionTaskRef && gate.specDigest === gate.decisionSpecDigest && gate.scopeRef === gate.decisionScopeRef ? 'matched' : 'mismatched'}, revoked=${gate.revoked}; `
|
|
2934
|
+
: adv.caseId.startsWith('system-contract:design_approval:') ? 'designGate=missing; ' : '';
|
|
2935
|
+
const identityAndContext = `tool=${adv.toolName} | context: ${designContext}${contextState}, priorReadOfTarget=${facts?.priorReadOfTarget ?? 'unknown'}, readCount=${facts?.readCount ?? 'unknown'}`;
|
|
2875
2936
|
let paramsDigest;
|
|
2876
2937
|
try {
|
|
2877
2938
|
paramsDigest = EvaluatorRunner.digestParams(adv.params);
|
|
@@ -3061,11 +3122,28 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
3061
3122
|
let identityStampReason = null;
|
|
3062
3123
|
let forwardedIntentContract;
|
|
3063
3124
|
let bearerPrincipleContentJson;
|
|
3125
|
+
let forwardedIdentityReceipt;
|
|
3126
|
+
let forwardedDreamerArtifactId;
|
|
3127
|
+
let forwardedScribeArtifactId;
|
|
3064
3128
|
try {
|
|
3065
3129
|
const principleBearerId = await this.resolvePrincipleBearerArtifact(output, taskId);
|
|
3066
3130
|
if (principleBearerId) {
|
|
3067
3131
|
const principleArtifact = await this.artifactStore.getArtifactById(principleBearerId);
|
|
3068
3132
|
if (principleArtifact) {
|
|
3133
|
+
forwardedDreamerArtifactId = readDreamerArtifactIdFromScribeArtifact(principleArtifact.contentJson) ?? undefined;
|
|
3134
|
+
forwardedScribeArtifactId = principleArtifact.artifactId;
|
|
3135
|
+
if (this.ledgerIdentity?.resolveForCandidate) {
|
|
3136
|
+
const identity = await verifyArtifactCandidateIdentity(principleArtifact, {
|
|
3137
|
+
ledger: { resolveForCandidate: this.ledgerIdentity.resolveForCandidate },
|
|
3138
|
+
getArtifactById: id => this.artifactStore.getArtifactById(id),
|
|
3139
|
+
getTaskDiagnosticJson: async (id) => (await this.stateManager.getTask(id))?.diagnosticJson ?? null,
|
|
3140
|
+
});
|
|
3141
|
+
forwardedIdentityReceipt = {
|
|
3142
|
+
candidateId: identity.candidateId, basis: identity.basis, principleId: identity.principleId,
|
|
3143
|
+
...(identity.bindingRevision !== undefined ? { bindingRevision: identity.bindingRevision } : {}),
|
|
3144
|
+
...(identity.decisionId !== undefined ? { decisionId: identity.decisionId } : {}),
|
|
3145
|
+
};
|
|
3146
|
+
}
|
|
3069
3147
|
bearerPrincipleContentJson = principleArtifact.contentJson;
|
|
3070
3148
|
const stamp = this.resolveRuleSourcePrincipleId(principleArtifact);
|
|
3071
3149
|
if (stamp.ok) {
|
|
@@ -3108,6 +3186,10 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
3108
3186
|
nextAction: 'verify_scribe_artifact_lineage',
|
|
3109
3187
|
});
|
|
3110
3188
|
}
|
|
3189
|
+
if (this.ledgerIdentity?.resolveForCandidate && !forwardedIdentityReceipt) {
|
|
3190
|
+
this.emitEvent('rule_assembly_failed', taskId, { runId, reason: 'candidate_identity_unavailable', nextAction: 'review_current_binding_and_revise_scribe' });
|
|
3191
|
+
return null;
|
|
3192
|
+
}
|
|
3111
3193
|
if (identityStampReason !== null) {
|
|
3112
3194
|
// I3 (SPEC §6.4): the bearer is there, but the identity it carries is not
|
|
3113
3195
|
// a canonical ledger UUID. The writer refuses to GUESS — it writes the
|
|
@@ -3178,6 +3260,7 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
3178
3260
|
&& hostContext.tools.every((tool) => typeof tool.rawToolName === 'string' && tool.rawToolName.trim() !== ''
|
|
3179
3261
|
&& typeof tool.canonicalKind === 'string' && tool.canonicalKind.trim() !== '');
|
|
3180
3262
|
let requiredFactKinds;
|
|
3263
|
+
let executableTrace = traceBuild.trace;
|
|
3181
3264
|
if (typeof bearerPrincipleContentJson === 'string') {
|
|
3182
3265
|
let scribeArtifact;
|
|
3183
3266
|
try {
|
|
@@ -3201,9 +3284,34 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
3201
3284
|
return null;
|
|
3202
3285
|
}
|
|
3203
3286
|
if (executionConditions.conditions !== null) {
|
|
3204
|
-
|
|
3205
|
-
if (
|
|
3206
|
-
|
|
3287
|
+
requiredFactKinds = [...new Set(executionConditions.conditions.requiredFacts.filter((fact) => fact.required).map((fact) => fact.factKind))];
|
|
3288
|
+
if (requiredFactKinds.some((kind) => kind !== 'design_approval')) {
|
|
3289
|
+
this.emitEvent('rule_assembly_failed', taskId, { runId, reason: 'required_fact_contract_unsupported', requiredFactKinds,
|
|
3290
|
+
nextAction: 'provide_a_supported_runtime_fact_contract_before_assembly' });
|
|
3291
|
+
return null;
|
|
3292
|
+
}
|
|
3293
|
+
if (requiredFactKinds.length > 0) {
|
|
3294
|
+
const ownerBuild = Array.isArray(artificerParsed.ownerGoldenTraceCases)
|
|
3295
|
+
? buildGoldenTraceFromArtificer({ cases: artificerParsed.ownerGoldenTraceCases })
|
|
3296
|
+
: null;
|
|
3297
|
+
if (ownerBuild === null || !ownerBuild.ok) {
|
|
3298
|
+
this.emitEvent('rule_assembly_failed', taskId, { runId, reason: 'owner_verification_cases_unavailable',
|
|
3299
|
+
nextAction: 'restore_the_system_owned_owner_cases_before_assembly' });
|
|
3300
|
+
return null;
|
|
3301
|
+
}
|
|
3302
|
+
const material = deriveRuleCodeVerification(scribeArtifact, ownerBuild.trace.cases, hostContext?.tools ?? []);
|
|
3303
|
+
if (material.unavailable.length > 0) {
|
|
3304
|
+
this.emitEvent('rule_assembly_failed', taskId, { runId, reason: 'required_fact_verification_unavailable', unavailable: material.unavailable,
|
|
3305
|
+
nextAction: 'restore_valid_supported_fact_material_before_assembly' });
|
|
3306
|
+
return null;
|
|
3307
|
+
}
|
|
3308
|
+
// The activation consumer replays this trace. Evidence-only Owner
|
|
3309
|
+
// labels remain verbatim alongside it, never synthetic history.
|
|
3310
|
+
executableTrace = { ...traceBuild.trace, cases: [...material.replayCases, ...material.counterfactuals.map((entry) => ({
|
|
3311
|
+
caseId: entry.caseId, kind: entry.expectedDecision === 'allow' ? 'positive' : 'negative', toolName: entry.toolName,
|
|
3312
|
+
params: entry.params, expectedDecision: entry.expectedDecision, ruleContext: entry.ruleContext,
|
|
3313
|
+
}))] };
|
|
3314
|
+
}
|
|
3207
3315
|
}
|
|
3208
3316
|
}
|
|
3209
3317
|
if (requiresContextVersion === 2 && !hasHostInputContract) {
|
|
@@ -3214,9 +3322,15 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
3214
3322
|
});
|
|
3215
3323
|
}
|
|
3216
3324
|
const ruleContent = {
|
|
3325
|
+
...(forwardedIdentityReceipt ? { identityResolution: forwardedIdentityReceipt } : {}),
|
|
3326
|
+
...(forwardedScribeArtifactId ? { sourceTrace: {
|
|
3327
|
+
scribeArtifactId: forwardedScribeArtifactId,
|
|
3328
|
+
...(forwardedDreamerArtifactId ? { dreamerArtifactId: forwardedDreamerArtifactId } : {}),
|
|
3329
|
+
} } : {}),
|
|
3217
3330
|
implementationCode,
|
|
3218
|
-
goldenTrace:
|
|
3331
|
+
goldenTrace: executableTrace,
|
|
3219
3332
|
goldenTraceCases,
|
|
3333
|
+
...(artificerParsed.ownerGoldenTraceCases !== undefined ? { ownerGoldenTraceCases: artificerParsed.ownerGoldenTraceCases } : {}),
|
|
3220
3334
|
affectedTools: validatedAffectedTools,
|
|
3221
3335
|
// adversarialResult.passed === true is the precondition for this method;
|
|
3222
3336
|
// the gate decision is therefore accepted_shadow.
|
|
@@ -3257,7 +3371,10 @@ export class EvaluatorRunner extends BasePeerRunner {
|
|
|
3257
3371
|
sourceTaskId: taskId,
|
|
3258
3372
|
sourcePrincipleId: resolvedSourcePrincipleId,
|
|
3259
3373
|
sourceRuleId: ruleId,
|
|
3260
|
-
lineageArtifactIds: [...lineageArtifactIds
|
|
3374
|
+
lineageArtifactIds: [...new Set([...lineageArtifactIds,
|
|
3375
|
+
...(forwardedScribeArtifactId ? [forwardedScribeArtifactId] : []),
|
|
3376
|
+
...(forwardedDreamerArtifactId ? [forwardedDreamerArtifactId] : []),
|
|
3377
|
+
])],
|
|
3261
3378
|
validationStatus: 'pending',
|
|
3262
3379
|
contentJson: JSON.stringify(ruleContent),
|
|
3263
3380
|
createdAt: nowIso,
|