create-principles-disciple 1.128.0 → 1.129.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.
@@ -1,4 +1,4 @@
1
- import type { EventLogEntry, DailyStats, EmpathyEventStats, ToolCallEventData, PainSignalEventData, RulePromotionEventData, GovernanceActionEventData, HookExecutionEventData, GateBlockEventData, GateBypassEventData, EvolutionTaskEventData, EmpathyRollbackEventData, DiagnosisTaskEventData, HeartbeatDiagnosisEventData, DiagnosticianReportEventData, PrincipleCandidateEventData, RuleEnforcedEventData, RuleHostEvaluatedEventData, RuleHostBlockedEventData, RuleHostRequireApprovalEventData, RuleHostAutoCorrectProposedEventData, RuleHostAutoCorrectAppliedEventData, RuntimeV2PromptActivationsInjectedEventData, RuleHostUnhealthyEventData, RuleHostSkippedEventData } from '../types/event-types.js';
1
+ import type { EventLogEntry, DailyStats, EmpathyEventStats, ToolCallEventData, PainSignalEventData, RulePromotionEventData, GovernanceActionEventData, HookExecutionEventData, GateBlockEventData, GateBypassEventData, EvolutionTaskEventData, EmpathyRollbackEventData, DiagnosisTaskEventData, HeartbeatDiagnosisEventData, DiagnosticianReportEventData, PrincipleCandidateEventData, RuleEnforcedEventData, RuleHostEvaluatedEventData, RuleHostBlockedEventData, RuleHostRequireApprovalEventData, RuleHostAutoCorrectProposedEventData, RuleHostAutoCorrectAppliedEventData, RuntimeV2PromptActivationsInjectedEventData, RuleHostUnhealthyEventData, RuleHostSkippedEventData, TrajectoryObservabilityFailureEventData } from '../types/event-types.js';
2
2
  import type { PluginLogger } from '../openclaw-sdk.js';
3
3
  export declare class EventLog {
4
4
  private readonly logsDir;
@@ -62,6 +62,13 @@ export declare class EventLog {
62
62
  * ERR-002: degradation/suspension includes reason + nextAction (rc-9).
63
63
  */
64
64
  recordRuleHostSkipped(data: RuleHostSkippedEventData): void;
65
+ /**
66
+ * PRI-647: trajectory observability side-channel failed (closed/disposed
67
+ * SQLite connection) while the prompt build continued (fail-open). Recorded
68
+ * as a structured event so the unavailable state stays observable via the
69
+ * existing events read model — never logged silently.
70
+ */
71
+ recordTrajectoryObservabilityFailure(data: TrajectoryObservabilityFailureEventData): void;
65
72
  /**
66
73
  * Redact telemetry-sensitive string values in event data before persistence.
67
74
  * Applies redactTelemetryString to known high-risk fields (filePath, command,
@@ -27,6 +27,17 @@ export declare class TrajectoryDatabase {
27
27
  private readonly db;
28
28
  constructor(opts: TrajectoryDatabaseOptions);
29
29
  dispose(): void;
30
+ /**
31
+ * PRI-647: whether the underlying SQLite connection is still open.
32
+ *
33
+ * Plugin service stop() (e.g. OpenClaw config hot-reload) calls
34
+ * TrajectoryRegistry.dispose() which closes this connection without
35
+ * invalidating a leaked WorkspaceContext handle. Cached owners must check
36
+ * this before reuse and reacquire a fresh instance instead of returning a
37
+ * dead connection (previously threw TypeError: The database connection is
38
+ * not open on every prompt build).
39
+ */
40
+ get isOpen(): boolean;
30
41
  recordSession(input: TrajectorySessionInput): void;
31
42
  recordAssistantTurn(input: TrajectoryAssistantTurnInput): number;
32
43
  recordUserTurn(input: TrajectoryUserTurnInput): number;
@@ -56,6 +56,13 @@ export declare class WorkspaceContext {
56
56
  get evolutionReducer(): EvolutionReducerImpl;
57
57
  /**
58
58
  * Trajectory database for analytics and sample curation.
59
+ *
60
+ * PRI-647: TrajectoryService.stop() calls TrajectoryRegistry.dispose()
61
+ * directly (closing the SQLite connection) without invalidating this
62
+ * cached handle. If the cached database was closed underneath us, reacquire
63
+ * a fresh instance instead of returning the dead connection (previously
64
+ * threw TypeError: The database connection is not open and dropped every
65
+ * injected principle on prompt build).
59
66
  */
60
67
  get trajectory(): TrajectoryDatabase;
61
68
  getRuleHost(logger: RuleHostLogger): RuleHost;