@moxxy/core 0.6.2 → 0.7.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.
Files changed (70) hide show
  1. package/dist/index.d.ts +3 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +5 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/plugins/host-options.d.ts +2 -0
  6. package/dist/plugins/host-options.d.ts.map +1 -1
  7. package/dist/plugins/registry-kinds.d.ts +1 -0
  8. package/dist/plugins/registry-kinds.d.ts.map +1 -1
  9. package/dist/plugins/registry-kinds.js +12 -0
  10. package/dist/plugins/registry-kinds.js.map +1 -1
  11. package/dist/registries/active-def-registry.d.ts +46 -9
  12. package/dist/registries/active-def-registry.d.ts.map +1 -1
  13. package/dist/registries/active-def-registry.js +39 -10
  14. package/dist/registries/active-def-registry.js.map +1 -1
  15. package/dist/registries/event-stores.d.ts +13 -0
  16. package/dist/registries/event-stores.d.ts.map +1 -0
  17. package/dist/registries/event-stores.js +14 -0
  18. package/dist/registries/event-stores.js.map +1 -0
  19. package/dist/registries/modes.d.ts +6 -0
  20. package/dist/registries/modes.d.ts.map +1 -1
  21. package/dist/registries/modes.js +10 -0
  22. package/dist/registries/modes.js.map +1 -1
  23. package/dist/registries/services.d.ts +15 -0
  24. package/dist/registries/services.d.ts.map +1 -0
  25. package/dist/registries/services.js +26 -0
  26. package/dist/registries/services.js.map +1 -0
  27. package/dist/run-turn.d.ts.map +1 -1
  28. package/dist/run-turn.js +3 -0
  29. package/dist/run-turn.js.map +1 -1
  30. package/dist/session-runtime.d.ts +3 -1
  31. package/dist/session-runtime.d.ts.map +1 -1
  32. package/dist/session.d.ts +25 -3
  33. package/dist/session.d.ts.map +1 -1
  34. package/dist/session.js +78 -8
  35. package/dist/session.js.map +1 -1
  36. package/dist/sessions/jsonl-event-store.d.ts +16 -0
  37. package/dist/sessions/jsonl-event-store.d.ts.map +1 -0
  38. package/dist/sessions/jsonl-event-store.js +30 -0
  39. package/dist/sessions/jsonl-event-store.js.map +1 -0
  40. package/dist/sessions/persistence.d.ts +3 -58
  41. package/dist/sessions/persistence.d.ts.map +1 -1
  42. package/dist/sessions/persistence.js +2 -0
  43. package/dist/sessions/persistence.js.map +1 -1
  44. package/dist/subagents/run-child.d.ts.map +1 -1
  45. package/dist/subagents/run-child.js +2 -0
  46. package/dist/subagents/run-child.js.map +1 -1
  47. package/package.json +2 -2
  48. package/src/index.ts +11 -6
  49. package/src/plugins/host-options.ts +2 -0
  50. package/src/plugins/registry-kinds.test.ts +17 -0
  51. package/src/plugins/registry-kinds.ts +14 -0
  52. package/src/registries/active-def-registry.test.ts +42 -0
  53. package/src/registries/active-def-registry.ts +70 -13
  54. package/src/registries/event-stores.test.ts +77 -0
  55. package/src/registries/event-stores.ts +15 -0
  56. package/src/registries/modes.ts +12 -0
  57. package/src/registries/services.test.ts +29 -0
  58. package/src/registries/services.ts +33 -0
  59. package/src/run-turn.ts +3 -0
  60. package/src/session-runtime.ts +3 -0
  61. package/src/session.ts +89 -8
  62. package/src/sessions/jsonl-event-store.ts +31 -0
  63. package/src/sessions/persistence.ts +11 -58
  64. package/src/subagents/run-child.ts +2 -0
  65. package/dist/preferences.d.ts +0 -40
  66. package/dist/preferences.d.ts.map +0 -1
  67. package/dist/preferences.js +0 -59
  68. package/dist/preferences.js.map +0 -1
  69. package/src/preferences.test.ts +0 -156
  70. package/src/preferences.ts +0 -85
package/dist/index.d.ts CHANGED
@@ -3,7 +3,6 @@ export { runTurn, collectTurn, type RunTurnOptions } from './run-turn.js';
3
3
  export { setupAgent, type Agent, type SetupAgentOptions, type AgentPreset, } from './setup-agent.js';
4
4
  export type { MoxxyEvent, Plugin, ToolDef, PermissionResolver } from '@moxxy/sdk';
5
5
  export { createSubagentSpawner, clearRetainedChildren, type SubagentRuntime } from './subagents.js';
6
- export { loadPreferences, savePreferences, preferencesPath, type MoxxyPreferences, } from './preferences.js';
7
6
  export { loadUsageStats, mergeUsageStats, clearUsageStats, usageStatsPath, type UsageStatsFile, type StoredModelUsage, } from './usage-stats.js';
8
7
  export { SkillRegistryImpl } from './registries/skills.js';
9
8
  export { parseSkillFile, parseFrontmatter, discoverSkills, defaultUserSkillsDir, defaultProjectSkillsDir, synthesizeSkill, buildSynthesizeSkillPlugin, type SkillLoadOptions, type DiscoveredSkill, type SynthesizeOptions, type SynthesizedSkill, } from './skills/index.js';
