@principles/core 1.205.0 → 1.207.0

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.
Files changed (63) hide show
  1. package/dist/runtime-v2/__tests__/architecture-regression.test.js +10 -1
  2. package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
  3. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js +85 -7
  4. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js.map +1 -1
  5. package/dist/runtime-v2/__tests__/v2-adversarial-cases.test.d.ts +2 -0
  6. package/dist/runtime-v2/__tests__/v2-adversarial-cases.test.d.ts.map +1 -0
  7. package/dist/runtime-v2/__tests__/v2-adversarial-cases.test.js +211 -0
  8. package/dist/runtime-v2/__tests__/v2-adversarial-cases.test.js.map +1 -0
  9. package/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js +93 -0
  10. package/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js.map +1 -1
  11. package/dist/runtime-v2/activation/writers/rule-host-writer.d.ts +11 -0
  12. package/dist/runtime-v2/activation/writers/rule-host-writer.d.ts.map +1 -1
  13. package/dist/runtime-v2/activation/writers/rule-host-writer.js +22 -0
  14. package/dist/runtime-v2/activation/writers/rule-host-writer.js.map +1 -1
  15. package/dist/runtime-v2/index.d.ts +2 -0
  16. package/dist/runtime-v2/index.d.ts.map +1 -1
  17. package/dist/runtime-v2/index.js +1 -0
  18. package/dist/runtime-v2/index.js.map +1 -1
  19. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js +41 -1
  20. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js.map +1 -1
  21. package/dist/runtime-v2/internalization/__tests__/artificer-rule-output.test.js +130 -2
  22. package/dist/runtime-v2/internalization/__tests__/artificer-rule-output.test.js.map +1 -1
  23. package/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.d.ts +2 -0
  24. package/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.d.ts.map +1 -0
  25. package/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.js +228 -0
  26. package/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.js.map +1 -0
  27. package/dist/runtime-v2/internalization/adversarial-case.d.ts.map +1 -1
  28. package/dist/runtime-v2/internalization/adversarial-case.js +24 -0
  29. package/dist/runtime-v2/internalization/adversarial-case.js.map +1 -1
  30. package/dist/runtime-v2/internalization/artificer-output.d.ts +8 -0
  31. package/dist/runtime-v2/internalization/artificer-output.d.ts.map +1 -1
  32. package/dist/runtime-v2/internalization/artificer-output.js +45 -0
  33. package/dist/runtime-v2/internalization/artificer-output.js.map +1 -1
  34. package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +2 -2
  35. package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
  36. package/dist/runtime-v2/internalization/artificer-prompt-builder.js +7 -2
  37. package/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
  38. package/dist/runtime-v2/internalization/behavior-example-pack.d.ts +66 -0
  39. package/dist/runtime-v2/internalization/behavior-example-pack.d.ts.map +1 -0
  40. package/dist/runtime-v2/internalization/behavior-example-pack.js +183 -0
  41. package/dist/runtime-v2/internalization/behavior-example-pack.js.map +1 -0
  42. package/dist/runtime-v2/internalization/evaluator-output.d.ts +8 -0
  43. package/dist/runtime-v2/internalization/evaluator-output.d.ts.map +1 -1
  44. package/dist/runtime-v2/internalization/evaluator-output.js +10 -0
  45. package/dist/runtime-v2/internalization/evaluator-output.js.map +1 -1
  46. package/dist/runtime-v2/internalization/evaluator-runner.d.ts +17 -0
  47. package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
  48. package/dist/runtime-v2/internalization/evaluator-runner.js +118 -24
  49. package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
  50. package/dist/runtime-v2/internalization/v2-adversarial-cases.d.ts +55 -0
  51. package/dist/runtime-v2/internalization/v2-adversarial-cases.d.ts.map +1 -0
  52. package/dist/runtime-v2/internalization/v2-adversarial-cases.js +131 -0
  53. package/dist/runtime-v2/internalization/v2-adversarial-cases.js.map +1 -0
  54. package/dist/runtime-v2/tools/__tests__/artificer-l2-tool-contract.test.js +40 -1
  55. package/dist/runtime-v2/tools/__tests__/artificer-l2-tool-contract.test.js.map +1 -1
  56. package/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
  57. package/dist/runtime-v2/tools/artificer-l2-tool-contract.js +28 -1
  58. package/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
  59. package/dist/runtime-v2/tools/artificer-output-typebox.d.ts +1 -0
  60. package/dist/runtime-v2/tools/artificer-output-typebox.d.ts.map +1 -1
  61. package/dist/runtime-v2/tools/artificer-output-typebox.js +2 -0
  62. package/dist/runtime-v2/tools/artificer-output-typebox.js.map +1 -1
  63. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"evaluator-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluator-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-runner.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,10 @@ import { BasePeerRunner } from '../runner/base-peer-runner.js';
