@principles/core 1.259.1 → 1.260.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/runtime-v2/__tests__/activation-compatibility-read-model.test.d.ts +2 -0
- package/dist/runtime-v2/__tests__/activation-compatibility-read-model.test.d.ts.map +1 -0
- package/dist/runtime-v2/__tests__/activation-compatibility-read-model.test.js +148 -0
- package/dist/runtime-v2/__tests__/activation-compatibility-read-model.test.js.map +1 -0
- package/dist/runtime-v2/__tests__/architecture-regression.test.js +6 -5
- package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/golden-trace.test.js +2 -2
- package/dist/runtime-v2/__tests__/golden-trace.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/internalization-contracts.test.js +4 -6
- package/dist/runtime-v2/__tests__/internalization-contracts.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/rule-host-evaluator.test.js +4 -4
- package/dist/runtime-v2/__tests__/rule-host-evaluator.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/story-a-demo.test.js +8 -8
- package/dist/runtime-v2/__tests__/story-a-demo.test.js.map +1 -1
- package/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js +31 -0
- package/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js.map +1 -1
- package/dist/runtime-v2/activation-compatibility-read-model.d.ts +24 -0
- package/dist/runtime-v2/activation-compatibility-read-model.d.ts.map +1 -0
- package/dist/runtime-v2/activation-compatibility-read-model.js +132 -0
- package/dist/runtime-v2/activation-compatibility-read-model.js.map +1 -0
- package/dist/runtime-v2/config/__tests__/pd-validate-profile-legacy-keys.test.d.ts +13 -0
- package/dist/runtime-v2/config/__tests__/pd-validate-profile-legacy-keys.test.d.ts.map +1 -0
- package/dist/runtime-v2/config/__tests__/pd-validate-profile-legacy-keys.test.js +73 -0
- package/dist/runtime-v2/config/__tests__/pd-validate-profile-legacy-keys.test.js.map +1 -0
- package/dist/runtime-v2/config/pd-config-types.d.ts +0 -23
- package/dist/runtime-v2/config/pd-config-types.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-config-types.js.map +1 -1
- package/dist/runtime-v2/config/pd-profile-constants.d.ts +11 -5
- package/dist/runtime-v2/config/pd-profile-constants.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-profile-constants.js +10 -45
- package/dist/runtime-v2/config/pd-profile-constants.js.map +1 -1
- package/dist/runtime-v2/config/pd-validate-profile.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-validate-profile.js +27 -135
- package/dist/runtime-v2/config/pd-validate-profile.js.map +1 -1
- package/dist/runtime-v2/core-principles/core-principle-registry.d.ts +4 -4
- package/dist/runtime-v2/core-principles/core-principle-registry.d.ts.map +1 -1
- package/dist/runtime-v2/core-principles/core-principle-registry.js +2 -2
- package/dist/runtime-v2/golden-trace-replay-validator.d.ts.map +1 -1
- package/dist/runtime-v2/golden-trace-replay-validator.js +0 -2
- package/dist/runtime-v2/golden-trace-replay-validator.js.map +1 -1
- package/dist/runtime-v2/golden-trace.d.ts.map +1 -1
- package/dist/runtime-v2/golden-trace.js +0 -3
- package/dist/runtime-v2/golden-trace.js.map +1 -1
- package/dist/runtime-v2/index.d.ts +7 -5
- package/dist/runtime-v2/index.d.ts.map +1 -1
- package/dist/runtime-v2/index.js +6 -5
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/external-review-p0-regressions.test.js +2 -2
- package/dist/runtime-v2/internalization/__tests__/external-review-p0-regressions.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/internalization-transition-decision.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/legacy-rule-contract-scanner.test.d.ts +2 -0
- package/dist/runtime-v2/internalization/__tests__/legacy-rule-contract-scanner.test.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/legacy-rule-contract-scanner.test.js +101 -0
- package/dist/runtime-v2/internalization/__tests__/legacy-rule-contract-scanner.test.js.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/mvp-core-loop-journeys.test.js +28 -28
- package/dist/runtime-v2/internalization/__tests__/mvp-core-loop-journeys.test.js.map +1 -1
- package/dist/runtime-v2/internalization/index.d.ts +2 -0
- package/dist/runtime-v2/internalization/index.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/index.js +1 -0
- package/dist/runtime-v2/internalization/index.js.map +1 -1
- package/dist/runtime-v2/internalization/legacy-rule-contract-scanner.d.ts +51 -0
- package/dist/runtime-v2/internalization/legacy-rule-contract-scanner.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/legacy-rule-contract-scanner.js +81 -0
- package/dist/runtime-v2/internalization/legacy-rule-contract-scanner.js.map +1 -0
- package/dist/runtime-v2/internalization/refiner-sandbox-wrapper.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js +0 -2
- package/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js.map +1 -1
- package/dist/runtime-v2/internalization/rule-host-contracts.d.ts +0 -3
- package/dist/runtime-v2/internalization/rule-host-contracts.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/rule-host-helpers.d.ts +4 -2
- package/dist/runtime-v2/internalization/rule-host-helpers.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/rule-host-helpers.js +4 -2
- package/dist/runtime-v2/internalization/rule-host-helpers.js.map +1 -1
- package/dist/runtime-v2/pain-signal-observability.js +3 -3
- package/dist/runtime-v2/pain-signal-observability.js.map +1 -1
- package/dist/runtime-v2/story-a-demo.d.ts.map +1 -1
- package/dist/runtime-v2/story-a-demo.js +2 -0
- package/dist/runtime-v2/story-a-demo.js.map +1 -1
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.js +0 -4
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
- package/dist/runtime-v2/types/event-payload.d.ts +1 -20
- package/dist/runtime-v2/types/event-payload.d.ts.map +1 -1
- package/dist/runtime-v2/types/event-payload.js +0 -12
- package/dist/runtime-v2/types/event-payload.js.map +1 -1
- package/dist/runtime-v2/types/event-types.d.ts +3 -18
- package/dist/runtime-v2/types/event-types.d.ts.map +1 -1
- package/dist/runtime-v2/types/event-types.js +0 -8
- package/dist/runtime-v2/types/event-types.js.map +1 -1
- package/dist/runtime-v2/types/index.d.ts +3 -3
- package/dist/runtime-v2/types/index.d.ts.map +1 -1
- package/dist/runtime-v2/types/index.js +2 -2
- package/dist/runtime-v2/types/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.d.ts +0 -2
- package/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.d.ts.map +0 -1
- package/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.js +0 -149
- package/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.js.map +0 -1
- package/dist/runtime-v2/thinking-models/index.d.ts +0 -3
- package/dist/runtime-v2/thinking-models/index.d.ts.map +0 -1
- package/dist/runtime-v2/thinking-models/index.js +0 -3
- package/dist/runtime-v2/thinking-models/index.js.map +0 -1
- package/dist/runtime-v2/thinking-models/thinking-models-policy.d.ts +0 -73
- package/dist/runtime-v2/thinking-models/thinking-models-policy.d.ts.map +0 -1
- package/dist/runtime-v2/thinking-models/thinking-models-policy.js +0 -227
- package/dist/runtime-v2/thinking-models/thinking-models-policy.js.map +0 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type LegacyRuleContractFinding } from './internalization/legacy-rule-contract-scanner.js';
|
|
2
|
+
export interface ActivationCompatibilityScanResult {
|
|
3
|
+
ok: boolean;
|
|
4
|
+
workspaceDir: string;
|
|
5
|
+
/** 'clean' = no retired-contract dependencies; 'legacy_dependency' = findings present. */
|
|
6
|
+
status: 'clean' | 'legacy_dependency' | 'no_state_db' | 'scan_failed';
|
|
7
|
+
findings: LegacyRuleContractFinding[];
|
|
8
|
+
scannedActivations: number;
|
|
9
|
+
reason?: string;
|
|
10
|
+
nextAction?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare class ActivationCompatibilityReadModel {
|
|
13
|
+
private readonly workspaceDir;
|
|
14
|
+
constructor(options: {
|
|
15
|
+
workspaceDir: string;
|
|
16
|
+
});
|
|
17
|
+
/**
|
|
18
|
+
* Scan active code_tool_hook rules for retired-contract dependencies.
|
|
19
|
+
* Never mutates the workspace; a missing state.db is a clean pass (fresh
|
|
20
|
+
* install — nothing persisted to be incompatible with).
|
|
21
|
+
*/
|
|
22
|
+
scan(): ActivationCompatibilityScanResult;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=activation-compatibility-read-model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activation-compatibility-read-model.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/activation-compatibility-read-model.ts"],"names":[],"mappings":"AAoBA,OAAO,EAEL,KAAK,yBAAyB,EAE/B,MAAM,mDAAmD,CAAC;AAE3D,MAAM,WAAW,iCAAiC;IAChD,EAAE,EAAE,OAAO,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,0FAA0F;IAC1F,MAAM,EAAE,OAAO,GAAG,mBAAmB,GAAG,aAAa,GAAG,aAAa,CAAC;IACtE,QAAQ,EAAE,yBAAyB,EAAE,CAAC;IACtC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAWD,qBAAa,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAEtC,YAAY,OAAO,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,EAE5C;IAED;;;;OAIG;IACH,IAAI,IAAI,iCAAiC,CAuFxC;CACF"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Activation compatibility read model (2026-08-19).
|
|
3
|
+
*
|
|
4
|
+
* Read-only model that loads ACTIVE code_tool_hook RuleCode from a
|
|
5
|
+
* workspace's .pd/state.db (activations ⋈ pi_artifacts) and runs the legacy
|
|
6
|
+
* RuleHost contract scanner over each implementation. Consumers:
|
|
7
|
+
*
|
|
8
|
+
* - `pd runtime compatibility-scan` (pd-cli) — the installer's upgrade
|
|
9
|
+
* preflight invokes this through the NEW pd-cli before replacing the
|
|
10
|
+
* current installation;
|
|
11
|
+
* - pd-console update routes — in-process preflight before applying an
|
|
12
|
+
* update that would swap the runtime executing these rules.
|
|
13
|
+
*
|
|
14
|
+
* IO discipline: strictly read-only. `bootstrapIfMissing: false` guarantees a
|
|
15
|
+
* fresh workspace with no state.db is reported as "nothing to scan" instead
|
|
16
|
+
* of creating a database. Rows are validated from `unknown` (rc-1/rc-2).
|
|
17
|
+
*/
|
|
18
|
+
import * as fs from 'fs';
|
|
19
|
+
import * as path from 'path';
|
|
20
|
+
import { SqliteConnection } from './store/sqlite-connection.js';
|
|
21
|
+
import { scanLegacyRuleContractDependencies, } from './internalization/legacy-rule-contract-scanner.js';
|
|
22
|
+
function isRecord(value) {
|
|
23
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
24
|
+
}
|
|
25
|
+
function readStringField(row, key) {
|
|
26
|
+
const value = row[key];
|
|
27
|
+
return typeof value === 'string' && value.length > 0 ? value : undefined;
|
|
28
|
+
}
|
|
29
|
+
export class ActivationCompatibilityReadModel {
|
|
30
|
+
workspaceDir;
|
|
31
|
+
constructor(options) {
|
|
32
|
+
this.workspaceDir = path.resolve(options.workspaceDir);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Scan active code_tool_hook rules for retired-contract dependencies.
|
|
36
|
+
* Never mutates the workspace; a missing state.db is a clean pass (fresh
|
|
37
|
+
* install — nothing persisted to be incompatible with).
|
|
38
|
+
*/
|
|
39
|
+
scan() {
|
|
40
|
+
const stateDbPath = path.join(this.workspaceDir, '.pd', 'state.db');
|
|
41
|
+
if (!fs.existsSync(stateDbPath)) {
|
|
42
|
+
return {
|
|
43
|
+
ok: true,
|
|
44
|
+
workspaceDir: this.workspaceDir,
|
|
45
|
+
status: 'no_state_db',
|
|
46
|
+
findings: [],
|
|
47
|
+
scannedActivations: 0,
|
|
48
|
+
reason: 'state.db not found — workspace has no persisted activations to scan',
|
|
49
|
+
nextAction: 'Nothing to do; fresh workspaces have no legacy rule contracts.',
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
let conn = null;
|
|
53
|
+
try {
|
|
54
|
+
conn = new SqliteConnection({
|
|
55
|
+
workspaceDir: this.workspaceDir,
|
|
56
|
+
readonly: true,
|
|
57
|
+
bootstrapIfMissing: false,
|
|
58
|
+
});
|
|
59
|
+
const db = conn.getDb();
|
|
60
|
+
const rows = db.prepare(`
|
|
61
|
+
SELECT a.activation_id, a.artifact_id, a.action,
|
|
62
|
+
p.content_json, p.source_rule_id, p.source_principle_id
|
|
63
|
+
FROM activations a
|
|
64
|
+
JOIN pi_artifacts p ON a.artifact_id = p.artifact_id
|
|
65
|
+
WHERE a.channel = 'code_tool_hook' AND a.deactivated_at IS NULL
|
|
66
|
+
ORDER BY a.activated_at ASC
|
|
67
|
+
`).all();
|
|
68
|
+
const sources = [];
|
|
69
|
+
if (Array.isArray(rows)) {
|
|
70
|
+
for (const row of rows) {
|
|
71
|
+
if (!isRecord(row))
|
|
72
|
+
continue;
|
|
73
|
+
const artifactId = readStringField(row, 'artifact_id');
|
|
74
|
+
const contentJson = readStringField(row, 'content_json');
|
|
75
|
+
if (!artifactId || !contentJson)
|
|
76
|
+
continue;
|
|
77
|
+
let content;
|
|
78
|
+
try {
|
|
79
|
+
content = JSON.parse(contentJson);
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
if (!isRecord(content))
|
|
85
|
+
continue;
|
|
86
|
+
const { implementationCode } = content;
|
|
87
|
+
if (typeof implementationCode !== 'string' || implementationCode.length === 0)
|
|
88
|
+
continue;
|
|
89
|
+
sources.push({
|
|
90
|
+
activationId: readStringField(row, 'activation_id'),
|
|
91
|
+
artifactId,
|
|
92
|
+
ruleId: readStringField(row, 'source_rule_id') ?? (isRecord(content) && typeof content.ruleId === 'string' ? content.ruleId : undefined),
|
|
93
|
+
principleId: readStringField(row, 'source_principle_id'),
|
|
94
|
+
implementationCode,
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const findings = scanLegacyRuleContractDependencies(sources);
|
|
99
|
+
return {
|
|
100
|
+
ok: findings.length === 0,
|
|
101
|
+
workspaceDir: this.workspaceDir,
|
|
102
|
+
status: findings.length === 0 ? 'clean' : 'legacy_dependency',
|
|
103
|
+
findings,
|
|
104
|
+
scannedActivations: sources.length,
|
|
105
|
+
...(findings.length > 0
|
|
106
|
+
? {
|
|
107
|
+
reason: 'legacy_rule_contract_dependency',
|
|
108
|
+
nextAction: 'Migrate or deactivate the listed rules before upgrading. The current installation is untouched.',
|
|
109
|
+
}
|
|
110
|
+
: {}),
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
catch (err) {
|
|
114
|
+
// rc-9: structured failure, never a silent pass on an unreadable DB —
|
|
115
|
+
// callers treat ok=false as "refuse to proceed".
|
|
116
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
117
|
+
return {
|
|
118
|
+
ok: false,
|
|
119
|
+
workspaceDir: this.workspaceDir,
|
|
120
|
+
status: 'scan_failed',
|
|
121
|
+
findings: [],
|
|
122
|
+
scannedActivations: 0,
|
|
123
|
+
reason: `state.db scan failed: ${message}`,
|
|
124
|
+
nextAction: 'Resolve the workspace database access issue, then retry the compatibility scan.',
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
finally {
|
|
128
|
+
conn?.close();
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=activation-compatibility-read-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activation-compatibility-read-model.js","sourceRoot":"","sources":["../../src/runtime-v2/activation-compatibility-read-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Profile legacy gate-key validation — PRI-286 retirement + P2-8 aliases
|
|
3
|
+
*
|
|
4
|
+
* gate / progressive_gate / thinking_checkpoint (and the historical plugin
|
|
5
|
+
* normalizer's camelCase aliases progressiveGate / thinkingCheckpoint) are
|
|
6
|
+
* retired profile keys. The validator must:
|
|
7
|
+
* - keep loading (never hard-reject an old workspace);
|
|
8
|
+
* - emit a deprecation warning for each occurrence (rc-9: observable);
|
|
9
|
+
* - NOT pass any of them into the effective config value (ignore, never
|
|
10
|
+
* restored to canonical config — P2-8).
|
|
11
|
+
*/
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=pd-validate-profile-legacy-keys.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pd-validate-profile-legacy-keys.test.d.ts","sourceRoot":"","sources":["../../../../src/runtime-v2/config/__tests__/pd-validate-profile-legacy-keys.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Profile legacy gate-key validation — PRI-286 retirement + P2-8 aliases
|
|
3
|
+
*
|
|
4
|
+
* gate / progressive_gate / thinking_checkpoint (and the historical plugin
|
|
5
|
+
* normalizer's camelCase aliases progressiveGate / thinkingCheckpoint) are
|
|
6
|
+
* retired profile keys. The validator must:
|
|
7
|
+
* - keep loading (never hard-reject an old workspace);
|
|
8
|
+
* - emit a deprecation warning for each occurrence (rc-9: observable);
|
|
9
|
+
* - NOT pass any of them into the effective config value (ignore, never
|
|
10
|
+
* restored to canonical config — P2-8).
|
|
11
|
+
*/
|
|
12
|
+
import { describe, it, expect } from 'vitest';
|
|
13
|
+
import { validateProfileConfig } from '../index.js';
|
|
14
|
+
/** validateProfileConfig takes the profile object directly (path defaults to 'profile'). */
|
|
15
|
+
function messages(raw) {
|
|
16
|
+
const result = validateProfileConfig(raw);
|
|
17
|
+
if (!result.ok) {
|
|
18
|
+
throw new Error(`validateProfileConfig unexpectedly failed: ${JSON.stringify(result.errors)}`);
|
|
19
|
+
}
|
|
20
|
+
return result.warnings.map((w) => `${w.path}: ${w.message}`);
|
|
21
|
+
}
|
|
22
|
+
describe('validateProfileConfig legacy gate keys (PRI-286 / P2-8)', () => {
|
|
23
|
+
it('flags snake_case retired keys and drops them from the effective value', () => {
|
|
24
|
+
const result = validateProfileConfig({
|
|
25
|
+
gate: { enabled: true },
|
|
26
|
+
progressive_gate: { enabled: true },
|
|
27
|
+
thinking_checkpoint: { enabled: true },
|
|
28
|
+
});
|
|
29
|
+
expect(result.ok).toBe(true);
|
|
30
|
+
const msgs = result.ok ? result.warnings.map((w) => `${w.path}: ${w.message}`) : [];
|
|
31
|
+
expect(msgs.some((m) => m.includes('profile.gate'))).toBe(true);
|
|
32
|
+
expect(msgs.some((m) => m.includes('profile.progressive_gate'))).toBe(true);
|
|
33
|
+
expect(msgs.some((m) => m.includes('profile.thinking_checkpoint'))).toBe(true);
|
|
34
|
+
if (result.ok) {
|
|
35
|
+
// Retired keys are ignored, never restored into the effective value.
|
|
36
|
+
expect(Object.hasOwn(result.value, 'gate')).toBe(false);
|
|
37
|
+
expect(Object.hasOwn(result.value, 'progressive_gate')).toBe(false);
|
|
38
|
+
expect(Object.hasOwn(result.value, 'thinking_checkpoint')).toBe(false);
|
|
39
|
+
expect(Object.hasOwn(result.value, 'progressiveGate')).toBe(false);
|
|
40
|
+
expect(Object.hasOwn(result.value, 'thinkingCheckpoint')).toBe(false);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
it('flags camelCase aliases progressiveGate / thinkingCheckpoint (P2-8)', () => {
|
|
44
|
+
const msgs = messages({ progressiveGate: { enabled: true }, thinkingCheckpoint: { enabled: true } });
|
|
45
|
+
expect(msgs.some((m) => m.includes('profile.progressiveGate') && m.includes('legacy camelCase alias'))).toBe(true);
|
|
46
|
+
expect(msgs.some((m) => m.includes('profile.thinkingCheckpoint') && m.includes('legacy camelCase alias'))).toBe(true);
|
|
47
|
+
});
|
|
48
|
+
it('emits the canonical-key warning too when both alias forms are present', () => {
|
|
49
|
+
const msgs = messages({ progressive_gate: {}, progressiveGate: {}, thinking_checkpoint: {}, thinkingCheckpoint: {} });
|
|
50
|
+
expect(msgs.filter((m) => m.startsWith('profile.progressive_gate')).length).toBeGreaterThanOrEqual(1);
|
|
51
|
+
expect(msgs.filter((m) => m.startsWith('profile.progressiveGate')).length).toBeGreaterThanOrEqual(1);
|
|
52
|
+
expect(msgs.filter((m) => m.startsWith('profile.thinking_checkpoint')).length).toBeGreaterThanOrEqual(1);
|
|
53
|
+
expect(msgs.filter((m) => m.startsWith('profile.thinkingCheckpoint')).length).toBeGreaterThanOrEqual(1);
|
|
54
|
+
});
|
|
55
|
+
it('does not warn on a clean profile and keeps its valid keys', () => {
|
|
56
|
+
const result = validateProfileConfig({ audit_level: 'low', risk_paths: ['src/**'] });
|
|
57
|
+
expect(result.ok).toBe(true);
|
|
58
|
+
if (result.ok) {
|
|
59
|
+
expect(result.warnings).toEqual([]);
|
|
60
|
+
expect(result.value.audit_level).toBe('low');
|
|
61
|
+
expect(result.value.risk_paths).toEqual(['src/**']);
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
it('ignores lookalike camelCase keys that are not retired aliases', () => {
|
|
65
|
+
const result = validateProfileConfig({ progressiveGateKeeper: true, thinkingCheckpointV2: true });
|
|
66
|
+
expect(result.ok).toBe(true);
|
|
67
|
+
if (result.ok) {
|
|
68
|
+
const msgs = result.warnings.map((w) => w.message);
|
|
69
|
+
expect(msgs.some((m) => m.includes('legacy camelCase alias'))).toBe(false);
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
//# sourceMappingURL=pd-validate-profile-legacy-keys.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pd-validate-profile-legacy-keys.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/config/__tests__/pd-validate-profile-legacy-keys.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -102,11 +102,6 @@ export declare const PROFILE_EVOLUTION_MODES: readonly ['realtime', 'async'];
|
|
|
102
102
|
export type ProfileEvolutionMode = (typeof PROFILE_EVOLUTION_MODES)[number];
|
|
103
103
|
export declare const PROFILE_TEST_LEVELS: readonly ['smoke', 'unit', 'full'];
|
|
104
104
|
export type ProfileTestLevel = (typeof PROFILE_TEST_LEVELS)[number];
|
|
105
|
-
export interface ProfileGateConfig {
|
|
106
|
-
require_plan_for_risk_paths: boolean;
|
|
107
|
-
require_audit_before_write: boolean;
|
|
108
|
-
require_reviewer_after_write: boolean;
|
|
109
|
-
}
|
|
110
105
|
export interface ProfileTestsConfig {
|
|
111
106
|
on_change: ProfileTestLevel;
|
|
112
107
|
on_risk_change: ProfileTestLevel;
|
|
@@ -130,16 +125,6 @@ export interface ProfileLifecycleConfig {
|
|
|
130
125
|
enabled: boolean;
|
|
131
126
|
heartbeat_stale_hours: number;
|
|
132
127
|
}
|
|
133
|
-
export interface ProfilePlanApprovalsConfig {
|
|
134
|
-
enabled: boolean;
|
|
135
|
-
max_lines_override: number;
|
|
136
|
-
allowed_patterns: string[];
|
|
137
|
-
allowed_operations: string[];
|
|
138
|
-
}
|
|
139
|
-
export interface ProfileProgressiveGateConfig {
|
|
140
|
-
enabled: boolean;
|
|
141
|
-
plan_approvals: ProfilePlanApprovalsConfig;
|
|
142
|
-
}
|
|
143
128
|
export interface ProfileEditVerificationConfig {
|
|
144
129
|
enabled: boolean;
|
|
145
130
|
max_file_size_bytes: number;
|
|
@@ -147,11 +132,6 @@ export interface ProfileEditVerificationConfig {
|
|
|
147
132
|
fuzzy_match_threshold: number;
|
|
148
133
|
skip_large_file_action: 'warn' | 'block';
|
|
149
134
|
}
|
|
150
|
-
export interface ProfileThinkingCheckpointConfig {
|
|
151
|
-
enabled: boolean;
|
|
152
|
-
window_ms: number;
|
|
153
|
-
high_risk_tools: string[];
|
|
154
|
-
}
|
|
155
135
|
export interface ProfileCustomGuard {
|
|
156
136
|
pattern: string;
|
|
157
137
|
message: string;
|
|
@@ -161,13 +141,10 @@ export interface ProfileConfig {
|
|
|
161
141
|
audit_level: ProfileAuditLevel;
|
|
162
142
|
risk_paths: string[];
|
|
163
143
|
evolution_mode: ProfileEvolutionMode;
|
|
164
|
-
gate: ProfileGateConfig;
|
|
165
144
|
tests: ProfileTestsConfig;
|
|
166
145
|
pain: ProfilePainConfig;
|
|
167
146
|
lifecycle: ProfileLifecycleConfig;
|
|
168
|
-
progressive_gate: ProfileProgressiveGateConfig;
|
|
169
147
|
edit_verification: ProfileEditVerificationConfig;
|
|
170
|
-
thinking_checkpoint: ProfileThinkingCheckpointConfig;
|
|
171
148
|
custom_guards: ProfileCustomGuard[];
|
|
172
149
|
}
|
|
173
150
|
export declare const VALID_PROJECT_FOCUS_MODES: readonly ['full', 'summary', 'off'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pd-config-types.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-config-types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"pd-config-types.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-config-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pd-config-types.js","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-config-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAGnC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,CAAU,CAAC;AAU5F,+EAA+E;AAE/E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,UAAU,EAAE,OAAO,CAAU,CAAC;AA8ClE,+EAA+E;AAE/E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,eAAe;IACf,SAAS;IACT,aAAa;IACb,QAAQ;IACR,WAAW;IACX,WAAW;IACX,iBAAiB;IACjB,oBAAoB;IACpB,iBAAiB;IACjB,iBAAiB;CACT,CAAC;AAuBX,+EAA+E;AAE/E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAU,CAAC;AA+BvE,gFAAgF;AAEhF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAGvE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,UAAU,EAAE,OAAO,CAAU,CAAC;AAGtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"pd-config-types.js","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-config-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAGnC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,CAAU,CAAC;AAU5F,+EAA+E;AAE/E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,UAAU,EAAE,OAAO,CAAU,CAAC;AA8ClE,+EAA+E;AAE/E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,eAAe;IACf,SAAS;IACT,aAAa;IACb,QAAQ;IACR,WAAW;IACX,WAAW;IACX,iBAAiB;IACjB,oBAAoB;IACpB,iBAAiB;IACjB,iBAAiB;CACT,CAAC;AAuBX,+EAA+E;AAE/E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAU,CAAC;AA+BvE,gFAAgF;AAEhF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAGvE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,UAAU,EAAE,OAAO,CAAU,CAAC;AAGtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AA+DtE,qEAAqE;AAErE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAU,CAAC;AAsI7E,+EAA+E;AAE/E,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;AAEjF,+EAA+E;AAC/E,yEAAyE;AACzE,gFAAgF;AAChF,MAAM,CAAC,MAAM,8BAA8B,GAAG,yBAAkC,CAAC"}
|
|
@@ -6,22 +6,28 @@
|
|
|
6
6
|
* for backward compatibility with the transition to core types.
|
|
7
7
|
*
|
|
8
8
|
* All defaults are testable and explicit.
|
|
9
|
+
*
|
|
10
|
+
* PRI-286 retirement cleanup (2026-08-19): the gate / progressive_gate /
|
|
11
|
+
* thinking_checkpoint defaults were removed. The runtime no longer executes
|
|
12
|
+
* any built-in gate from these keys (RuleHost is the sole gate); workspaces
|
|
13
|
+
* that still carry the legacy keys get a deprecation warning from
|
|
14
|
+
* pd-validate-profile.ts, not a resolved default.
|
|
9
15
|
*/
|
|
10
|
-
import { type ProfileConfig, type
|
|
11
|
-
export declare const PROFILE_DEFAULT_GATE: ProfileGateConfig;
|
|
16
|
+
import { type ProfileConfig, type ProfileTestsConfig, type ProfileAdaptivePainConfig, type ProfilePainConfig, type ProfileLifecycleConfig, type ProfileEditVerificationConfig, type ProfileCustomGuard } from './pd-config-types.js';
|
|
12
17
|
export declare const PROFILE_DEFAULT_TESTS: ProfileTestsConfig;
|
|
13
18
|
export declare const PROFILE_DEFAULT_ADAPTIVE_PAIN: ProfileAdaptivePainConfig;
|
|
14
19
|
export declare const PROFILE_DEFAULT_PAIN: ProfilePainConfig;
|
|
15
20
|
export declare const PROFILE_DEFAULT_LIFECYCLE: ProfileLifecycleConfig;
|
|
16
|
-
export declare const PROFILE_DEFAULT_PLAN_APPROVALS: ProfilePlanApprovalsConfig;
|
|
17
|
-
export declare const PROFILE_DEFAULT_PROGRESSIVE_GATE: ProfileProgressiveGateConfig;
|
|
18
21
|
export declare const PROFILE_DEFAULT_EDIT_VERIFICATION: ProfileEditVerificationConfig;
|
|
19
|
-
export declare const PROFILE_DEFAULT_THINKING_CHECKPOINT: ProfileThinkingCheckpointConfig;
|
|
20
22
|
export declare const PROFILE_DEFAULT_CUSTOM_GUARDS: ProfileCustomGuard[];
|
|
21
23
|
export declare const PROFILE_DEFAULTS: ProfileConfig;
|
|
22
24
|
/**
|
|
23
25
|
* Deep-merge a partial user profile with PROFILE_DEFAULTS.
|
|
24
26
|
* Returns a fully resolved ProfileConfig.
|
|
27
|
+
*
|
|
28
|
+
* Legacy keys (gate / progressive_gate / thinking_checkpoint) are ignored:
|
|
29
|
+
* they are not part of the canonical contract and are flagged with a
|
|
30
|
+
* deprecation warning by validateProfileConfig before this merge runs.
|
|
25
31
|
*/
|
|
26
32
|
export declare function resolveProfile(userProfile: Partial<ProfileConfig> | undefined): ProfileConfig;
|
|
27
33
|
//# sourceMappingURL=pd-profile-constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pd-profile-constants.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-profile-constants.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"pd-profile-constants.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-profile-constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAI9B,eAAO,MAAM,qBAAqB,EAAE,kBAInC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,yBAS3C,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,iBAGlC,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,sBAGvC,CAAC;AAEF,eAAO,MAAM,iCAAiC,EAAE,6BAM/C,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,kBAAkB,EAAO,CAAC;AAItE,eAAO,MAAM,gBAAgB,EAAE,aAY9B,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,SAAS,GAAG,aAAa,CAwC7F"}
|
|
@@ -6,13 +6,14 @@
|
|
|
6
6
|
* for backward compatibility with the transition to core types.
|
|
7
7
|
*
|
|
8
8
|
* All defaults are testable and explicit.
|
|
9
|
+
*
|
|
10
|
+
* PRI-286 retirement cleanup (2026-08-19): the gate / progressive_gate /
|
|
11
|
+
* thinking_checkpoint defaults were removed. The runtime no longer executes
|
|
12
|
+
* any built-in gate from these keys (RuleHost is the sole gate); workspaces
|
|
13
|
+
* that still carry the legacy keys get a deprecation warning from
|
|
14
|
+
* pd-validate-profile.ts, not a resolved default.
|
|
9
15
|
*/
|
|
10
16
|
// ── Default Sub-Configs ─────────────────────────────────────────────────────
|
|
11
|
-
export const PROFILE_DEFAULT_GATE = {
|
|
12
|
-
require_plan_for_risk_paths: true,
|
|
13
|
-
require_audit_before_write: true,
|
|
14
|
-
require_reviewer_after_write: true,
|
|
15
|
-
};
|
|
16
17
|
export const PROFILE_DEFAULT_TESTS = {
|
|
17
18
|
on_change: 'smoke',
|
|
18
19
|
on_risk_change: 'unit',
|
|
@@ -36,16 +37,6 @@ export const PROFILE_DEFAULT_LIFECYCLE = {
|
|
|
36
37
|
enabled: true,
|
|
37
38
|
heartbeat_stale_hours: 72,
|
|
38
39
|
};
|
|
39
|
-
export const PROFILE_DEFAULT_PLAN_APPROVALS = {
|
|
40
|
-
enabled: false,
|
|
41
|
-
max_lines_override: -1,
|
|
42
|
-
allowed_patterns: [],
|
|
43
|
-
allowed_operations: [],
|
|
44
|
-
};
|
|
45
|
-
export const PROFILE_DEFAULT_PROGRESSIVE_GATE = {
|
|
46
|
-
enabled: true,
|
|
47
|
-
plan_approvals: { ...PROFILE_DEFAULT_PLAN_APPROVALS },
|
|
48
|
-
};
|
|
49
40
|
export const PROFILE_DEFAULT_EDIT_VERIFICATION = {
|
|
50
41
|
enabled: true,
|
|
51
42
|
max_file_size_bytes: 10 * 1024 * 1024, // 10MB
|
|
@@ -53,35 +44,28 @@ export const PROFILE_DEFAULT_EDIT_VERIFICATION = {
|
|
|
53
44
|
fuzzy_match_threshold: 0.8,
|
|
54
45
|
skip_large_file_action: 'warn',
|
|
55
46
|
};
|
|
56
|
-
export const PROFILE_DEFAULT_THINKING_CHECKPOINT = {
|
|
57
|
-
enabled: false, // Default OFF to avoid blocking new users
|
|
58
|
-
window_ms: 5 * 60 * 1000, // 5 minutes
|
|
59
|
-
high_risk_tools: ['run_shell_command', 'delete_file', 'move_file'],
|
|
60
|
-
};
|
|
61
47
|
export const PROFILE_DEFAULT_CUSTOM_GUARDS = [];
|
|
62
48
|
// ── Full Profile Defaults ───────────────────────────────────────────────────
|
|
63
49
|
export const PROFILE_DEFAULTS = {
|
|
64
50
|
audit_level: 'medium',
|
|
65
51
|
risk_paths: [],
|
|
66
52
|
evolution_mode: 'realtime',
|
|
67
|
-
gate: { ...PROFILE_DEFAULT_GATE },
|
|
68
53
|
tests: { ...PROFILE_DEFAULT_TESTS },
|
|
69
54
|
pain: {
|
|
70
55
|
soft_capture_threshold: PROFILE_DEFAULT_PAIN.soft_capture_threshold,
|
|
71
56
|
adaptive: { ...PROFILE_DEFAULT_ADAPTIVE_PAIN },
|
|
72
57
|
},
|
|
73
58
|
lifecycle: { ...PROFILE_DEFAULT_LIFECYCLE },
|
|
74
|
-
progressive_gate: {
|
|
75
|
-
enabled: PROFILE_DEFAULT_PROGRESSIVE_GATE.enabled,
|
|
76
|
-
plan_approvals: { ...PROFILE_DEFAULT_PLAN_APPROVALS },
|
|
77
|
-
},
|
|
78
59
|
edit_verification: { ...PROFILE_DEFAULT_EDIT_VERIFICATION },
|
|
79
|
-
thinking_checkpoint: { ...PROFILE_DEFAULT_THINKING_CHECKPOINT },
|
|
80
60
|
custom_guards: [],
|
|
81
61
|
};
|
|
82
62
|
/**
|
|
83
63
|
* Deep-merge a partial user profile with PROFILE_DEFAULTS.
|
|
84
64
|
* Returns a fully resolved ProfileConfig.
|
|
65
|
+
*
|
|
66
|
+
* Legacy keys (gate / progressive_gate / thinking_checkpoint) are ignored:
|
|
67
|
+
* they are not part of the canonical contract and are flagged with a
|
|
68
|
+
* deprecation warning by validateProfileConfig before this merge runs.
|
|
85
69
|
*/
|
|
86
70
|
export function resolveProfile(userProfile) {
|
|
87
71
|
if (!userProfile) {
|
|
@@ -91,11 +75,6 @@ export function resolveProfile(userProfile) {
|
|
|
91
75
|
audit_level: userProfile.audit_level ?? PROFILE_DEFAULTS.audit_level,
|
|
92
76
|
risk_paths: userProfile.risk_paths ?? PROFILE_DEFAULTS.risk_paths,
|
|
93
77
|
evolution_mode: userProfile.evolution_mode ?? PROFILE_DEFAULTS.evolution_mode,
|
|
94
|
-
gate: {
|
|
95
|
-
require_plan_for_risk_paths: userProfile.gate?.require_plan_for_risk_paths ?? PROFILE_DEFAULTS.gate.require_plan_for_risk_paths,
|
|
96
|
-
require_audit_before_write: userProfile.gate?.require_audit_before_write ?? PROFILE_DEFAULTS.gate.require_audit_before_write,
|
|
97
|
-
require_reviewer_after_write: userProfile.gate?.require_reviewer_after_write ?? PROFILE_DEFAULTS.gate.require_reviewer_after_write,
|
|
98
|
-
},
|
|
99
78
|
tests: {
|
|
100
79
|
on_change: userProfile.tests?.on_change ?? PROFILE_DEFAULTS.tests.on_change,
|
|
101
80
|
on_risk_change: userProfile.tests?.on_risk_change ?? PROFILE_DEFAULTS.tests.on_risk_change,
|
|
@@ -118,15 +97,6 @@ export function resolveProfile(userProfile) {
|
|
|
118
97
|
enabled: userProfile.lifecycle?.enabled ?? PROFILE_DEFAULTS.lifecycle.enabled,
|
|
119
98
|
heartbeat_stale_hours: userProfile.lifecycle?.heartbeat_stale_hours ?? PROFILE_DEFAULTS.lifecycle.heartbeat_stale_hours,
|
|
120
99
|
},
|
|
121
|
-
progressive_gate: {
|
|
122
|
-
enabled: userProfile.progressive_gate?.enabled ?? PROFILE_DEFAULTS.progressive_gate.enabled,
|
|
123
|
-
plan_approvals: {
|
|
124
|
-
enabled: userProfile.progressive_gate?.plan_approvals?.enabled ?? PROFILE_DEFAULTS.progressive_gate.plan_approvals.enabled,
|
|
125
|
-
max_lines_override: userProfile.progressive_gate?.plan_approvals?.max_lines_override ?? PROFILE_DEFAULTS.progressive_gate.plan_approvals.max_lines_override,
|
|
126
|
-
allowed_patterns: userProfile.progressive_gate?.plan_approvals?.allowed_patterns ?? PROFILE_DEFAULTS.progressive_gate.plan_approvals.allowed_patterns,
|
|
127
|
-
allowed_operations: userProfile.progressive_gate?.plan_approvals?.allowed_operations ?? PROFILE_DEFAULTS.progressive_gate.plan_approvals.allowed_operations,
|
|
128
|
-
},
|
|
129
|
-
},
|
|
130
100
|
edit_verification: {
|
|
131
101
|
enabled: userProfile.edit_verification?.enabled ?? PROFILE_DEFAULTS.edit_verification.enabled,
|
|
132
102
|
max_file_size_bytes: userProfile.edit_verification?.max_file_size_bytes ?? PROFILE_DEFAULTS.edit_verification.max_file_size_bytes,
|
|
@@ -134,11 +104,6 @@ export function resolveProfile(userProfile) {
|
|
|
134
104
|
fuzzy_match_threshold: userProfile.edit_verification?.fuzzy_match_threshold ?? PROFILE_DEFAULTS.edit_verification.fuzzy_match_threshold,
|
|
135
105
|
skip_large_file_action: userProfile.edit_verification?.skip_large_file_action ?? PROFILE_DEFAULTS.edit_verification.skip_large_file_action,
|
|
136
106
|
},
|
|
137
|
-
thinking_checkpoint: {
|
|
138
|
-
enabled: userProfile.thinking_checkpoint?.enabled ?? PROFILE_DEFAULTS.thinking_checkpoint.enabled,
|
|
139
|
-
window_ms: userProfile.thinking_checkpoint?.window_ms ?? PROFILE_DEFAULTS.thinking_checkpoint.window_ms,
|
|
140
|
-
high_risk_tools: userProfile.thinking_checkpoint?.high_risk_tools ?? PROFILE_DEFAULTS.thinking_checkpoint.high_risk_tools,
|
|
141
|
-
},
|
|
142
107
|
custom_guards: userProfile.custom_guards ?? PROFILE_DEFAULTS.custom_guards,
|
|
143
108
|
};
|
|
144
109
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pd-profile-constants.js","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-profile-constants.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"pd-profile-constants.js","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-profile-constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pd-validate-profile.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-validate-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,KAAK,aAAa,EAOnB,MAAM,sBAAsB,CAAC;AAI9B,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAAC,QAAQ,EAAE,wBAAwB,EAAE,CAAA;CAAE,GACjF;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,wBAAwB,EAAE,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"pd-validate-profile.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/config/pd-validate-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,KAAK,aAAa,EAOnB,MAAM,sBAAsB,CAAC;AAI9B,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAAC,QAAQ,EAAE,wBAAwB,EAAE,CAAA;CAAE,GACjF;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,wBAAwB,EAAE,CAAA;CAAE,CAAC;AAuMtD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,uBAAuB,CAwF7F"}
|