principles-disciple 1.122.0 → 1.123.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.
@@ -2,7 +2,7 @@
2
2
  "id": "principles-disciple",
3
3
  "name": "Principles Disciple",
4
4
  "description": "Evolutionary programming agent framework with strategic guardrails and reflection loops.",
5
- "version": "1.122.0",
5
+ "version": "1.123.0",
6
6
  "activation": {
7
7
  "onCapabilities": [
8
8
  "hook"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "principles-disciple",
3
- "version": "1.122.0",
3
+ "version": "1.123.0",
4
4
  "description": "Native OpenClaw plugin for Principles Disciple",
5
5
  "type": "module",
6
6
  "main": "./dist/bundle.js",
@@ -364,7 +364,7 @@ describe('PRI-288: EvolutionWorkerService quarantine', () => {
364
364
  expect(flags.flags['evolution_worker']?.enabled).toBe(true);
365
365
  });
366
366
 
367
- it('core flags cannot be disabled by user override', () => {
367
+ it('PRI-435: core flags can be explicitly emergency-disabled by user override with warning', () => {
368
368
  writeConfigYaml(workspaceDir, {
369
369
  prompt: { enabled: false },
370
370
  code_tool_hook: { enabled: false },
@@ -377,9 +377,11 @@ describe('PRI-288: EvolutionWorkerService quarantine', () => {
377
377
  expect(isRecord(parsed)).toBe(true);
378
378
  const features = (parsed as Record<string, unknown>).features;
379
379
  const flags = computeEffectiveFlags(features as Record<string, unknown>, DEFAULT_FEATURE_FLAGS, configPath);
380
- expect(flags.flags['prompt']?.enabled).toBe(true); // core cannot be disabled
381
- expect(flags.flags['code_tool_hook']?.enabled).toBe(true); // core cannot be disabled
382
- expect(flags.warnings.length).toBeGreaterThan(0); // warnings about core override attempt
380
+ // PRI-435: core flags honor explicit emergency disable when deliberately configured
381
+ expect(flags.flags['prompt']?.enabled).toBe(false);
382
+ expect(flags.flags['code_tool_hook']?.enabled).toBe(false);
383
+ expect(flags.warnings.length).toBeGreaterThan(0); // warnings about emergency disable
384
+ expect(flags.warnings.some(w => w.includes('core flag explicitly disabled'))).toBe(true);
383
385
  });
384
386
  });
385
387