8
8
  import { evaluateRefinerRuleHostGate } from './refiner-rulehost-gate.js';
9
9
  import { adversarialCasesToGoldenTrace } from './adversarial-case.js';
10
10
  import { buildGoldenTraceFromArtificer } from '../golden-trace.js';
11
+ // PRI-485 Phase 6: auto-generate 5 v2 adversarial cases (unavailable/truncation/
12
+ // alias/path/combination) to defend against false-positive blocks.
13
+ import { generateV2ContextAdversarialCases } from './v2-adversarial-cases.js';
14
+ import { canonicalizeToolKind } from './rule-context-v2.js';
11
15
  function isRecordValue(value) {
12
16
  return value !== null && typeof value === 'object' && !Array.isArray(value);
13
17
  }
@@ -469,26 +473,8 @@ export class EvaluatorRunner extends BasePeerRunner {
469
473
  if (output.evaluation.decision !== 'approved') {
470
474
  return { updatedOutput: null };
471
475
  }
472
- // (2) No adversarial cases nothing to replay. codeReview may still be
473
- // present (passive review only). Not an error condition.
474
- if (!output.adversarialCases || output.adversarialCases.length === 0) {
475
- return { updatedOutput: null };
476
- }
477
- // (3) Convert adversarial cases to an all-negative GoldenTrace.
478
- const conversion = adversarialCasesToGoldenTrace(output.adversarialCases);
479
- if (!conversion.ok) {
480
- // Validator already accepted adversarialCases, so a conversion failure
481
- // here is a contract drift between validator and converter. Degrade loud.
482
- this.emitEvent('adversarial_replay_skipped', taskId, {
483
- runId,
484
- reason: `adversarial_conversion_failed: ${conversion.reason}`,
485
- nextAction: 'verify_adversarial_case_validator_alignment',
486
- });
487
- return { updatedOutput: null };
488
- }
489
- // (4) Resolve the Artificer artifact and extract code + positive cases.
490
- // PRI-423: the converted adversarial trace has no positive case; we merge
491
- // positive cases from the Artificer's goldenTraceCases before replaying.
476
+ // (2) Resolve the Artificer artifact early we need it both to derive
477
+ // the v2 adversarial spec (PRI-485) and to merge positive cases (PRI-423).
492
478
  if (!context.artificerArtifact) {
493
479
  this.emitEvent('adversarial_replay_skipped', taskId, {
494
480
  runId,
@@ -506,7 +492,7 @@ export class EvaluatorRunner extends BasePeerRunner {
506
492
  });
507
493
  return { updatedOutput: null };
508
494
  }
509
- const { implementationCode, goldenTraceCases } = artificerParsed;
495
+ const { implementationCode, goldenTraceCases, affectedTools } = artificerParsed;
510
496
  if (typeof implementationCode !== 'string' || implementationCode.trim() === '') {
511
497
  // Artificer output is V1 (no code) but the evaluator emitted V2. This is
512
498
  // a mismatch — degrade rather than replay against missing code.
@@ -529,6 +515,31 @@ export class EvaluatorRunner extends BasePeerRunner {
529
515
  });
530
516
  return { updatedOutput: null };
531
517
  }
518
+ // (3) PRI-485 Phase 6: auto-generate 5 v2 adversarial cases from the
519
+ // Artificer's affectedTools + first positive case's path. These defend
520
+ // against the most common false-positive patterns (unavailable/truncation/
521
+ // alias/path/combination). Degrade with telemetry (rc-9) if the spec
522
+ // cannot be derived — LLM-supplied adversarialCases still replay.
523
+ const llmCases = output.adversarialCases ?? [];
524
+ const v2Cases = this.generateV2CasesFromArtificer(affectedTools, positiveCases, taskId, runId);
525
+ const mergedAdversarialCases = [...v2Cases, ...llmCases];
526
+ // (4) No adversarial cases (neither v2-generated nor LLM-supplied) →
527
+ // nothing to replay. codeReview may still be present (passive review only).
528
+ if (mergedAdversarialCases.length === 0) {
529
+ return { updatedOutput: null };
530
+ }
531
+ // (5) Convert the merged adversarial cases to an all-negative GoldenTrace.
532
+ const conversion = adversarialCasesToGoldenTrace(mergedAdversarialCases);
533
+ if (!conversion.ok) {
534
+ // Validator already accepted adversarialCases, so a conversion failure
535
+ // here is a contract drift between validator and converter. Degrade loud.
536
+ this.emitEvent('adversarial_replay_skipped', taskId, {
537
+ runId,
538
+ reason: `adversarial_conversion_failed: ${conversion.reason}`,
539
+ nextAction: 'verify_adversarial_case_validator_alignment',
540
+ });
541
+ return { updatedOutput: null };
542
+ }
532
543
  const mergedTrace = {
533
544
  traceId: `golden-trace-evaluator-replay-${taskId}-${Date.now().toString(36)}`,
534
545
  sourceArtifactId: context.sourceArtificerArtifactId ?? undefined,
@@ -536,7 +547,7 @@ export class EvaluatorRunner extends BasePeerRunner {
536
547
  createdAt: new Date().toISOString(),
537
548
  cases: [...positiveCases, ...conversion.trace.cases],
538
549
  };
539
- // (5) Invoke the gate. evaluateRefinerRuleHostGate is a pure function that
550
+ // (6) Invoke the gate. evaluateRefinerRuleHostGate is a pure function that
540
551
  // catches its own sandbox throws internally (rejected_runtime_error), so
541
552
  // this await cannot throw on sandbox failure — but we guard anyway for
542
553
  // defense-in-depth (ERR-018: trust boundary at injected deps).
@@ -564,11 +575,11 @@ export class EvaluatorRunner extends BasePeerRunner {
564
575
  caseCount: mergedTrace.cases.length,
565
576
  failedCaseCount: gateResult.sandboxResult.failedCases.length,
566
577
  });
567
- // (6) Populate adversarialResult from the gate result.
578
+ // (7) Populate adversarialResult from the gate result.
568
579
  const accepted = gateResult.decision === 'accepted_shadow';
569
580
  const failedCases = accepted
570
581
  ? []
571
- : this.mapFailedCases(gateResult, output.adversarialCases);
582
+ : this.mapFailedCases(gateResult, mergedAdversarialCases);
572
583
  const adversarialResult = {
573
584
  passed: accepted,
574
585
  failedCases,
@@ -656,6 +667,89 @@ export class EvaluatorRunner extends BasePeerRunner {
656
667
  return [];
657
668
  return buildResult.trace.cases.filter((c) => c.kind === 'positive');
658
669
  }
670
+ /**
671
+ * PRI-485 Phase 6: derive the v2 adversarial case spec from the Artificer
672
+ * artifact and generate the 5 canonical v2 cases.
673
+ *
674
+ * Spec derivation:
675
+ * - toolName: the first entry in `affectedTools` (validated as a non-empty
676
+ * string array). Falls back to the first positive case's toolName when
677
+ * affectedTools is missing/malformed — the rule still governs that tool.
678
+ * - targetPath: the first positive case's `params.path` (validated as a
679
+ * non-empty string). When absent, degrade with telemetry (rc-9) and
680
+ * return [] — v2 cases cannot be path-realistic without a target path.
681
+ * - canonicalKind: canonicalizeToolKind(toolName) — pure lookup.
682
+ *
683
+ * Never throws. All malformed inputs degrade to [] with a telemetry event
684
+ * carrying a structured `reason` + `nextAction` (Runtime Contract Rule 9).
685
+ */
686
+ // eslint-disable-next-line @typescript-eslint/max-params
687
+ generateV2CasesFromArtificer(affectedTools, positiveCases, taskId, runId) {
688
+ // Resolve toolName: prefer affectedTools[0], fall back to positive case.
689
+ let toolName = null;
690
+ if (Array.isArray(affectedTools) && affectedTools.length > 0) {
691
+ const [first] = affectedTools;
692
+ if (typeof first === 'string' && first.trim() !== '') {
693
+ toolName = first;
694
+ }
695
+ }
696
+ if (toolName === null && positiveCases.length > 0) {
697
+ const [firstPos] = positiveCases;
698
+ const posTool = firstPos?.toolName;
699
+ if (typeof posTool === 'string' && posTool.trim() !== '') {
700
+ toolName = posTool;
701
+ }
702
+ }
703
+ if (toolName === null) {
704
+ this.emitEvent('v2_adversarial_cases_skipped', taskId, {
705
+ runId,
706
+ reason: 'no_tool_name_for_v2_adversarial_cases',
707
+ nextAction: 'verify_artificer_emitted_affectedTools_or_positive_case_toolName',
708
+ });
709
+ return [];
710
+ }
711
+ // Resolve targetPath: first positive case's params.path.
712
+ const [firstPositive] = positiveCases;
713
+ if (!firstPositive) {
714
+ this.emitEvent('v2_adversarial_cases_skipped', taskId, {
715
+ runId,
716
+ reason: 'no_positive_case_for_v2_adversarial_cases',
717
+ nextAction: 'verify_artificer_emitted_at_least_one_positive_case',
718
+ });
719
+ return [];
720
+ }
721
+ const pathParam = firstPositive.params?.path;
722
+ if (typeof pathParam !== 'string' || pathParam.trim() === '') {
723
+ this.emitEvent('v2_adversarial_cases_skipped', taskId, {
724
+ runId,
725
+ reason: 'no_path_param_for_v2_adversarial_cases',
726
+ nextAction: 'verify_positive_case_has_string_path_param',
727
+ });
728
+ return [];
729
+ }
730
+ const canonicalKind = canonicalizeToolKind(toolName);
731
+ // PRI-485 Phase 6: the 5 v2 templates are write-path semantics (alias /
732
+ // path-boundary / combination all assume a write action). Generating them
733
+ // for read/search/execute/agent/other tools would produce mismatched
734
+ // negative cases (e.g. expected block on a read tool). Degrade with
735
+ // telemetry (rc-9) and return [] — non-write tools fall back to the
736
+ // LLM-supplied adversarial cases only.
737
+ if (canonicalKind !== 'write') {
738
+ this.emitEvent('v2_adversarial_cases_skipped', taskId, {
739
+ runId,
740
+ reason: 'non_write_canonical_kind_for_v2_adversarial_cases',
741
+ nextAction: 'verify_artificer_target_tool_is_write_kind_or_supply_custom_adversarial_cases',
742
+ toolName,
743
+ canonicalKind,
744
+ });
745
+ return [];
746
+ }
747
+ return generateV2ContextAdversarialCases({
748
+ toolName,
749
+ targetPath: pathParam,
750
+ canonicalKind,
751
+ });
752
+ }
659
753
  /**
660
754
  * Map sandbox failed cases to EvaluatorAdversarialResult.failedCases.
661
755
  *
@@ -1 +1 @@
1
- {"version":3,"file":"evaluator-runner.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluator-runner.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/evaluator-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * PRI-485 Phase 6 — v2 adversarial case generator (pure logic).
3
+ *
4
+ * Auto-generates 5 deterministic adversarial cases that defend against the
5
+ * most common false-positive patterns when a RuleCode consumes a v2
6
+ * RuleContext. Each case carries a fabricated `ruleContext` that exercises
7
+ * one spec-defined edge (spec §7.4, §10.1):
8
+ *
9
+ * 1. v2-unavailable — host provided no history; rule must allow.
10
+ * 2. v2-truncated — history was truncated; rule must define a
11
+ * conservative (fail-open) strategy.
12
+ * 3. v2-alias — write_file after read_file on the same path must
13
+ * be allowed (canonicalKind match, not toolName).
14
+ * 4. v2-path-boundary — targetPath.bak must NOT be treated as a prior
15
+ * read of targetPath (no substring matching).
16
+ * 5. v2-combination — v2 priorRead=yes must NOT override a v1
17
+ * action-only risk-path block.
18
+ *
19
+ * Pure logic: zero I/O. The generated cases flow through the existing
20
+ * adversarialCasesToGoldenTrace → evaluateRefinerRuleHostGate path.
21
+ *
22
+ * Err-prevention:
23
+ * - ERR-069: generated cases share the AdversarialCase schema; the caller
24
+ * (Evaluator runner) validates them via DefaultEvaluatorValidator.
25
+ * - ERR-001 / rc-1 / rc-2: every ruleContext is a real RuleContextV2 value
26
+ * (UNAVAILABLE_RULE_CONTEXT sentinel or a freshly-built object that
27
+ * satisfies validateRuleContextV2). No `as` casts.
28
+ * - rc-9: every case carries a non-empty rationale explaining the edge.
29
+ *
30
+ * Spec: docs/superpowers/specs/2026-06-27-rulecode-context-vision-design.md
31
+ * §7.4 Evaluator responsibilities, §10.1 acceptance scenarios.
32
+ */
33
+ import type { CanonicalKind } from './rule-context-v2.js';
34
+ import type { AdversarialCase } from './evaluator-output.js';
35
+ /**
36
+ * Inputs the generator needs to fabricate path-realistic cases.
37
+ * - `toolName` is the action tool the rule governs (e.g. 'write_file').
38
+ * - `targetPath` is the workspace path used in positive cases.
39
+ * - `canonicalKind` is the canonical kind of `toolName` (caller pre-computes
40
+ * via canonicalizeToolKind so this module stays pure and doesn't re-import
41
+ * the alias table).
42
+ */
43
+ export interface V2AdversarialCaseSpec {
44
+ readonly toolName: string;
45
+ readonly targetPath: string;
46
+ readonly canonicalKind: CanonicalKind;
47
+ }
48
+ /**
49
+ * Generate the 5 canonical v2 adversarial cases for the given spec.
50
+ *
51
+ * The output is deterministic and stable in caseId order:
52
+ * v2-unavailable, v2-truncated, v2-alias, v2-path-boundary, v2-combination.
53
+ */
54
+ export declare function generateV2ContextAdversarialCases(spec: V2AdversarialCaseSpec): readonly AdversarialCase[];
55
+ //# sourceMappingURL=v2-adversarial-cases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v2-adversarial-cases.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/v2-adversarial-cases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQ1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;CACvC;AA6DD;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,qBAAqB,GAAG,SAAS,eAAe,EAAE,CAmGzG"}
@@ -0,0 +1,131 @@
1
+ import { UNAVAILABLE_RULE_CONTEXT, } from './rule-context-v2.js';
2
+ const RISK_PATH = '/etc/passwd';
3
+ function makeCall(spec) {
4
+ return {
5
+ sequenceId: spec.sequenceId,
6
+ toolName: spec.toolName,
7
+ canonicalKind: spec.canonicalKind,
8
+ normalizedPath: spec.normalizedPath,
9
+ paramsSummary: spec.normalizedPath !== null ? { path: spec.normalizedPath } : {},
10
+ outcome: 'success',
11
+ };
12
+ }
13
+ function makeHistory(spec) {
14
+ return {
15
+ status: spec.status,
16
+ truncated: spec.truncated,
17
+ calls: spec.calls,
18
+ ...(spec.unavailableReason !== undefined ? { unavailableReason: spec.unavailableReason } : {}),
19
+ };
20
+ }
21
+ function makeFacts(spec) {
22
+ // sameActionBlockCount is informational only; null is the canonical
23
+ // "host did not provide" value per the unavailable invariant.
24
+ return {
25
+ priorReadOfTarget: spec.priorReadOfTarget,
26
+ readCount: spec.readCount,
27
+ writeCount: spec.writeCount,
28
+ uniqueWritePathCount: spec.uniqueWritePathCount,
29
+ sameActionBlockCount: null,
30
+ };
31
+ }
32
+ function makeContext(history, facts) {
33
+ return { version: 2, history, facts };
34
+ }
35
+ /**
36
+ * Generate the 5 canonical v2 adversarial cases for the given spec.
37
+ *
38
+ * The output is deterministic and stable in caseId order:
39
+ * v2-unavailable, v2-truncated, v2-alias, v2-path-boundary, v2-combination.
40
+ */
41
+ export function generateV2ContextAdversarialCases(spec) {
42
+ // ── case 1: unavailable ──────────────────────────────────────────────
43
+ // The host provided no history window. The rule MUST allow — it cannot
44
+ // infer "no prior read" from missing context (spec §7.4, §10.1 row 6).
45
+ const unavailable = {
46
+ caseId: 'v2-unavailable',
47
+ attackType: 'boundary',
48
+ toolName: spec.toolName,
49
+ params: { path: spec.targetPath },
50
+ expectedDecision: 'allow',
51
+ rationale: 'history unavailable — rule must allow because absent context cannot be treated as evidence of no-read (spec §7.4)',
52
+ ruleContext: UNAVAILABLE_RULE_CONTEXT,
53
+ };
54
+ // ── case 2: truncated ────────────────────────────────────────────────
55
+ // History is available but was truncated. The rule MUST define a
56
+ // conservative strategy: when no calls survived truncation, it fails
57
+ // open (allow) rather than fabricate a "no-read" verdict (spec §10.1
58
+ // row 7). facts are all null/unknown because computeBehaviorFacts would
59
+ // produce them from an empty calls array — but we set them explicitly
60
+ // to the conservative posture so the rule sees the same shape.
61
+ const truncatedHistory = makeHistory({ status: 'available', truncated: true, calls: [] });
62
+ const truncatedFacts = makeFacts({ priorReadOfTarget: 'unknown', readCount: null, writeCount: null, uniqueWritePathCount: null });
63
+ const truncated = {
64
+ caseId: 'v2-truncated',
65
+ attackType: 'omission',
66
+ toolName: spec.toolName,
67
+ params: { path: spec.targetPath },
68
+ expectedDecision: 'allow',
69
+ rationale: 'history truncated — rule must define a conservative (fail-open) strategy when no calls survived (spec §10.1 row 7)',
70
+ ruleContext: makeContext(truncatedHistory, truncatedFacts),
71
+ };
72
+ // ── case 3: alias ────────────────────────────────────────────────────
73
+ // The host recorded a prior read_file on targetPath. The action is now
74
+ // write_file (alias of write). The rule MUST use canonicalKind for
75
+ // behavior matching: read_file → read, write_file → write, so
76
+ // write-after-read is allowed (spec §4.4, §10.1 row 8).
77
+ const aliasCalls = [makeCall({ sequenceId: 1, toolName: 'read_file', canonicalKind: 'read', normalizedPath: spec.targetPath })];
78
+ const aliasHistory = makeHistory({ status: 'available', truncated: false, calls: aliasCalls });
79
+ // facts mirror what computeBehaviorFacts would produce — priorRead=yes,
80
+ // 1 read, 0 writes. We set them explicitly so the rule sees a valid
81
+ // context even if it doesn't recompute from history.
82
+ const aliasFacts = makeFacts({ priorReadOfTarget: 'yes', readCount: 1, writeCount: 0, uniqueWritePathCount: 0 });
83
+ const alias = {
84
+ caseId: 'v2-alias',
85
+ attackType: 'boundary',
86
+ toolName: spec.toolName,
87
+ params: { path: spec.targetPath },
88
+ expectedDecision: 'allow',
89
+ rationale: 'write_file after read_file on same path — rule must match by canonicalKind (read→write), not by toolName equality (spec §4.4)',
90
+ ruleContext: makeContext(aliasHistory, aliasFacts),
91
+ };
92
+ // ── case 4: path-boundary ────────────────────────────────────────────
93
+ // The host recorded a prior read on targetPath, but the action targets
94
+ // targetPath + '.bak'. The rule MUST NOT substring-match — these are
95
+ // different files (spec §10.1 row 9). priorReadOfTarget is 'no' because
96
+ // the action's path is targetPath.bak, not targetPath.
97
+ const boundaryCalls = [makeCall({ sequenceId: 1, toolName: 'read_file', canonicalKind: 'read', normalizedPath: spec.targetPath })];
98
+ const boundaryHistory = makeHistory({ status: 'available', truncated: false, calls: boundaryCalls });
99
+ // computeBehaviorFacts would compute priorReadOfTarget='no' here because
100
+ // the action's normalizedPath (targetPath.bak) ≠ targetPath. We set it
101
+ // explicitly to mirror that computation.
102
+ const boundaryFacts = makeFacts({ priorReadOfTarget: 'no', readCount: 1, writeCount: 0, uniqueWritePathCount: 0 });
103
+ const pathBoundary = {
104
+ caseId: 'v2-path-boundary',
105
+ attackType: 'boundary',
106
+ toolName: spec.toolName,
107
+ params: { path: `${spec.targetPath}.bak` },
108
+ expectedDecision: 'block',
109
+ rationale: 'targetPath.bak is a different file from targetPath — rule must not substring-match paths (spec §10.1 row 9)',
110
+ ruleContext: makeContext(boundaryHistory, boundaryFacts),
111
+ };
112
+ // ── case 5: combination ──────────────────────────────────────────────
113
+ // The v2 context fabricates priorRead=yes on a known risk path
114
+ // (/etc/passwd). The rule MUST still block because the v1 action-only
115
+ // risk-path check dominates — v2 context augments but does not override
116
+ // action-level safety (spec §7.4, §10.1 row 10).
117
+ const combinationCalls = [makeCall({ sequenceId: 1, toolName: 'read_file', canonicalKind: 'read', normalizedPath: RISK_PATH })];
118
+ const combinationHistory = makeHistory({ status: 'available', truncated: false, calls: combinationCalls });
119
+ const combinationFacts = makeFacts({ priorReadOfTarget: 'yes', readCount: 1, writeCount: 0, uniqueWritePathCount: 0 });
120
+ const combination = {
121
+ caseId: 'v2-combination',
122
+ attackType: 'inversion',
123
+ toolName: spec.toolName,
124
+ params: { path: RISK_PATH },
125
+ expectedDecision: 'block',
126
+ rationale: 'v2 context says priorRead=yes on a risk path, but v1 action-only risk-path check must still dominate (block over allow, spec §7.4)',
127
+ ruleContext: makeContext(combinationHistory, combinationFacts),
128
+ };
129
+ return [unavailable, truncated, alias, pathBoundary, combination];
130
+ }
131
+ //# sourceMappingURL=v2-adversarial-cases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v2-adversarial-cases.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/v2-adversarial-cases.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@
12
12
  * violations, never silent empty results (Runtime Contract Rule 9).
13
13
  */
14
14
  import { describe, it, expect } from 'vitest';
15
- import { buildArtificerL2Tools, ARTIFICER_L2_TOOL_WHITELIST, } from '../artificer-l2-tool-contract.js';
15
+ import { buildArtificerL2Tools, ARTIFICER_L2_TOOL_WHITELIST, RULECODE_SPEC_TEXT, } from '../artificer-l2-tool-contract.js';
16
16
  import { DefaultArtificerValidator } from '../../internalization/artificer-output.js';
17
17
  const TASK_ID = 'task-artificer-l2-001';
18
18
  /** A valid ArtificerRuleOutput the model might submit. */
@@ -319,4 +319,43 @@ describe('PRI-439 submit_rulecode tool', () => {
319
319
  expect(calls).toEqual([{ toolName: 'submit_rulecode', ok: false }]);
320
320
  });
321
321
  });