@@ -26,6 +25,9 @@ export { TranscriberRegistry } from './registries/transcribers.js';
26
25
  export { SynthesizerRegistry } from './registries/synthesizers.js';
27
26
  export { EmbedderRegistry } from './registries/embedders.js';
28
27
  export { IsolatorRegistry as ContributedIsolatorRegistry } from './registries/isolators.js';
28
+ export { EventStoreRegistry } from './registries/event-stores.js';
29
+ export { jsonlEventStore } from './sessions/jsonl-event-store.js';
30
+ export type { EventStoreDef, EventStoreSession, EventStoreScope, EventLogLike, } from '@moxxy/sdk';
29
31
  export { RequirementRegistry, type RequirementRegistryOptions } from './requirements.js';
30
32
  export { SessionPersistence, defaultSessionsDir, readIndex as readSessionIndex, restoreEvents as restoreSessionEvents, readEventPage as readSessionEventPage, pageEvents, deleteSession, listSessionMetas, setSessionTitle, setSessionGroup, seedSessionMeta, SESSION_META_VERSION, type SessionMeta, type SessionSource, type SessionPersistenceOpts, type EventPage, } from './sessions/persistence.js';
31
33
  export { PluginHost, PluginRequirementError, type PluginLoader, type PluginSkipReason, type PluginSkipRecord, type PluginSkipSource, type RegisterStaticOptions, } from './plugins/host.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -2,7 +2,9 @@ export { Session } from './session.js';
2
2
  export { runTurn, collectTurn } from './run-turn.js';
3
3
  export { setupAgent, } from './setup-agent.js';
4
4
  export { createSubagentSpawner, clearRetainedChildren } from './subagents.js';
5
- export { loadPreferences, savePreferences, preferencesPath, } from './preferences.js';
5
+ // Runtime provider/mode/model/disabled persistence moved from
6
+ // ~/.moxxy/preferences.json into the unified `plugins:` manifest; the writers
7
+ // now live in @moxxy/config (setCategoryDefault/setProviderModel/…).
6
8
  export { loadUsageStats, mergeUsageStats, clearUsageStats, usageStatsPath, } from './usage-stats.js';
7
9
  export { SkillRegistryImpl } from './registries/skills.js';
8
10
  export { parseSkillFile, parseFrontmatter, discoverSkills, defaultUserSkillsDir, defaultProjectSkillsDir, synthesizeSkill, buildSynthesizeSkillPlugin, } from './skills/index.js';
@@ -27,6 +29,8 @@ export { TranscriberRegistry } from './registries/transcribers.js';
27
29
  export { SynthesizerRegistry } from './registries/synthesizers.js';
28
30
  export { EmbedderRegistry } from './registries/embedders.js';
29
31
  export { IsolatorRegistry as ContributedIsolatorRegistry } from './registries/isolators.js';
32
+ export { EventStoreRegistry } from './registries/event-stores.js';
33
+ export { jsonlEventStore } from './sessions/jsonl-event-store.js';
30
34
  export { RequirementRegistry } from './requirements.js';
31
35
  export { SessionPersistence, defaultSessionsDir, readIndex as readSessionIndex, restoreEvents as restoreSessionEvents, readEventPage as readSessionEventPage, pageEvents, deleteSession, listSessionMetas, setSessionTitle, setSessionGroup, seedSessionMeta, SESSION_META_VERSION, } from './sessions/persistence.js';
32
36
  export { PluginHost, PluginRequirementError, } from './plugins/host.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ import type { SynthesizerRegistry } from '../registries/synthesizers.js';
24
24
  import type { EmbedderRegistry } from '../registries/embedders.js';
25
25
  import type { IsolatorRegistry } from '../registries/isolators.js';
26
26
  import type { WorkflowExecutorRegistry } from '../registries/workflow-executors.js';
27
+ import type { EventStoreRegistry } from '../registries/event-stores.js';
27
28
  import type { HookDispatcherImpl } from './lifecycle.js';
28
29
  import type { RequirementRegistry } from '../requirements.js';
