@principles/core 1.146.3 → 1.148.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.
- package/dist/index.d.ts +0 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -6
- package/dist/index.js.map +1 -1
- package/dist/io.d.ts +0 -1
- package/dist/io.d.ts.map +1 -1
- package/dist/io.js +0 -2
- package/dist/io.js.map +1 -1
- package/dist/principle-injector.d.ts +1 -1
- package/dist/principle-injector.d.ts.map +1 -1
- package/dist/runtime-v2/__tests__/architecture-regression.test.js +81 -1
- package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
- package/dist/runtime-v2/adapter/__tests__/l2-agent-loop-adapter.test.d.ts +2 -0
- package/dist/runtime-v2/adapter/__tests__/l2-agent-loop-adapter.test.d.ts.map +1 -0
- package/dist/runtime-v2/adapter/__tests__/l2-agent-loop-adapter.test.js +329 -0
- package/dist/runtime-v2/adapter/__tests__/l2-agent-loop-adapter.test.js.map +1 -0
- package/dist/runtime-v2/adapter/l2-agent-loop-adapter.d.ts +52 -0
- package/dist/runtime-v2/adapter/l2-agent-loop-adapter.d.ts.map +1 -0
- package/dist/runtime-v2/adapter/l2-agent-loop-adapter.js +398 -0
- package/dist/runtime-v2/adapter/l2-agent-loop-adapter.js.map +1 -0
- package/dist/runtime-v2/agent-spec.d.ts +1 -1
- package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js +5 -0
- package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js.map +1 -1
- package/dist/runtime-v2/context-payload.d.ts +4 -4
- package/dist/runtime-v2/core-principles/__tests__/core-axiom-block.test.d.ts +5 -0
- package/dist/runtime-v2/core-principles/__tests__/core-axiom-block.test.d.ts.map +1 -0
- package/dist/runtime-v2/core-principles/__tests__/core-axiom-block.test.js +91 -0
- package/dist/runtime-v2/core-principles/__tests__/core-axiom-block.test.js.map +1 -0
- package/dist/runtime-v2/core-principles/core-axiom-block.d.ts +67 -0
- package/dist/runtime-v2/core-principles/core-axiom-block.d.ts.map +1 -0
- package/dist/runtime-v2/core-principles/core-axiom-block.js +76 -0
- package/dist/runtime-v2/core-principles/core-axiom-block.js.map +1 -0
- package/dist/runtime-v2/core-principles/index.d.ts +2 -0
- package/dist/runtime-v2/core-principles/index.d.ts.map +1 -1
- package/dist/runtime-v2/core-principles/index.js +1 -0
- package/dist/runtime-v2/core-principles/index.js.map +1 -1
- package/dist/runtime-v2/diagnostician/distiller-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/diagnostician/distiller-prompt-builder.js +5 -12
- package/dist/runtime-v2/diagnostician/distiller-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/diagnostician/rootcause-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/diagnostician/rootcause-prompt-builder.js +9 -13
- package/dist/runtime-v2/diagnostician/rootcause-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +2 -0
- package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js +6 -0
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
- package/dist/runtime-v2/full-trace-contract.d.ts +3 -3
- package/dist/runtime-v2/index.d.ts +5 -0
- package/dist/runtime-v2/index.d.ts.map +1 -1
- package/dist/runtime-v2/index.js +5 -0
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/scribe-prompt-builder.test.js +13 -8
- package/dist/runtime-v2/internalization/__tests__/scribe-prompt-builder.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/scribe-prompt-language.test.js +4 -3
- package/dist/runtime-v2/internalization/__tests__/scribe-prompt-language.test.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.js +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 +8 -0
- package/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/dreamer-prompt-builder.d.ts +19 -1
- package/dist/runtime-v2/internalization/dreamer-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/dreamer-prompt-builder.js +48 -8
- package/dist/runtime-v2/internalization/dreamer-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/internalization/dreamer-runner.d.ts +6 -0
- package/dist/runtime-v2/internalization/dreamer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/dreamer-runner.js +24 -1
- package/dist/runtime-v2/internalization/dreamer-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts +1 -1
- package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-prompt-builder.js +2 -2
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts +3 -0
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.js +8 -0
- package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/philosopher-prompt-builder.d.ts +20 -1
- package/dist/runtime-v2/internalization/philosopher-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/philosopher-prompt-builder.js +47 -6
- package/dist/runtime-v2/internalization/philosopher-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/internalization/philosopher-runner.d.ts +5 -0
- package/dist/runtime-v2/internalization/philosopher-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/philosopher-runner.js +14 -1
- package/dist/runtime-v2/internalization/philosopher-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/rollout-reviewer-prompt-builder.d.ts +1 -1
- package/dist/runtime-v2/internalization/rollout-reviewer-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/rollout-reviewer-prompt-builder.js +2 -2
- package/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts +20 -6
- package/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/scribe-prompt-builder.js +31 -15
- package/dist/runtime-v2/internalization/scribe-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/internalization/scribe-runner.d.ts +5 -0
- package/dist/runtime-v2/internalization/scribe-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/scribe-runner.js +14 -1
- package/dist/runtime-v2/internalization/scribe-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/trainer-prompt-builder.d.ts +1 -1
- package/dist/runtime-v2/internalization/trainer-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/trainer-prompt-builder.js +2 -2
- package/dist/runtime-v2/runner/base-peer-runner.d.ts +4 -1
- package/dist/runtime-v2/runner/base-peer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/runner/base-peer-runner.js +12 -2
- package/dist/runtime-v2/runner/base-peer-runner.js.map +1 -1
- package/dist/runtime-v2/runner/peer-runner-types.d.ts +7 -0
- package/dist/runtime-v2/runner/peer-runner-types.d.ts.map +1 -1
- package/dist/runtime-v2/runtime-protocol.d.ts +3 -3
- package/dist/runtime-v2/runtime-protocol.d.ts.map +1 -1
- package/dist/runtime-v2/runtime-protocol.js +1 -0
- package/dist/runtime-v2/runtime-protocol.js.map +1 -1
- package/dist/runtime-v2/runtime-selector.d.ts +3 -3
- package/dist/runtime-v2/tools/__tests__/agent-tool-contract.test.d.ts +2 -0
- package/dist/runtime-v2/tools/__tests__/agent-tool-contract.test.d.ts.map +1 -0
- package/dist/runtime-v2/tools/__tests__/agent-tool-contract.test.js +171 -0
- package/dist/runtime-v2/tools/__tests__/agent-tool-contract.test.js.map +1 -0
- package/dist/runtime-v2/tools/__tests__/dreamer-output-typebox.test.d.ts +2 -0
- package/dist/runtime-v2/tools/__tests__/dreamer-output-typebox.test.d.ts.map +1 -0
- package/dist/runtime-v2/tools/__tests__/dreamer-output-typebox.test.js +109 -0
- package/dist/runtime-v2/tools/__tests__/dreamer-output-typebox.test.js.map +1 -0
- package/dist/runtime-v2/tools/agent-tool-contract.d.ts +76 -0
- package/dist/runtime-v2/tools/agent-tool-contract.d.ts.map +1 -0
- package/dist/runtime-v2/tools/agent-tool-contract.js +136 -0
- package/dist/runtime-v2/tools/agent-tool-contract.js.map +1 -0
- package/dist/runtime-v2/tools/dreamer-output-typebox.d.ts +63 -0
- package/dist/runtime-v2/tools/dreamer-output-typebox.d.ts.map +1 -0
- package/dist/runtime-v2/tools/dreamer-output-typebox.js +55 -0
- package/dist/runtime-v2/tools/dreamer-output-typebox.js.map +1 -0
- package/dist/telemetry-event.d.ts +3 -3
- package/dist/telemetry-event.d.ts.map +1 -1
- package/dist/telemetry-event.js +6 -1
- package/dist/telemetry-event.js.map +1 -1
- package/package.json +3 -1
- package/dist/evolution-hook.d.ts +0 -70
- package/dist/evolution-hook.d.ts.map +0 -1
- package/dist/evolution-hook.js +0 -10
- package/dist/evolution-hook.js.map +0 -1
- package/dist/pain-flag-resolver.d.ts +0 -18
- package/dist/pain-flag-resolver.d.ts.map +0 -1
- package/dist/pain-flag-resolver.js +0 -21
- package/dist/pain-flag-resolver.js.map +0 -1
- package/dist/pain-recorder.d.ts +0 -38
- package/dist/pain-recorder.d.ts.map +0 -1
- package/dist/pain-recorder.js +0 -62
- package/dist/pain-recorder.js.map +0 -1
- package/dist/storage-adapter.d.ts +0 -59
- package/dist/storage-adapter.d.ts.map +0 -1
- package/dist/storage-adapter.js +0 -2
- package/dist/storage-adapter.js.map +0 -1
- package/dist/types/workspace-resolver.d.ts +0 -25
- package/dist/types/workspace-resolver.d.ts.map +0 -1
- package/dist/types/workspace-resolver.js +0 -10
- package/dist/types/workspace-resolver.js.map +0 -1
- package/dist/types.d.ts +0 -56
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -16
- package/dist/types.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -13,19 +13,10 @@
|
|
|
13
13
|
export { PainSignalSchema, validatePainSignal, deriveSeverity, PainSeverity } from './pain-signal.js';
|
|
14
14
|
export type { PainSignal, PainSignalValidationResult } from './pain-signal.js';
|
|
15
15
|
export { PainSignalAdapter } from './pain-signal-adapter.js';
|
|
16
|
-
export { EvolutionHook, noOpEvolutionHook } from './evolution-hook.js';
|
|
17
|
-
export type { PrincipleCreatedEvent, PrinciplePromotedEvent } from './evolution-hook.js';
|
|
18
16
|
export { TelemetryEventSchema, validateTelemetryEvent } from './telemetry-event.js';
|
|
19
17
|
export type { TelemetryEvent, TelemetryEventValidationResult, TelemetryEventType } from './telemetry-event.js';
|
|
20
|
-
export { StorageAdapter } from './storage-adapter.js';
|
|
21
18
|
export { PrincipleInjector, DefaultPrincipleInjector, InjectionContext } from './principle-injector.js';
|
|
22
|
-
export type { InjectablePrinciple } from './types.js';
|
|
23
|
-
export type { HybridLedgerStore } from './types.js';
|
|
24
|
-
export type { WorkspaceResolver } from './types/workspace-resolver.js';
|
|
25
19
|
export { atomicWriteFileSync } from './io.js';
|
|
26
|
-
export { recordPainSignal } from './pain-recorder.js';
|
|
27
|
-
export type { PainSignalInput } from './pain-recorder.js';
|
|
28
|
-
export { resolvePainFlagPath } from './pain-flag-resolver.js';
|
|
29
20
|
export { buildAttitudeDirective, detectCorrectionCue, extractMessageContent, isMinimalTrigger, truncateInjectionToBudget, } from './prompt-builder/index.js';
|
|
30
21
|
export type { PromptInjectionPart, SizeGuardOptions } from './prompt-builder/index.js';
|
|
31
22
|
export { matchEmpathyKeywords, createDefaultKeywordStore, applyKeywordUpdates, shouldTriggerOptimization, getKeywordStoreSummary, EMPATHY_SEED_KEYWORDS, DEFAULT_EMPATHY_KEYWORD_CONFIG, scoreToSeverity, severityToPenalty, normalizeSeverity, } from './prompt-builder/index.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACtG,YAAY,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAG/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -12,18 +12,12 @@
|
|
|
12
12
|
*/
|
|
13
13
|
// PainSignal schema and validation
|
|
14
14
|
export { PainSignalSchema, validatePainSignal, deriveSeverity, PainSeverity } from './pain-signal.js';
|
|
15
|
-
// EvolutionHook interface
|
|
16
|
-
export { noOpEvolutionHook } from './evolution-hook.js';
|
|
17
15
|
// TelemetryEvent schema
|
|
18
16
|
export { TelemetryEventSchema, validateTelemetryEvent } from './telemetry-event.js';
|
|
19
17
|
// PrincipleInjector interface and DefaultPrincipleInjector
|
|
20
18
|
export { DefaultPrincipleInjector } from './principle-injector.js';
|
|
21
19
|
// I/O utilities (D-03: atomicWriteFileSync for crash-safe writes)
|
|
22
20
|
export { atomicWriteFileSync } from './io.js';
|
|
23
|
-
// PainRecorder — pure function for pain signal recording (D-02)
|
|
24
|
-
export { recordPainSignal } from './pain-recorder.js';
|
|
25
|
-
// PainFlagPathResolver — pure function for resolving pain flag paths (D-04)
|
|
26
|
-
export { resolvePainFlagPath } from './pain-flag-resolver.js';
|
|
27
21
|
// Prompt builder primitives — pure functions extracted from openclaw-plugin prompt hook (PRI-75)
|
|
28
22
|
export { buildAttitudeDirective, detectCorrectionCue, extractMessageContent, isMinimalTrigger, truncateInjectionToBudget, } from './prompt-builder/index.js';
|
|
29
23
|
// Prompt builder — empathy keyword matching (PRI-81 Phase A)
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,mCAAmC;AACnC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMtG,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/io.d.ts
CHANGED
package/dist/io.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAE3D;;;;;;;OAOG;IACG,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAkBjE;
|
|
1
|
+
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAE3D;;;;;;;OAOG;IACG,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAkBjE;AAQD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAiCxE"}
|
package/dist/io.js
CHANGED
|
@@ -39,8 +39,6 @@ export class AsyncQueueLock {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
// Module-level singleton for recordPainSignal to use
|
|
43
|
-
export const painFlagLock = new AsyncQueueLock();
|
|
44
42
|
// Sync mutex: promise chain for synchronous code sections that need serialization.
|
|
45
43
|
// Use for single-process CLI tools that need atomic file access within the same process.
|
|
46
44
|
// NOT a distributed lock — each process gets its own chain on import.
|
package/dist/io.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"io.js","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACR,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE3D;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CAAI,GAAW,EAAE,EAAoB;QACjD,MAAM,QAAQ,GAAG,GAAG,CAAC;QAErB,IAAI,cAAwC,CAAC;QAC7C,MAAM,cAAc,GAAG,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrE,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,aAAa,CAAC;YACpB,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,cAAc,EAAE,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,YAAY,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED,
|
|
1
|
+
{"version":3,"file":"io.js","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* This implementation does NOT depend on openclaw-plugin internals.
|
|
11
11
|
* It uses only SDK types (InjectablePrinciple, InjectionContext).
|
|
12
12
|
*/
|
|
13
|
-
import type { InjectablePrinciple } from './
|
|
13
|
+
import type { InjectablePrinciple } from './prompt-builder/principle-selection.js';
|
|
14
14
|
/**
|
|
15
15
|
* Generic injection context -- no framework-specific fields.
|
|
16
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"principle-injector.d.ts","sourceRoot":"","sources":["../src/principle-injector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"principle-injector.d.ts","sourceRoot":"","sources":["../src/principle-injector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAEnF;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,8FAA8F;IAC9F,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;OAMG;IACH,qBAAqB,CACnB,UAAU,EAAE,mBAAmB,EAAE,EACjC,OAAO,EAAE,gBAAgB,GACxB,mBAAmB,EAAE,CAAC;IAEzB;;;;;OAKG;IACH,kBAAkB,CAAC,SAAS,EAAE,mBAAmB,GAAG,MAAM,CAAC;CAC5D;AAuBD;;;;;;;;;;;;GAYG;AACH,qBAAa,wBAAyB,YAAW,iBAAiB;IAChE,qBAAqB,CACnB,UAAU,EAAE,mBAAmB,EAAE,EACjC,OAAO,EAAE,gBAAgB,GACxB,mBAAmB,EAAE;IA4DxB,kBAAkB,CAAC,SAAS,EAAE,mBAAmB,GAAG,MAAM;CAG3D"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Add entries here whenever a new service/read-model boundary is established.
|
|
6
6
|
*/
|
|
7
|
-
import { describe, it, expect } from 'vitest';
|
|
7
|
+
import { describe, it, expect, beforeAll } from 'vitest';
|
|
8
8
|
// ── Source-file existence ──────────────────────────────────────────────────
|
|
9
9
|
const REQUIRED_SOURCE_FILES = [
|
|
10
10
|
'pain-to-principle-service.ts',
|
|
@@ -174,6 +174,11 @@ const REQUIRED_SOURCE_FILES = [
|
|
|
174
174
|
'internalization/diag-rootcause-runner.ts',
|
|
175
175
|
'internalization/diag-distiller-runner.ts',
|
|
176
176
|
'internalization/diag-router-runner.ts',
|
|
177
|
+
// PRI-419: L2 agent loop adapter (core, pure orchestration of pi-agent-core; no node:* imports)
|
|
178
|
+
'adapter/l2-agent-loop-adapter.ts',
|
|
179
|
+
// PRI-419: L2 agent loop tool contract + typebox output redeclaration (pure logic, no I/O)
|
|
180
|
+
'tools/agent-tool-contract.ts',
|
|
181
|
+
'tools/dreamer-output-typebox.ts',
|
|
177
182
|
];
|
|
178
183
|
// ── PRI-212: Plugin core anti-growth guard ────────────────────────────────────
|
|
179
184
|
//
|
|
@@ -3041,4 +3046,79 @@ describe('PRI-372: split diagnostician runners extend BasePeerRunner', () => {
|
|
|
3041
3046
|
expect(DiagRouterRunner.prototype).toBeInstanceOf(BasePeerRunner);
|
|
3042
3047
|
});
|
|
3043
3048
|
});
|
|
3049
|
+
// ── PRI-416: Type Single-Ownership Guards ──────────────────────────────────────
|
|
3050
|
+
//
|
|
3051
|
+
// These guards ensure that critical types/functions are defined exactly once
|
|
3052
|
+
// within principles-core/src/. This prevents the "duplicate type definition"
|
|
3053
|
+
// debt that led to PRI-413/PRI-415 (e.g., HybridLedgerStore in both
|
|
3054
|
+
// principle-tree-ledger.ts and types.ts).
|
|
3055
|
+
describe('PRI-416: type single-ownership guards', () => {
|
|
3056
|
+
let fs; // eslint-disable-line @typescript-eslint/consistent-type-imports
|
|
3057
|
+
let pathModule; // eslint-disable-line @typescript-eslint/consistent-type-imports
|
|
3058
|
+
let coreSrcDir;
|
|
3059
|
+
beforeAll(async () => {
|
|
3060
|
+
fs = await import('fs');
|
|
3061
|
+
pathModule = await import('path');
|
|
3062
|
+
coreSrcDir = pathModule.resolve(__dirname, '..', '..');
|
|
3063
|
+
});
|
|
3064
|
+
function findDefinitions(pattern) {
|
|
3065
|
+
const hits = [];
|
|
3066
|
+
function scan(dir) {
|
|
3067
|
+
for (const entry of fs.readdirSync(dir)) {
|
|
3068
|
+
const full = pathModule.join(dir, entry);
|
|
3069
|
+
const stat = fs.statSync(full);
|
|
3070
|
+
if (stat.isDirectory()) {
|
|
3071
|
+
if (entry === 'node_modules' || entry === '__tests__')
|
|
3072
|
+
continue;
|
|
3073
|
+
scan(full);
|
|
3074
|
+
}
|
|
3075
|
+
else if (entry.endsWith('.ts') && !entry.endsWith('.test.ts') && !entry.endsWith('.d.ts')) {
|
|
3076
|
+
const content = fs.readFileSync(full, 'utf-8');
|
|
3077
|
+
if (pattern.test(content)) {
|
|
3078
|
+
hits.push(full.replace(coreSrcDir + pathModule.sep, '').replace(coreSrcDir + '/', '').replace(/\\/g, '/'));
|
|
3079
|
+
}
|
|
3080
|
+
}
|
|
3081
|
+
}
|
|
3082
|
+
}
|
|
3083
|
+
scan(coreSrcDir);
|
|
3084
|
+
return hits;
|
|
3085
|
+
}
|
|
3086
|
+
it('InjectablePrinciple is defined exactly once in core/src/', () => {
|
|
3087
|
+
const hits = findDefinitions(/export\s+interface\s+InjectablePrinciple\s*\{/);
|
|
3088
|
+
expect(hits).toEqual(['prompt-builder/principle-selection.ts']);
|
|
3089
|
+
});
|
|
3090
|
+
it('HybridLedgerStore is defined exactly once in core/src/', () => {
|
|
3091
|
+
const hits = findDefinitions(/export\s+interface\s+HybridLedgerStore\s*\{/);
|
|
3092
|
+
expect(hits).toEqual(['principle-tree-ledger.ts']);
|
|
3093
|
+
});
|
|
3094
|
+
it('atomicWriteFileSync is defined exactly once in core/src/', () => {
|
|
3095
|
+
const hits = findDefinitions(/export\s+function\s+atomicWriteFileSync\s*\(/);
|
|
3096
|
+
expect(hits).toEqual(['io.ts']);
|
|
3097
|
+
});
|
|
3098
|
+
});
|
|
3099
|
+
// ── PRI-416: Barrel Cap Guards ────────────────────────────────────────────────
|
|
3100
|
+
//
|
|
3101
|
+
// The barrel export file (index.ts) must stay lean to avoid bloat.
|
|
3102
|
+
// After PRI-415 cleanup, it has ~263 total lines and ~40 export lines.
|
|
3103
|
+
// Set upper limits to prevent future regression.
|
|
3104
|
+
describe('PRI-416: barrel cap guards', () => {
|
|
3105
|
+
const BARREL_MAX_TOTAL_LINES = 300;
|
|
3106
|
+
const BARREL_MAX_EXPORT_LINES = 50;
|
|
3107
|
+
it('index.ts total lines <= ' + BARREL_MAX_TOTAL_LINES, async () => {
|
|
3108
|
+
const fsMod = await import('fs'); // eslint-disable-line @typescript-eslint/consistent-type-imports
|
|
3109
|
+
const pathMod = await import('path'); // eslint-disable-line @typescript-eslint/consistent-type-imports
|
|
3110
|
+
const barrelPath = pathMod.resolve(__dirname, '..', '..', 'index.ts');
|
|
3111
|
+
const content = fsMod.readFileSync(barrelPath, 'utf-8');
|
|
3112
|
+
const lineCount = content.split('\n').length;
|
|
3113
|
+
expect(lineCount).toBeLessThanOrEqual(BARREL_MAX_TOTAL_LINES);
|
|
3114
|
+
});
|
|
3115
|
+
it('index.ts export lines <= ' + BARREL_MAX_EXPORT_LINES, async () => {
|
|
3116
|
+
const fsMod = await import('fs'); // eslint-disable-line @typescript-eslint/consistent-type-imports
|
|
3117
|
+
const pathMod = await import('path'); // eslint-disable-line @typescript-eslint/consistent-type-imports
|
|
3118
|
+
const barrelPath = pathMod.resolve(__dirname, '..', '..', 'index.ts');
|
|
3119
|
+
const content = fsMod.readFileSync(barrelPath, 'utf-8');
|
|
3120
|
+
const exportLines = content.split('\n').filter((l) => /^\s*export\s/.test(l));
|
|
3121
|
+
expect(exportLines.length).toBeLessThanOrEqual(BARREL_MAX_EXPORT_LINES);
|
|
3122
|
+
});
|
|
3123
|
+
});
|
|
3044
3124
|
//# sourceMappingURL=architecture-regression.test.js.map
|