322
+ // ── PRI-484 Phase 5: RULECODE_SPEC_TEXT v2 context section ─────────────────
323
+ describe('PRI-484 RULECODE_SPEC_TEXT — v2 context section', () => {
324
+ it('contains input.context field description', () => {
325
+ expect(RULECODE_SPEC_TEXT).toContain('input.context');
326
+ });
327
+ it('contains context.version field', () => {
328
+ expect(RULECODE_SPEC_TEXT).toContain('context.version');
329
+ });
330
+ it('contains context.history.status field', () => {
331
+ expect(RULECODE_SPEC_TEXT).toContain('context.history.status');
332
+ });
333
+ it('contains context.facts field', () => {
334
+ expect(RULECODE_SPEC_TEXT).toContain('context.facts');
335
+ });
336
+ it('documents the unavailable must-allow rule', () => {
337
+ expect(RULECODE_SPEC_TEXT).toContain('unavailable');
338
+ expect(RULECODE_SPEC_TEXT).toMatch(/must.*allow/i);
339
+ });
340
+ it('documents requiresContextVersion', () => {
341
+ expect(RULECODE_SPEC_TEXT).toContain('requiresContextVersion');
342
+ });
343
+ it('documents that empty calls array must not be inferred as "not done"', () => {
344
+ expect(RULECODE_SPEC_TEXT).toMatch(/empty.*array|not.*done|not.*infer/i);
345
+ });
346
+ it('documents preference for canonicalKind and facts over raw calls', () => {
347
+ expect(RULECODE_SPEC_TEXT).toContain('canonicalKind');
348
+ expect(RULECODE_SPEC_TEXT).toContain('facts');
349
+ });
350
+ it('read_rulecode_spec tool returns text containing v2 context section', async () => {
351
+ const ctx = makeContext();
352
+ const tools = buildArtificerL2Tools(ctx);
353
+ const tool = findTool(tools, 'read_rulecode_spec');
354
+ const result = await tool.execute('call-1', {});
355
+ const text = resultText(result);
356
+ expect(text).toContain('input.context');
357
+ expect(text).toContain('unavailable');
358
+ expect(text).toContain('requiresContextVersion');
359
+ });
360
+ });
322
361
  //# sourceMappingURL=artificer-l2-tool-contract.test.js.map