29
30
  export interface PluginHostOptions {
@@ -45,6 +46,7 @@ export interface PluginHostOptions {
45
46
  readonly embedders: EmbedderRegistry;
46
47
  readonly isolators: IsolatorRegistry;
47
48
  readonly workflowExecutors: WorkflowExecutorRegistry;
49
+ readonly eventStores: EventStoreRegistry;
48
50
  readonly requirements: RequirementRegistry;
49
51
  readonly dispatcher: HookDispatcherImpl;
50
52
  readonly loader?: PluginLoader;
@@ -1 +1 @@
1
- {"version":3,"file":"host-options.d.ts","sourceRoot":"","sources":["../../src/plugins/host-options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host-options.d.ts","sourceRoot":"","sources":["../../src/plugins/host-options.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ export interface RegistryNameRecord {
23
23
  readonly embedderNames: ReadonlyArray<string>;
24
24
  readonly isolatorNames: ReadonlyArray<string>;
25
25
  readonly workflowExecutorNames: ReadonlyArray<string>;
26
+ readonly eventStoreNames: ReadonlyArray<string>;
26
27
  }
27
28
  /**
28
29
  * A single contribution kind, mapping a plugin field + registry to the
@@ -1 +1 @@
1
- {"version":3,"file":"registry-kinds.d.ts","sourceRoot":"","sources":["../../src/plugins/registry-kinds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAOV,MAAM,EAWP,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,kBAAkB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACnD,QAAQ,CAAC,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,mBAAmB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjD,QAAQ,CAAC,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjD,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,qBAAqB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACvD;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY,CAAC,IAAI;IAChC,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,QAAQ,CAAC,WAAW,EAAE,MAAM,kBAAkB,CAAC;IAC/C,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC;IACvD,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC;IACvC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC;IAC5F,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE;;;;;;OAMG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,CAuIvB,CAAC"}
1
+ {"version":3,"file":"registry-kinds.d.ts","sourceRoot":"","sources":["../../src/plugins/registry-kinds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAOV,MAAM,EAYP,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,kBAAkB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACnD,QAAQ,CAAC,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,mBAAmB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjD,QAAQ,CAAC,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjD,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,qBAAqB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtD,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACjD;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY,CAAC,IAAI;IAChC,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,QAAQ,CAAC,WAAW,EAAE,MAAM,kBAAkB,CAAC;IAC/C,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC;IACvD,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC;IACvC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC;IAC5F,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE;;;;;;OAMG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,CAmJvB,CAAC"}
@@ -137,5 +137,17 @@ export const REGISTRY_KINDS = [
137
137
  register: (o, w) => o.workflowExecutors.register(w),
138
138
  unregister: (o, n) => o.workflowExecutors.unregister(n),
139
139
  },
140
+ {
141
+ kind: 'eventStore',
142
+ recordField: 'eventStoreNames',
143
+ defs: (p) => p.eventStores ?? [],
144
+ nameOf: (e) => e.name,
145
+ // Throw-on-duplicate `register` (NOT `replace`): a discovered plugin's store
146
+ // is added but can't shadow the protected JSONL floor and never auto-
147
+ // activates — the user opts in via `plugins.eventStore.default`. The store
148
+ // sees every event, so that explicit opt-in is the trust boundary.
149
+ register: (o, e) => o.eventStores.register(e),
150
+ unregister: (o, n) => o.eventStores.unregister(n),
151
+ },
140
152
  ];
141
153
  //# sourceMappingURL=registry-kinds.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry-kinds.js","sourceRoot":"","sources":["../../src/plugins/registry-kinds.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry-kinds.js","sourceRoot":"","sources":["../../src/plugins/registry-kinds.ts"],"names":[],"mappings":"AA6FA;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAyC;IAClE;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;QAC1B,MAAM,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QAC9B,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACjC;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,eAAe;QAC5B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE;QAC9B,MAAM,EAAE,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACrC;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;QAC1B,MAAM,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QAC9B,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACjC;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE;QAC/B,MAAM,EAAE,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACnC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1D,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACtC;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE;QACpC,MAAM,EAAE,CAAC,CAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACvC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnE,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;KACb;IAC1C;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,mBAAmB;QAChC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE;QAClC,MAAM,EAAE,CAAC,CAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACtC,uEAAuE;QACvE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/D,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;QACnD,kBAAkB,EAAE,IAAI;KACe;IACzC;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,qBAAqB;QAClC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE;QACpC,MAAM,EAAE,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACxC,yEAAyE;QACzE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;QACrD,kBAAkB,EAAE,IAAI;KACiB;IAC3C;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,cAAc;QAC3B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE;QAC7B,MAAM,EAAE,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACjC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACpC;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,cAAc;QAC3B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE;QAC7B,8CAA8C;QAC9C,MAAM,EAAE,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACjC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACpC;QACE,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,YAAY;QACzB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE;QAC3B,MAAM,EAAE,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IAClC;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,cAAc;QAC3B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE;QAC7B,MAAM,EAAE,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACjC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACpC;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE;QACjC,MAAM,EAAE,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACrC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACxC;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE;QACjC,MAAM,EAAE,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACrC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9D,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACxC;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,eAAe;QAC5B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE;QAC9B,MAAM,EAAE,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IACrC;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,eAAe;QAC5B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE;QAC9B,MAAM,EAAE,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAW,EAAE,OAAO,EAAW,EAAE,CAC7C,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QACxD,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACf;IAClC;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,IAAI,EAAE;QACtC,MAAM,EAAE,CAAC,CAAsB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QAC1C,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAsB,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxE,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;IAC7C;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE;QAChC,MAAM,EAAE,CAAC,CAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;QACpC,6EAA6E;QAC7E,sEAAsE;QACtE,2EAA2E;QAC3E,mEAAmE;QACnE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5D,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;KACZ;CACA,CAAC"}
@@ -7,14 +7,28 @@
7
7
  * - the first registration auto-activates (when `autoAdoptFirst`, the
8
8
  * default), so a session always has a default once a plugin loads one
9
9
  * - the host / agent calls `setActive(name)` to switch
10
- * - call sites read `getActive()` (returns null when nothing is active)
11
- * - `unregister` clears the active slot rather than silently picking an
12
- * arbitrary successor callers must `setActive()` again
10
+ * - call sites read `getActive()` (returns the protected floor, else null,
11
+ * when nothing is explicitly active)
12
+ * - `unregister` reverts the active slot to the protected floor (if one was
13
+ * seeded) rather than going null — so a non-nullable slot is never left
14
+ * empty by removing a swap target — and otherwise clears it (callers must
15
+ * `setActive()` again)
16
+ *
17
+ * ## Protected floor ("swap, don't break")
18
+ *
19
+ * Core seeds a non-nullable kind's built-in default with `{ protected: true }`,
20
+ * recording it as the registry's **floor**. The floor is the safety net behind
21
+ * the unified `plugins:` manifest: a user may *swap* the active def to any other
22
+ * registered one, but disabling/removing the swap target reverts to the floor
23
+ * instead of bricking the slot, and the floor itself cannot be unregistered.
24
+ * `getActive()`/`getActiveName()` fall back to the floor whenever nothing is
25
+ * explicitly active. Floors are core-seeded (never plugin-contributed), so a
26
+ * plugin's `unload` never tries to unregister a floor name.
13
27
  *
14
28
  * This is the def-only sibling of {@link ActiveBackendRegistry} (which also
15
29
  * builds runtime *instances* for STT/TTS/embeddings). The two families share
16
30
  * the same surface (register/replace/unregister/list/has/setActive/getActive/
17
- * getActiveName/clearActive) so they stay consistent.
31
+ * getActiveName/getFloorName/clearActive) so they stay consistent.
18
32
  *
19
33
  * `ModeRegistry` (change-listeners + legacy-name migration) and
20
34
  * `ProviderRegistry` (disabled-set + built instances) deliberately stay
@@ -27,32 +41,55 @@ export interface ActiveDefRegistryOptions {
27
41
  * Defaults to `true`. */
28
42
  readonly autoAdoptFirst?: boolean;
29
43
  }
44
+ /** Options for a single registration. */
45
+ export interface RegisterOptions {
46
+ /**
47
+ * Mark this def as the registry's protected **floor** — the built-in default
48
+ * a non-nullable slot reverts to when its active swap target is removed, and
49
+ * which itself cannot be unregistered. Core seeds floors at construction; do
50
+ * not pass this from discovered plugins.
51
+ */
52
+ readonly protected?: boolean;
53
+ }
30
54
  export declare class ActiveDefRegistry<TDef extends {
31
55
  name: string;
32
56
  }> {
33
57
  private readonly defs;
34
58
  private active;
59
+ /** Name of the protected floor def, or null when this kind is nullable. */
60
+ private floor;
35
61
  private readonly noun;
36
62
  private readonly autoAdoptFirst;
37
63
  constructor(opts: ActiveDefRegistryOptions);
38
64
  /**
39
65
  * Register a def. Throws on duplicate — use `replace()` to overwrite.
40
66
  * Auto-activates the first registration (when `autoAdoptFirst`).
67
+ * Pass `{ protected: true }` to record it as the floor (§ protected floor).
41
68
  */
42
- register(def: TDef): void;
69
+ register(def: TDef, opts?: RegisterOptions): void;
43
70
  /** Overwrite an existing def (or add a new one) without throwing.
44
71
  * Auto-activates when nothing is active yet (mirrors `register`). */
45
- replace(def: TDef): void;
72
+ replace(def: TDef, opts?: RegisterOptions): void;
46
73
  /**
47
- * Remove a def. If it was active, the active slot is cleared (callers must
48
- * `setActive()` rather than getting an arbitrary "next").
74
+ * Remove a def. The protected floor cannot be removed (throws). If the
75
+ * removed def was active, the active slot reverts to the floor when one is
76
+ * present (so a non-nullable slot is never left empty), otherwise clears.
49
77
  */
50
78
  unregister(name: string): void;
51
79
  list(): ReadonlyArray<TDef>;
52
80
  has(name: string): boolean;
53
81
  setActive(name: string): void;
54
- /** Deactivate the current def (callers fall back to their default). */
82
+ /** Deactivate the current explicit def; falls back to the floor (if any). */
55
83
  clearActive(): void;
84
+ /**
85
+ * Designate an already-registered def as the protected floor. Used when the
86
+ * built-in default is contributed by a kernel *plugin* (e.g. compactor
87
+ * `summarize`, cacheStrategy `stable-prefix`) rather than core-seeded — setup
88
+ * calls this after the kernel plugin registers. Throws if `name` is unknown.
89
+ */
90
+ markFloor(name: string): void;
91
+ /** Name of the protected floor def, or null when this kind has no floor. */
92
+ getFloorName(): string | null;
56
93
  getActive(): TDef | null;
57
94
  getActiveName(): string | null;
58
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"active-def-registry.d.ts","sourceRoot":"","sources":["../../src/registries/active-def-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,wBAAwB;IACvC,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;8BAC0B;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,qBAAa,iBAAiB,CAAC,IAAI,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;IAC1D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2B;IAChD,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;gBAE7B,IAAI,EAAE,wBAAwB;IAK1C;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IAQzB;0EACsE;IACtE,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IAKxB;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK9B,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC;IAI3B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM7B,uEAAuE;IACvE,WAAW,IAAI,IAAI;IAInB,SAAS,IAAI,IAAI,GAAG,IAAI;IAKxB,aAAa,IAAI,MAAM,GAAG,IAAI;CAG/B"}
1
+ {"version":3,"file":"active-def-registry.d.ts","sourceRoot":"","sources":["../../src/registries/active-def-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,WAAW,wBAAwB;IACvC,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;8BAC0B;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,yCAAyC;AACzC,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,qBAAa,iBAAiB,CAAC,IAAI,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;IAC1D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2B;IAChD,OAAO,CAAC,MAAM,CAAuB;IACrC,2EAA2E;IAC3E,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;gBAE7B,IAAI,EAAE,wBAAwB;IAK1C;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI;IASjD;0EACsE;IACtE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI;IAMhD;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAY9B,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC;IAI3B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM7B,6EAA6E;IAC7E,WAAW,IAAI,IAAI;IAInB;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAO7B,4EAA4E;IAC5E,YAAY,IAAI,MAAM,GAAG,IAAI;IAI7B,SAAS,IAAI,IAAI,GAAG,IAAI;IAMxB,aAAa,IAAI,MAAM,GAAG,IAAI;CAG/B"}
@@ -1,6 +1,8 @@
1
1
  export class ActiveDefRegistry {
2
2
  defs = new Map();
3
3
  active = null;
4
+ /** Name of the protected floor def, or null when this kind is nullable. */
5
+ floor = null;
4
6
  noun;
5
7
  autoAdoptFirst;
6
8
  constructor(opts) {
@@ -10,30 +12,40 @@ export class ActiveDefRegistry {
10
12
  /**
11
13
  * Register a def. Throws on duplicate — use `replace()` to overwrite.
12
14
  * Auto-activates the first registration (when `autoAdoptFirst`).
15
+ * Pass `{ protected: true }` to record it as the floor (§ protected floor).
13
16
  */
14
- register(def) {
17
+ register(def, opts) {
15
18
  if (this.defs.has(def.name)) {
16
19
  throw new Error(`${this.noun} already registered: ${def.name}`);
17
20
  }
18
21
  this.defs.set(def.name, def);
22
+ if (opts?.protected)
23
+ this.floor = def.name;
19
24
  if (this.autoAdoptFirst && !this.active)
20
25
  this.active = def.name;
21
26
  }
22
27
  /** Overwrite an existing def (or add a new one) without throwing.
23
28
  * Auto-activates when nothing is active yet (mirrors `register`). */
24
- replace(def) {
29
+ replace(def, opts) {
25
30
  this.defs.set(def.name, def);
31
+ if (opts?.protected)
32
+ this.floor = def.name;
26
33
  if (this.autoAdoptFirst && !this.active)
27
34
  this.active = def.name;
28
35
  }
29
36
  /**
30
- * Remove a def. If it was active, the active slot is cleared (callers must
31
- * `setActive()` rather than getting an arbitrary "next").
37
+ * Remove a def. The protected floor cannot be removed (throws). If the
38
+ * removed def was active, the active slot reverts to the floor when one is
39
+ * present (so a non-nullable slot is never left empty), otherwise clears.
32
40
  */
33
41
  unregister(name) {
42
+ if (name === this.floor) {
43
+ throw new Error(`${this.noun} '${name}' is a protected default and cannot be removed — swap the default instead`);
44
+ }
34
45
  this.defs.delete(name);
35
- if (this.active === name)
36
- this.active = null;
46
+ if (this.active === name) {
47
+ this.active = this.floor && this.defs.has(this.floor) ? this.floor : null;
48
+ }
37
49
  }
38
50
  list() {
39
51
  return [...this.defs.values()];
@@ -47,17 +59,34 @@ export class ActiveDefRegistry {
47
59
  throw new Error(`${this.noun} not registered: ${name}`);
48
60
  this.active = def.name;
49
61
  }
50
- /** Deactivate the current def (callers fall back to their default). */
62
+ /** Deactivate the current explicit def; falls back to the floor (if any). */
51
63
  clearActive() {
52
64
  this.active = null;
53
65
  }
66
+ /**
67
+ * Designate an already-registered def as the protected floor. Used when the
68
+ * built-in default is contributed by a kernel *plugin* (e.g. compactor
69
+ * `summarize`, cacheStrategy `stable-prefix`) rather than core-seeded — setup
70
+ * calls this after the kernel plugin registers. Throws if `name` is unknown.
71
+ */
72
+ markFloor(name) {
73
+ if (!this.defs.has(name)) {
74
+ throw new Error(`${this.noun} not registered: ${name}`);
75
+ }
76
+ this.floor = name;
77
+ }
78
+ /** Name of the protected floor def, or null when this kind has no floor. */
79
+ getFloorName() {
80
+ return this.floor;
81
+ }
54
82
  getActive() {
55
- if (!this.active)
83
+ const name = this.active ?? this.floor;
84
+ if (!name)
56
85
  return null;
57
- return this.defs.get(this.active) ?? null;
86
+ return this.defs.get(name) ?? null;
58
87
  }
59
88
  getActiveName() {
60
- return this.active;
89
+ return this.active ?? this.floor;
61
90
  }
62
91
  }
63
92
  //# sourceMappingURL=active-def-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"active-def-registry.js","sourceRoot":"","sources":["../../src/registries/active-def-registry.ts"],"names":[],"mappings":"AA8BA,MAAM,OAAO,iBAAiB;IACX,IAAI,GAAG,IAAI,GAAG,EAAgB,CAAC;IACxC,MAAM,GAAkB,IAAI,CAAC;IACpB,IAAI,CAAS;IACb,cAAc,CAAU;IAEzC,YAAY,IAA8B;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,GAAS;QAChB,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,wBAAwB,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC7B,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;IAClE,CAAC;IAED;0EACsE;IACtE,OAAO,CAAC,GAAS;QACf,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC7B,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;IAClE,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,IAAY;QACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IAC/C,CAAC;IAED,IAAI;QACF,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,oBAAoB,IAAI,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,uEAAuE;IACvE,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;IAC5C,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"active-def-registry.js","sourceRoot":"","sources":["../../src/registries/active-def-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { EventStoreDef } from '@moxxy/sdk';
2
+ import { ActiveDefRegistry } from './active-def-registry.js';
3
+ /**
4
+ * The single-active EventStore registry (storage backend behind the event log).
5
+ * Core seeds the JSONL default as a protected floor; uses throw-on-duplicate
6
+ * `register` (NOT override) so a discovered plugin's store is added but never
7
+ * shadows the floor — the user must `setActive` it explicitly. A removed
8
+ * non-floor store reverts to the JSONL floor (never null).
9
+ */
10
+ export declare class EventStoreRegistry extends ActiveDefRegistry<EventStoreDef> {
11
+ constructor();
12
+ }
13
+ //# sourceMappingURL=event-stores.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-stores.d.ts","sourceRoot":"","sources":["../../src/registries/event-stores.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;;;;GAMG;AACH,qBAAa,kBAAmB,SAAQ,iBAAiB,CAAC,aAAa,CAAC;;CAIvE"}
@@ -0,0 +1,14 @@
1
+ import { ActiveDefRegistry } from './active-def-registry.js';
2
+ /**
3
+ * The single-active EventStore registry (storage backend behind the event log).
4
+ * Core seeds the JSONL default as a protected floor; uses throw-on-duplicate
5
+ * `register` (NOT override) so a discovered plugin's store is added but never
6
+ * shadows the floor — the user must `setActive` it explicitly. A removed
7
+ * non-floor store reverts to the JSONL floor (never null).
8
+ */
9
+ export class EventStoreRegistry extends ActiveDefRegistry {
10
+ constructor() {
11
+ super({ noun: 'EventStore' });
12
+ }
13
+ }
14
+ //# sourceMappingURL=event-stores.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-stores.js","sourceRoot":"","sources":["../../src/registries/event-stores.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,OAAO,kBAAmB,SAAQ,iBAAgC;IACtE;QACE,KAAK,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IAChC,CAAC;CACF"}
@@ -21,6 +21,12 @@ export declare class ModeRegistry {
21
21
  */
22
22
  unregister(name: string): void;
23
23
  list(): ReadonlyArray<ModeDef>;
24
+ has(name: string): boolean;
25
+ /** Active mode name, or null when none is active. Mirrors ActiveDefRegistry
26
+ * so the manifest apply loop + `categories()` surface can treat modes
27
+ * uniformly. (`mode` has no protected-floor concept here — `mode-default`
28
+ * is a critical package, so the default is protected at the package level.) */
29
+ getActiveName(): string | null;
24
30
  setActive(name: string): void;
25
31
  getActive(): ModeDef;
26
32
  private activate;
@@ -1 +1 @@
1
- {"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/registries/modes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAE3D,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8B;IACpD,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;IAEzD;;8EAE0E;IAC1E,cAAc,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAK1C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAQ7B,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAe5B;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK9B,IAAI,IAAI,aAAa,CAAC,OAAO,CAAC;IAI9B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAU7B,SAAS,IAAI,OAAO;IAOpB,OAAO,CAAC,QAAQ;IAMhB;;gFAE4E;IAC5E,OAAO,CAAC,YAAY;CASrB"}
1
+ {"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/registries/modes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAE3D,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8B;IACpD,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;IAEzD;;8EAE0E;IAC1E,cAAc,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAK1C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAQ7B,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAe5B;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK9B,IAAI,IAAI,aAAa,CAAC,OAAO,CAAC;IAI9B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;;oFAGgF;IAChF,aAAa,IAAI,MAAM,GAAG,IAAI;IAI9B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAU7B,SAAS,IAAI,OAAO;IAOpB,OAAO,CAAC,QAAQ;IAMhB;;gFAE4E;IAC5E,OAAO,CAAC,YAAY;CASrB"}
@@ -51,6 +51,16 @@ export class ModeRegistry {
51
51
  list() {
52
52
  return [...this.modes.values()];
53
53
  }
54
+ has(name) {
55
+ return this.modes.has(name) || this.modes.has(migrateModeName(name));
56
+ }
57
+ /** Active mode name, or null when none is active. Mirrors ActiveDefRegistry
58
+ * so the manifest apply loop + `categories()` surface can treat modes
59
+ * uniformly. (`mode` has no protected-floor concept here — `mode-default`
60
+ * is a critical package, so the default is protected at the package level.) */
61
+ getActiveName() {
62
+ return this.active;
63
+ }
54
64
  setActive(name) {
55
65
  // Prefer the literal name; only when it isn't registered fall back to the
56
66
  // legacy-name map (e.g. a persisted "tool-use" → "default"). This never
@@ -1 +1 @@
1
- {"version":3,"file":"modes.js","sourceRoot":"","sources":["../../src/registries/modes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modes.js","sourceRoot":"","sources":["../../src/registries/modes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { ServiceRegistry } from '@moxxy/sdk';
2
+ /**
3
+ * In-process inter-plugin service registry (one per Session). A plugin publishes
4
+ * a named service in `onInit`; a sibling plugin resolves it in its own `onInit`.
5
+ * Last-write-wins on a duplicate name (a later plugin may intentionally replace
6
+ * a service); `require` throws when the name was never published.
7
+ */
8
+ export declare class ServiceRegistryImpl implements ServiceRegistry {
9
+ private readonly services;
10
+ register<T>(name: string, impl: T): void;
11
+ get<T>(name: string): T | undefined;
12
+ require<T>(name: string): T;
13
+ has(name: string): boolean;
14
+ }
15
+ //# sourceMappingURL=services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/registries/services.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;GAKG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IAEvD,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI;IAIxC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAInC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAU3B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAG3B"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * In-process inter-plugin service registry (one per Session). A plugin publishes
3
+ * a named service in `onInit`; a sibling plugin resolves it in its own `onInit`.
4
+ * Last-write-wins on a duplicate name (a later plugin may intentionally replace
5
+ * a service); `require` throws when the name was never published.
6
+ */
7
+ export class ServiceRegistryImpl {
8
+ services = new Map();
9
+ register(name, impl) {
10
+ this.services.set(name, impl);
11
+ }
12
+ get(name) {
13
+ return this.services.get(name);
14
+ }
15
+ require(name) {
16
+ if (!this.services.has(name)) {
17
+ throw new Error(`Required service not registered: ${name}. The providing plugin's onInit ` +
18
+ 'must run first — declare a moxxy.requirements entry on the consumer.');
19
+ }
20
+ return this.services.get(name);
21
+ }
22
+ has(name) {
23
+ return this.services.has(name);
24
+ }
25
+ }
26
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/registries/services.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,OAAO,mBAAmB;IACb,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;IAEvD,QAAQ,CAAI,IAAY,EAAE,IAAO;QAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,GAAG,CAAI,IAAY;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAkB,CAAC;IAClD,CAAC;IAED,OAAO,CAAI,IAAY;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,kCAAkC;gBACxE,sEAAsE,CACzE,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAM,CAAC;IACtC,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-turn.d.ts","sourceRoot":"","sources":["../src/run-turn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA0C,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM3D,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,wBAAuB,OAAO,CAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,cAAmB,GACxB,aAAa,CAAC,UAAU,CAAC,CAyL3B;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,cAAmB,GACxB,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAIpC"}
1
+ {"version":3,"file":"run-turn.d.ts","sourceRoot":"","sources":["../src/run-turn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA0C,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM3D,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,wBAAuB,OAAO,CAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,cAAmB,GACxB,aAAa,CAAC,UAAU,CAAC,CA4L3B;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,cAAmB,GACxB,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAIpC"}
package/dist/run-turn.js CHANGED
@@ -40,6 +40,7 @@ export async function* runTurn(session, prompt, opts = {}) {
40
40
  ...(opts.attachments && opts.attachments.length > 0
41
41
  ? { attachments: opts.attachments }
42
42
  : {}),
43
+ ...(opts.origin ? { origin: opts.origin } : {}),
43
44
  });
44
45
  // Resolve provider + model AFTER the prompt is recorded so a
45
46
  // missing/misconfigured provider doesn't silently discard the user's
@@ -89,6 +90,7 @@ export async function* runTurn(session, prompt, opts = {}) {
89
90
  turnId,
90
91
  cwd: appCtx.cwd,
91
92
  env: appCtx.env,
93
+ services: appCtx.services,
92
94
  model,
93
95
  systemPrompt: opts.systemPrompt,
94
96
  provider,
@@ -102,6 +104,7 @@ export async function* runTurn(session, prompt, opts = {}) {
102
104
  // Reasoning preference (effort) — honored only by providers/models that
103
105
  // advertise `supportsReasoning` (gated in collectProviderStream).
104
106
  ...(session.reasoning ? { reasoning: session.reasoning } : {}),
107
+ ...(session.loopGuard ? { loopGuard: session.loopGuard } : {}),
105
108
  permissions: session.resolver,
106
109
  ...(session.approvalResolver ? { approval: session.approvalResolver } : {}),
107
110
  hooks: session.dispatcher,
@@ -1 +1 @@
1
- {"version":3,"file":"run-turn.js","sourceRoot":"","sources":["../src/run-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-turn.js","sourceRoot":"","sources":["../src/run-turn.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAOvD,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,OAAO,CAC5B,OAAuB,EACvB,MAAc,EACd,OAAuB,EAAE;IAEzB,0EAA0E;IAC1E,wEAAwE;IACxE,yEAAyE;IACzE,yEAAyE;IACzE,oCAAoC;IACpC,6EAA6E;IAC7E,uEAAuE;IACvE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;IAEzD,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,aAAa,GAAY,IAAI,CAAC;IAClC,yEAAyE;IACzE,sEAAsE;IACtE,IAAI,mBAAmB,GAAkB,IAAI,CAAC;IAE9C,MAAM,IAAI,GAAG,GAAS,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;IAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QAClD,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO;QACpC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,IAAI,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,4EAA4E;IAC5E,2EAA2E;IAC3E,8EAA8E;IAC9E,qBAAqB;IACrB,MAAM,cAAc,GAAG,IAAI,eAAe,EAAE,CAAC;IAC7C,IAAI,eAAe,GAAyB,IAAI,CAAC;IAEjD,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,aAAa;YACnB,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,MAAM;YACN,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,MAAM;YACZ,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;gBACjD,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;gBACnC,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD,CAAC,CAAC;QAEH,6DAA6D;QAC7D,qEAAqE;QACrE,2EAA2E;QAC3E,mDAAmD;QACnD,IAAI,QAAqB,CAAC;QAC1B,IAAI,KAAa,CAAC;QAClB,IAAI,CAAC;YACH,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YACzC,uEAAuE;YACvE,sEAAsE;YACtE,qDAAqD;YACrD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,iBAAiB,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACxF,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CACb,oBAAoB,QAAQ,CAAC,IAAI,4BAA4B,CAC9D,CAAC;YACJ,CAAC;YACD,KAAK,GAAG,aAAa,CAAC;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBACvB,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,MAAM;gBACN,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,OAAO;gBACb,OAAO;aACR,CAAC,CAAC;YACH,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,sEAAsE;QACtE,wEAAwE;QACxE,4DAA4D;QAC5D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAElC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAC3C,wEAAwE;QACxE,8EAA8E;QAC9E,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CACrC,IAAI,CAAC,MAAM;YACT,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC;YACtD,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAC5C,CAAC;QACF,yEAAyE;QACzE,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,GAAG,GAAgB;YACvB,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,MAAM;YACN,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK;YACL,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ;YACR,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS,EAAE;YACzC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE;YAClD,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,wEAAwE;YACxE,kEAAkE;YAClE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,WAAW,EAAE,OAAO,CAAC,QAAQ;YAC7B,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,KAAK,EAAE,OAAO,CAAC,UAAU;YACzB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,MAAM,EAAE,eAAe;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,SAAS,EAAE,qBAAqB,CAAC;gBAC/B,aAAa,EAAE,OAAO;gBACtB,YAAY,EAAE,MAAM;gBACpB,YAAY,EAAE,eAAe;gBAC7B,WAAW,EAAE,KAAK;aACnB,CAAC;YACF,iBAAiB,EAAE,CAAC,QAAgB,EAAE,EAAE;gBACtC,mBAAmB,GAAG,QAAQ,CAAC;YACjC,CAAC;YACD,IAAI,EAAE,CAAC,KAAmB,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;SACzD,CAAC;QAEF,MAAM,YAAY,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QAEzD,eAAe,GAAG,CAAC,KAAK,IAAI,EAAE;YAC5B,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACzD,OAAO,GAAG,IAAI,CAAC;gBACf,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxC,sDAAsD;oBACtD,KAAK,CAAC,CAAC;gBACT,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,aAAa,GAAG,GAAG,CAAC;YACtB,CAAC;oBAAS,CAAC;gBACT,yEAAyE;gBACzE,oEAAoE;gBACpE,0DAA0D;gBAC1D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;gBACpE,IAAI,GAAG,IAAI,CAAC;gBACZ,IAAI,EAAE,CAAC;YACT,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,IAAI,EAAE,CAAC;YACZ,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,KAAK,CAAC,KAAK,EAAgB,CAAC;YAC3D,IAAI,IAAI;gBAAE,MAAM;YAChB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,SAAS,GAAG,IAAI,CAAC;IACnB,CAAC;YAAS,CAAC;QACT,WAAW,EAAE,CAAC;QACd,2EAA2E;QAC3E,wEAAwE;QACxE,4EAA4E;QAC5E,8CAA8C;QAC9C,IAAI,CAAC,SAAS;YAAE,cAAc,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACpE,IAAI,eAAe;YAAE,MAAM,eAAe,CAAC;QAC3C,sEAAsE;QACtE,4EAA4E;QAC5E,4EAA4E;QAC5E,2EAA2E;QAC3E,wEAAwE;QACxE,4EAA4E;QAC5E,0EAA0E;QAC1E,6EAA6E;QAC7E,YAAY;QACZ,IAAI,mBAAmB,IAAI,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,2DAA2D;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QAAE,MAAM,aAAa,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAuB,EACvB,MAAc,EACd,OAAuB,EAAE;IAEzB,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7E,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { AppContext, ApprovalResolver, CacheStrategyDef, CompactorDef, ElisionSettings, HookDispatcher, LLMProvider, ModeDef, PermissionResolver, PluginHostHandle, SessionId, SkillRegistry, TurnId } from '@moxxy/sdk';
1
+ import type { AppContext, ApprovalResolver, CacheStrategyDef, CompactorDef, ElisionSettings, HookDispatcher, LLMProvider, LoopGuardSettings, ModeDef, PermissionResolver, PluginHostHandle, SessionId, SkillRegistry, TurnId } from '@moxxy/sdk';
2
2
  import type { EventLog } from './events/log.js';
3
3
  import type { ToolRegistry } from './registries/tools.js';
4
4
  /**
@@ -48,6 +48,8 @@ export interface SessionRuntime {
48
48
  readonly reasoning?: {
49
49
  readonly effort?: 'low' | 'medium' | 'high';
50
50
  } | boolean | undefined;
51
+ /** Stuck-loop guard tuning, forwarded to each turn's ModeContext. */
52
+ readonly loopGuard?: LoopGuardSettings;
51
53
  readonly dispatcher: HookDispatcher;
52
54
  readonly pluginHost: PluginHostHandle;
53
55
  /**