principles-disciple 1.195.0 → 1.196.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.
@@ -338,6 +338,21 @@ export function evaluatePainAdmissionForToolCall(event, observation, outcome, la
338
338
  ? [...WRITE_TOOLS, ...BASH_TOOL_NAMES]
339
339
  : WRITE_TOOLS;
340
340
  if (!allowedTools.includes(event.toolName) || !outcome.isFailure) {
341
+ // PRI-442 A-09: rc-9-no-silent-fallback. Only emit observability when we
342
+ // are DECLINING an actual failure (Case A). Successful tool calls (happy
343
+ // path) must stay silent — they are not degradation. evaluatePainAdmission
344
+ // is called on every after_tool_call event, so logging the success path
345
+ // would spam SYSTEM_*.log on essentially every successful tool call.
346
+ if (outcome.isFailure) {
347
+ SystemLogger.log(workspaceDir, 'PAIN_ADMISSION_SKIPPED', JSON.stringify({
348
+ hook: 'after_tool_call',
349
+ reason: 'not_a_write_tool_failure',
350
+ tool: event.toolName,
351
+ failureSource: outcome.failureSource,
352
+ sessionId,
353
+ nextAction: 'No pain task created; failure is outside write-tool admission scope. Retry or investigate if unexpected.',
354
+ }));
355
+ }
341
356
  return {
342
357
  admitted: false,
343
358
  stage: 'not_applicable',
@@ -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.195.0",
5
+ "version": "1.196.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.195.0",
3
+ "version": "1.196.0",
4
4
  "description": "Native OpenClaw plugin for Principles Disciple",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",