@pie-players/pie-assessment-toolkit 0.3.30 → 0.3.32

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 (179) hide show
  1. package/README.md +289 -5
  2. package/dist/components/ItemToolBar.custom-element.js +165 -92
  3. package/dist/components/PieAssessmentToolkit.custom-element.js +604 -107
  4. package/dist/components/SectionToolBar.custom-element.js +0 -36
  5. package/dist/index.d.ts +2 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/policy/core/PolicySource.d.ts +64 -0
  9. package/dist/policy/core/PolicySource.d.ts.map +1 -0
  10. package/dist/policy/core/PolicySource.js +17 -0
  11. package/dist/policy/core/PolicySource.js.map +1 -0
  12. package/dist/policy/core/ToolPolicyEngine.d.ts +123 -0
  13. package/dist/policy/core/ToolPolicyEngine.d.ts.map +1 -0
  14. package/dist/policy/core/ToolPolicyEngine.js +217 -0
  15. package/dist/policy/core/ToolPolicyEngine.js.map +1 -0
  16. package/dist/policy/core/compose-decision.d.ts +37 -0
  17. package/dist/policy/core/compose-decision.d.ts.map +1 -0
  18. package/dist/policy/core/compose-decision.js +332 -0
  19. package/dist/policy/core/compose-decision.js.map +1 -0
  20. package/dist/policy/core/decision-types.d.ts +142 -0
  21. package/dist/policy/core/decision-types.d.ts.map +1 -0
  22. package/dist/policy/core/decision-types.js +13 -0
  23. package/dist/policy/core/decision-types.js.map +1 -0
  24. package/dist/policy/core/engine-context.d.ts +30 -0
  25. package/dist/policy/core/engine-context.d.ts.map +1 -0
  26. package/dist/policy/core/engine-context.js +28 -0
  27. package/dist/policy/core/engine-context.js.map +1 -0
  28. package/dist/policy/core/policy-source-tag.d.ts +32 -0
  29. package/dist/policy/core/policy-source-tag.d.ts.map +1 -0
  30. package/dist/policy/core/policy-source-tag.js +29 -0
  31. package/dist/policy/core/policy-source-tag.js.map +1 -0
  32. package/dist/policy/core/provenance.d.ts +163 -0
  33. package/dist/policy/core/provenance.d.ts.map +1 -0
  34. package/dist/policy/core/provenance.js +232 -0
  35. package/dist/policy/core/provenance.js.map +1 -0
  36. package/dist/policy/core/qti-inputs.d.ts +67 -0
  37. package/dist/policy/core/qti-inputs.d.ts.map +1 -0
  38. package/dist/policy/core/qti-inputs.js +139 -0
  39. package/dist/policy/core/qti-inputs.js.map +1 -0
  40. package/dist/policy/engine.d.ts +28 -0
  41. package/dist/policy/engine.d.ts.map +1 -0
  42. package/dist/policy/engine.js +24 -0
  43. package/dist/policy/engine.js.map +1 -0
  44. package/dist/policy/internal.d.ts +26 -0
  45. package/dist/policy/internal.d.ts.map +1 -0
  46. package/dist/policy/internal.js +26 -0
  47. package/dist/policy/internal.js.map +1 -0
  48. package/dist/policy/sources/QtiPolicySource.d.ts +146 -0
  49. package/dist/policy/sources/QtiPolicySource.d.ts.map +1 -0
  50. package/dist/policy/sources/QtiPolicySource.js +270 -0
  51. package/dist/policy/sources/QtiPolicySource.js.map +1 -0
  52. package/dist/runtime/SectionRuntimeEngine.d.ts +145 -0
  53. package/dist/runtime/SectionRuntimeEngine.d.ts.map +1 -1
  54. package/dist/runtime/SectionRuntimeEngine.js +164 -3
  55. package/dist/runtime/SectionRuntimeEngine.js.map +1 -1
  56. package/dist/runtime/adapter/SectionEngineAdapter.d.ts +144 -0
  57. package/dist/runtime/adapter/SectionEngineAdapter.d.ts.map +1 -0
  58. package/dist/runtime/adapter/SectionEngineAdapter.js +183 -0
  59. package/dist/runtime/adapter/SectionEngineAdapter.js.map +1 -0
  60. package/dist/runtime/adapter/coordinator-bridge.d.ts +93 -0
  61. package/dist/runtime/adapter/coordinator-bridge.d.ts.map +1 -0
  62. package/dist/runtime/adapter/coordinator-bridge.js +127 -0
  63. package/dist/runtime/adapter/coordinator-bridge.js.map +1 -0
  64. package/dist/runtime/adapter/dom-event-bridge.d.ts +63 -0
  65. package/dist/runtime/adapter/dom-event-bridge.d.ts.map +1 -0
  66. package/dist/runtime/adapter/dom-event-bridge.js +95 -0
  67. package/dist/runtime/adapter/dom-event-bridge.js.map +1 -0
  68. package/dist/runtime/adapter/framework-error-bridge.d.ts +37 -0
  69. package/dist/runtime/adapter/framework-error-bridge.d.ts.map +1 -0
  70. package/dist/runtime/adapter/framework-error-bridge.js +47 -0
  71. package/dist/runtime/adapter/framework-error-bridge.js.map +1 -0
  72. package/dist/runtime/adapter/instrumentation-bridge.d.ts +32 -0
  73. package/dist/runtime/adapter/instrumentation-bridge.d.ts.map +1 -0
  74. package/dist/runtime/adapter/instrumentation-bridge.js +39 -0
  75. package/dist/runtime/adapter/instrumentation-bridge.js.map +1 -0
  76. package/dist/runtime/adapter/subscriber-fanout.d.ts +35 -0
  77. package/dist/runtime/adapter/subscriber-fanout.d.ts.map +1 -0
  78. package/dist/runtime/adapter/subscriber-fanout.js +60 -0
  79. package/dist/runtime/adapter/subscriber-fanout.js.map +1 -0
  80. package/dist/runtime/core/SectionEngineCore.d.ts +52 -0
  81. package/dist/runtime/core/SectionEngineCore.d.ts.map +1 -0
  82. package/dist/runtime/core/SectionEngineCore.js +81 -0
  83. package/dist/runtime/core/SectionEngineCore.js.map +1 -0
  84. package/dist/runtime/core/cohort.d.ts +40 -0
  85. package/dist/runtime/core/cohort.d.ts.map +1 -0
  86. package/dist/runtime/core/cohort.js +49 -0
  87. package/dist/runtime/core/cohort.js.map +1 -0
  88. package/dist/runtime/core/engine-input.d.ts +114 -0
  89. package/dist/runtime/core/engine-input.d.ts.map +1 -0
  90. package/dist/runtime/core/engine-input.js +19 -0
  91. package/dist/runtime/core/engine-input.js.map +1 -0
  92. package/dist/runtime/core/engine-output.d.ts +62 -0
  93. package/dist/runtime/core/engine-output.d.ts.map +1 -0
  94. package/dist/runtime/core/engine-output.js +27 -0
  95. package/dist/runtime/core/engine-output.js.map +1 -0
  96. package/dist/runtime/core/engine-readiness.d.ts +49 -0
  97. package/dist/runtime/core/engine-readiness.d.ts.map +1 -0
  98. package/dist/runtime/core/engine-readiness.js +47 -0
  99. package/dist/runtime/core/engine-readiness.js.map +1 -0
  100. package/dist/runtime/core/engine-resolver.d.ts +172 -0
  101. package/dist/runtime/core/engine-resolver.d.ts.map +1 -0
  102. package/dist/runtime/core/engine-resolver.js +170 -0
  103. package/dist/runtime/core/engine-resolver.js.map +1 -0
  104. package/dist/runtime/core/engine-stage-derivation.d.ts +19 -0
  105. package/dist/runtime/core/engine-stage-derivation.d.ts.map +1 -0
  106. package/dist/runtime/core/engine-stage-derivation.js +30 -0
  107. package/dist/runtime/core/engine-stage-derivation.js.map +1 -0
  108. package/dist/runtime/core/engine-state.d.ts +83 -0
  109. package/dist/runtime/core/engine-state.d.ts.map +1 -0
  110. package/dist/runtime/core/engine-state.js +49 -0
  111. package/dist/runtime/core/engine-state.js.map +1 -0
  112. package/dist/runtime/core/engine-transition.d.ts +49 -0
  113. package/dist/runtime/core/engine-transition.d.ts.map +1 -0
  114. package/dist/runtime/core/engine-transition.js +261 -0
  115. package/dist/runtime/core/engine-transition.js.map +1 -0
  116. package/dist/runtime/engine-context.d.ts +40 -0
  117. package/dist/runtime/engine-context.d.ts.map +1 -0
  118. package/dist/runtime/engine-context.js +32 -0
  119. package/dist/runtime/engine-context.js.map +1 -0
  120. package/dist/runtime/engine.d.ts +24 -0
  121. package/dist/runtime/engine.d.ts.map +1 -0
  122. package/dist/runtime/engine.js +24 -0
  123. package/dist/runtime/engine.js.map +1 -0
  124. package/dist/runtime/internal.d.ts +44 -0
  125. package/dist/runtime/internal.d.ts.map +1 -0
  126. package/dist/runtime/internal.js +46 -0
  127. package/dist/runtime/internal.js.map +1 -0
  128. package/dist/runtime/runtime-id.d.ts +8 -0
  129. package/dist/runtime/runtime-id.d.ts.map +1 -0
  130. package/dist/runtime/runtime-id.js +10 -0
  131. package/dist/runtime/runtime-id.js.map +1 -0
  132. package/dist/runtime/section-runtime-engine-host-context.d.ts +74 -0
  133. package/dist/runtime/section-runtime-engine-host-context.d.ts.map +1 -0
  134. package/dist/runtime/section-runtime-engine-host-context.js +96 -0
  135. package/dist/runtime/section-runtime-engine-host-context.js.map +1 -0
  136. package/dist/runtime/stage-emit-gate.d.ts +93 -0
  137. package/dist/runtime/stage-emit-gate.d.ts.map +1 -0
  138. package/dist/runtime/stage-emit-gate.js +83 -0
  139. package/dist/runtime/stage-emit-gate.js.map +1 -0
  140. package/dist/services/ToolkitCoordinator.d.ts +280 -7
  141. package/dist/services/ToolkitCoordinator.d.ts.map +1 -1
  142. package/dist/services/ToolkitCoordinator.js +412 -32
  143. package/dist/services/ToolkitCoordinator.js.map +1 -1
  144. package/dist/services/framework-error-bus.d.ts +73 -0
  145. package/dist/services/framework-error-bus.d.ts.map +1 -0
  146. package/dist/services/framework-error-bus.js +68 -0
  147. package/dist/services/framework-error-bus.js.map +1 -0
  148. package/dist/services/framework-error.d.ts +36 -1
  149. package/dist/services/framework-error.d.ts.map +1 -1
  150. package/dist/services/framework-error.js +37 -0
  151. package/dist/services/framework-error.js.map +1 -1
  152. package/dist/services/interfaces.d.ts +78 -0
  153. package/dist/services/interfaces.d.ts.map +1 -1
  154. package/dist/services/interfaces.js.map +1 -1
  155. package/dist/services/section-controller-types.d.ts +20 -0
  156. package/dist/services/section-controller-types.d.ts.map +1 -1
  157. package/dist/services/tools-config-normalizer.d.ts +23 -0
  158. package/dist/services/tools-config-normalizer.d.ts.map +1 -1
  159. package/dist/services/tools-config-normalizer.js +13 -1
  160. package/dist/services/tools-config-normalizer.js.map +1 -1
  161. package/dist/tools/client.d.ts +0 -1
  162. package/dist/tools/client.d.ts.map +1 -1
  163. package/dist/tools/client.js +0 -2
  164. package/dist/tools/client.js.map +1 -1
  165. package/dist/tools/types.d.ts +0 -26
  166. package/dist/tools/types.d.ts.map +1 -1
  167. package/package.json +23 -7
  168. package/dist/runtime/runtime-event-guards.d.ts +0 -2
  169. package/dist/runtime/runtime-event-guards.d.ts.map +0 -1
  170. package/dist/runtime/runtime-event-guards.js +0 -4
  171. package/dist/runtime/runtime-event-guards.js.map +0 -1
  172. package/dist/tools/tool-coordinator.d.ts +0 -72
  173. package/dist/tools/tool-coordinator.d.ts.map +0 -1
  174. package/dist/tools/tool-coordinator.js +0 -194
  175. package/dist/tools/tool-coordinator.js.map +0 -1
  176. package/dist/types/events.d.ts +0 -157
  177. package/dist/types/events.d.ts.map +0 -1
  178. package/dist/types/events.js +0 -11
  179. package/dist/types/events.js.map +0 -1
@@ -13,11 +13,13 @@
13
13
  *
14
14
  * Part of PIE Assessment Toolkit.
15
15
  */
16
- import type { AccessibilityCatalog } from "@pie-players/pie-players-shared/types";
16
+ import type { AccessibilityCatalog, AssessmentEntity, AssessmentItemRef } from "@pie-players/pie-players-shared/types";
17
17
  import { type CanonicalToolsConfig, type ToolPlacementConfig, type ToolPolicyConfig, type ToolProviderConfig, type ToolProvidersConfig } from "./tools-config-normalizer.js";
18
18
  import { type ToolConfigStrictness } from "./tool-config-validation.js";
19
19
  import { AccessibilityCatalogResolver } from "./AccessibilityCatalogResolver.js";
20
20
  import { ElementToolStateStore } from "./ElementToolStateStore.js";
21
+ import { type FrameworkErrorModel } from "./framework-error.js";
22
+ import { FrameworkErrorBus, type FrameworkErrorListener } from "./framework-error-bus.js";
21
23
  import { HighlightCoordinator } from "./HighlightCoordinator.js";
22
24
  import { ToolCoordinator } from "./ToolCoordinator.js";
23
25
  import { TTSService } from "./TTSService.js";
@@ -26,8 +28,10 @@ import { ToolProviderRegistry } from "./tool-providers/index.js";
26
28
  import type { ToolProviderApi } from "./tool-providers/ToolProviderApi.js";
27
29
  import type { TTSToolProviderConfig } from "./tool-providers/index.js";
28
30
  import type { ToolRegistry } from "./ToolRegistry.js";
31
+ import { type PolicySource, type QtiEnforcementMode, type ResolvedEngineInputs, type ToolPolicyChangeListener, type ToolPolicyDecision, type ToolPolicyDecisionRequest } from "../policy/engine.js";
29
32
  import type { SectionControllerContext, SectionControllerEvent, SectionControllerEventType, SectionControllerFactoryDefaults, SectionControllerHandle, SectionControllerKey, SectionSessionPersistenceStrategy, SectionPersistenceFactoryDefaults } from "./section-controller-types.js";
30
- export type { SectionControllerContext, SectionControllerEvent, SectionControllerEventType, SectionControllerFactoryDefaults, SectionControllerHandle, SectionControllerKey, SectionSessionPersistenceConfig, SectionSessionPersistenceStrategy, SectionControllerRuntimeState, SectionControllerSessionState, SectionPersistenceFactoryDefaults, } from "./section-controller-types.js";
33
+ export type { SectionControllerContext, SectionControllerEvent, SectionControllerEventType, SectionControllerFactoryDefaults, SectionControllerHandle, SectionControllerKey, SectionControllerLoadedRenderable, SectionSessionPersistenceConfig, SectionSessionPersistenceStrategy, SectionControllerRuntimeState, SectionControllerSessionState, SectionPersistenceFactoryDefaults, } from "./section-controller-types.js";
34
+ export type { QtiEnforcementMode, ResolvedEngineInputs, ToolPolicyChangeListener, ToolPolicyDecision, ToolPolicyDecisionRequest, } from "../policy/engine.js";
31
35
  /**
32
36
  * Generic tool configuration
33
37
  */
@@ -141,6 +145,18 @@ export interface ToolkitCoordinatorConfig {
141
145
  * @internal
142
146
  */
143
147
  deferToolConfigValidation?: boolean;
148
+ /**
149
+ * Optional pre-constructed framework-error bus.
150
+ *
151
+ * Pass a bus owned by the embedding host (typically
152
+ * `<pie-assessment-toolkit>`) when the host wants pre-coordinator
153
+ * failures (e.g. `coordinator-init` itself) to flow through the same
154
+ * fan-out as post-coordinator failures. When omitted, the coordinator
155
+ * constructs its own private bus, which is what standalone embeds get.
156
+ *
157
+ * @internal
158
+ */
159
+ frameworkErrorBus?: FrameworkErrorBus;
144
160
  }
145
161
  export interface ToolkitErrorContext {
146
162
  phase: "coordinator-ready" | "state-load" | "state-save" | "provider-register" | "provider-init" | "tts-init" | "section-controller-init" | "section-controller-dispose";
@@ -191,9 +207,22 @@ export interface SectionScopedEventSubscriptionArgs {
191
207
  eventTypes?: readonly SectionScopedEventType[];
192
208
  }
193
209
  export interface ToolkitCoordinatorHooks {
194
- onError?: (error: Error, context: ToolkitErrorContext) => void;
195
- onTTSError?: (error: Error, context: ToolkitErrorContext) => void;
196
- onProviderError?: (providerId: string, error: Error, context: ToolkitErrorContext) => void;
210
+ /**
211
+ * Canonical framework-error hook.
212
+ *
213
+ * Called once per framework-level failure (tool-config validation,
214
+ * provider register / init, TTS bring-up, state load / save, section
215
+ * controller init / dispose, coordinator init). The model carries the
216
+ * canonical {@link FrameworkErrorModel} shape — `kind`, `severity`,
217
+ * `source`, `message`, `details`, `recoverable`, and the original
218
+ * thrown value as `cause`.
219
+ *
220
+ * Listeners should return synchronously and avoid throwing; a thrown
221
+ * hook is caught and logged but does not stop fan-out to the other
222
+ * subscribers (DOM event, prop callback, deprecated alias hooks,
223
+ * `subscribeFrameworkErrors` listeners).
224
+ */
225
+ onFrameworkError?: (model: FrameworkErrorModel) => void;
197
226
  onBeforeTTSInit?: (context: ToolkitErrorContext) => void | Promise<void>;
198
227
  onTTSReady?: () => void | Promise<void>;
199
228
  onCoordinatorReady?: (coordinator: ToolkitCoordinator) => void | Promise<void>;
@@ -287,14 +316,115 @@ export declare class ToolkitCoordinator {
287
316
  private readonly sectionEventListenerIds;
288
317
  private readonly sectionEventSubscriptions;
289
318
  private readonly telemetryListeners;
319
+ private readonly frameworkErrorBus;
320
+ private readonly ownsFrameworkErrorBus;
290
321
  private nextSectionEventListenerId;
322
+ /**
323
+ * Unified Tool Policy Engine. Owned by the coordinator and lives
324
+ * for the lifetime of the coordinator instance — there is no
325
+ * explicit teardown path today; the engine and its listener set
326
+ * are reclaimed by GC when the coordinator becomes unreachable.
327
+ * Subscribers attached via {@link onPolicyChange} must therefore
328
+ * detach via the unsubscribe function the engine returns; do not
329
+ * rely on a `disposed` event being emitted on coordinator teardown.
330
+ *
331
+ * Hosts read decisions via {@link decideToolPolicy} or subscribe
332
+ * to changes via {@link onPolicyChange}. The legacy
333
+ * `resolveToolsForLevel` / `PnpToolResolver` paths still coexist
334
+ * until the upcoming compat-removal sweep deletes them.
335
+ */
336
+ private readonly policyEngine;
337
+ /**
338
+ * Host-set override for QTI enforcement. `null` (the default) means
339
+ * "auto" — the coordinator infers the effective mode from the
340
+ * QTI inputs the bound `AssessmentEntity` and `AssessmentItemRef`
341
+ * actually carry (see {@link resolveEffectiveQtiEnforcement}).
342
+ * `"on"` / `"off"` are explicit host opt-in / opt-out and stick
343
+ * across subsequent assessment / item swaps until the host clears
344
+ * the override by calling `setQtiEnforcement(null)`.
345
+ */
346
+ private qtiEnforcementOverride;
347
+ /**
348
+ * Last assessment passed to {@link updateAssessment}. Read by
349
+ * {@link resolveEffectiveQtiEnforcement} to compute auto-mode.
350
+ * The engine's own copy is the canonical record for decisions;
351
+ * this mirror exists only so the auto-mode helper does not need
352
+ * to round-trip through {@link policyEngine}'s frozen snapshot.
353
+ */
354
+ private boundAssessment;
355
+ /**
356
+ * Last item reference passed to {@link updateCurrentItemRef}.
357
+ * Mirrored alongside {@link boundAssessment} so
358
+ * {@link resolveEffectiveQtiEnforcement} can detect item-level
359
+ * QTI inputs (`requiredTools` / `restrictedTools` /
360
+ * `toolParameters`) without round-tripping through the engine's
361
+ * frozen snapshot.
362
+ */
363
+ private boundCurrentItemRef;
291
364
  /** Callback for floating tools changes */
292
365
  private floatingToolsChangeCallback;
293
366
  private static resolveConfig;
294
367
  constructor(config: ToolkitCoordinatorConfig);
368
+ /**
369
+ * Subscribe the canonical `onFrameworkError` hook adapter to the
370
+ * framework-error bus.
371
+ *
372
+ * Called once from the constructor. The adapter inspects the live
373
+ * `this.hooks` reference, so a hook added later via {@link setHooks}
374
+ * is picked up automatically without re-subscribing.
375
+ */
376
+ private subscribeFrameworkErrorHookAdapters;
377
+ /**
378
+ * Emit a telemetry event to `onTelemetry` hook + all `subscribeTelemetry`
379
+ * listeners.
380
+ *
381
+ * **Naming convention.** Event names MUST be prefixed at the call site,
382
+ * not auto-decorated here. The convention is:
383
+ *
384
+ * - `pie-toolkit-*` for toolkit lifecycle (state load, providers,
385
+ * coordinator readiness, section-controller register/dispose, TTS
386
+ * bring-up, tool-config updates, etc.).
387
+ * - `pie-tool-*` for individual tool events (provider init lifecycle,
388
+ * provider backend calls, tool-specific telemetry forwarded from
389
+ * `__pieTelemetry`).
390
+ * - `pie-section-*` is reserved for section-player layout events
391
+ * surfaced via `attachInstrumentationEventBridge` and is not emitted
392
+ * from this method directly.
393
+ *
394
+ * Anything that does not fit a documented prefix is a deliberate decision
395
+ * to be raised in code review, not a fallback. There is no "auto prefix"
396
+ * here on purpose: it keeps every emit-site honest about which namespace
397
+ * it owns, and lets `subscribeTelemetry` consumers compare against
398
+ * documented strings without per-consumer normalization.
399
+ */
295
400
  private emitTelemetry;
296
401
  private emitSectionControllerLifecycle;
297
402
  private handleError;
403
+ /**
404
+ * Subscribe to framework-error events emitted by this coordinator.
405
+ *
406
+ * See `ToolkitCoordinatorApi.subscribeFrameworkErrors` for the
407
+ * contract. The bus is shared with the canonical
408
+ * `onFrameworkError` lifecycle hook, so a listener registered here
409
+ * sees the same fan-out the hook sees.
410
+ */
411
+ subscribeFrameworkErrors(listener: FrameworkErrorListener): () => void;
412
+ /**
413
+ * Report a framework-error model directly into this coordinator's bus.
414
+ *
415
+ * Used by embedding hosts (e.g. `<pie-assessment-toolkit>`) that
416
+ * pre-construct their own framework-error model in a path that does
417
+ * not go through `handleError` — for example, `runtime-init` failures
418
+ * raised before any coordinator phase, or `tool-config` failures
419
+ * synthesized from validation diagnostics.
420
+ *
421
+ * Hosts that already share their bus via the constructor's
422
+ * `frameworkErrorBus` config field do not need to call this; their
423
+ * own `bus.reportFrameworkError(model)` is observed here.
424
+ *
425
+ * @internal
426
+ */
427
+ reportFrameworkError(model: FrameworkErrorModel): void;
298
428
  private getSectionControllerMapKey;
299
429
  private createDefaultSectionPersistence;
300
430
  private resolveSectionPersistence;
@@ -321,6 +451,21 @@ export declare class ToolkitCoordinator {
321
451
  private getOrCreateSectionEventListenerId;
322
452
  private buildSectionEventPredicate;
323
453
  private collectEventItemIds;
454
+ /**
455
+ * Build replay `content-loaded` events for renderables the controller has
456
+ * already finished loading.
457
+ *
458
+ * Strict by design: only renderables explicitly reported in
459
+ * `runtimeState.loadedRenderables` are replayed. Synthetic test harnesses
460
+ * that omit the field (or controllers from older revisions that did not
461
+ * populate it) get an empty replay set rather than a fabricated one — that
462
+ * preserves the contract that replays mirror events that actually fired.
463
+ *
464
+ * Order follows registration order from
465
+ * `SectionController.collectLoadedRenderableSnapshot`, which mirrors the
466
+ * order live `content-loaded` events were emitted in.
467
+ */
468
+ private buildContentLoadedReplayEvents;
324
469
  private buildLoadingCompleteReplayEvent;
325
470
  private createSectionEventDetachHandler;
326
471
  /**
@@ -419,9 +564,40 @@ export declare class ToolkitCoordinator {
419
564
  */
420
565
  updateFloatingTools(toolIds: string[]): void;
421
566
  /**
422
- * Get currently enabled floating tools.
567
+ * Get currently enabled floating tools (section-level placement).
568
+ *
569
+ * @returns Array of enabled tool IDs.
570
+ *
571
+ * @remarks
572
+ * As of M8 PR 2 this routes through the {@link ToolPolicyEngine}
573
+ * rather than the legacy `resolveToolsForLevel(...)` shim. The two
574
+ * paths agree on `placement → policy.allowed → policy.blocked`,
575
+ * but the engine additionally enforces:
576
+ *
577
+ * - **Provider veto** — `tools.providers[id].enabled === false`
578
+ * removes the tool from the visible set. The legacy resolver
579
+ * ignored this flag for floating tools.
580
+ * - **QTI gates** — when `qtiEnforcement` is `"on"` (set by host
581
+ * via {@link setQtiEnforcement}, or auto-promoted when the
582
+ * bound `AssessmentEntity` / current `AssessmentItemRef`
583
+ * carries QTI 6-level precedence material — see
584
+ * {@link resolveEffectiveQtiEnforcement}) **and an assessment
585
+ * is bound**, the QTI 6-level precedence (district block →
586
+ * test-admin override → item restriction/requirement →
587
+ * district requirement → PNP supports / prohibitions) is
588
+ * applied. `qtiEnforcement: "on"` without a bound assessment
589
+ * is a no-op for QTI gating.
590
+ * - **Custom `PolicySource`s** registered via
591
+ * {@link registerPolicySource}.
592
+ *
593
+ * Under the default no-assessment, no-override, no-provider-veto
594
+ * configuration the result still matches `resolveToolsForLevel(...)`
595
+ * exactly — a parity asserted by the integration tests in
596
+ * `tests/policy/coordinator-integration.test.ts`. Once PR 5 deletes
597
+ * the legacy resolver this method becomes the canonical surface.
423
598
  *
424
- * @returns Array of enabled tool IDs
599
+ * Consumers that need the full decision (provenance, diagnostics)
600
+ * should call {@link decideToolPolicy} instead.
425
601
  */
426
602
  getFloatingTools(): string[];
427
603
  /**
@@ -431,6 +607,103 @@ export declare class ToolkitCoordinator {
431
607
  * @returns Unsubscribe function
432
608
  */
433
609
  onFloatingToolsChange(callback: (toolIds: string[]) => void): () => void;
610
+ /**
611
+ * Resolve the visible tool set for a given placement level + scope.
612
+ *
613
+ * Thin shim over the owned tool-policy engine. Hosts that need
614
+ * richer outputs (provenance, diagnostics) read this directly;
615
+ * hosts that only need the section-level tool IDs can call
616
+ * {@link getFloatingTools} instead.
617
+ */
618
+ decideToolPolicy(request: ToolPolicyDecisionRequest): ToolPolicyDecision;
619
+ /**
620
+ * Subscribe to policy-engine change events. Fires whenever the
621
+ * coordinator's bound inputs change (`updateToolConfig`,
622
+ * `updateFloatingTools`, `updateAssessment`, `updateCurrentItemRef`,
623
+ * `setQtiEnforcement`) or a custom `PolicySource` is registered /
624
+ * removed via {@link registerPolicySource}.
625
+ *
626
+ * The listener receives a `ToolPolicyChangeEvent` with the event
627
+ * `reason` and a frozen snapshot of the engine inputs. Listeners
628
+ * that want the new visible tool set should call
629
+ * {@link decideToolPolicy} with their level / scope.
630
+ *
631
+ * Note: the engine itself can also emit `reason: "disposed"`, but
632
+ * the coordinator does not dispose its engine on teardown today,
633
+ * so subscribers attached via this method will not observe that
634
+ * reason. Detach via the returned unsubscribe function instead of
635
+ * relying on a `disposed` event.
636
+ */
637
+ onPolicyChange(listener: ToolPolicyChangeListener): () => void;
638
+ /**
639
+ * Bind (or clear) the active QTI assessment for policy decisions.
640
+ *
641
+ * Under auto-mode (no host override via {@link setQtiEnforcement}),
642
+ * the coordinator promotes the engine to `qtiEnforcement: "on"`
643
+ * iff the assessment carries any QTI 6-level precedence material
644
+ * (`personalNeedsProfile`, `settings.districtPolicy`,
645
+ * `settings.testAdministration`) or the currently-bound item ref
646
+ * carries item-level QTI inputs. A bare assessment record (just
647
+ * `id` / `name`, no PNP, no settings) keeps `"off"`.
648
+ *
649
+ * The host override set via {@link setQtiEnforcement} is sticky
650
+ * across assessment swaps; calling with `null` clears the binding
651
+ * and re-runs the auto-mode helper.
652
+ */
653
+ updateAssessment(assessment: AssessmentEntity | null): void;
654
+ /**
655
+ * Bind (or clear) the current item reference for policy decisions.
656
+ *
657
+ * Used by item-level QTI gates (item `requiredTools` /
658
+ * `restrictedTools` / `toolParameters`). Item-level QTI material
659
+ * also feeds {@link resolveEffectiveQtiEnforcement} — navigating
660
+ * to an item with QTI settings can flip auto-mode to `"on"` even
661
+ * when the parent assessment carries no QTI block of its own.
662
+ */
663
+ updateCurrentItemRef(itemRef: AssessmentItemRef | null): void;
664
+ /**
665
+ * Override the auto-mode QTI enforcement decision.
666
+ *
667
+ * Pass `"on"` to force QTI enforcement even when no QTI inputs
668
+ * are bound (useful for tests / fixtures). Pass `"off"` to opt
669
+ * out even when QTI inputs are present. Pass `null` to clear the
670
+ * override and return to auto-mode — `"on"` iff
671
+ * {@link resolveDefaultQtiEnforcement} reports any QTI material
672
+ * on the bound assessment or current item, otherwise `"off"`.
673
+ */
674
+ setQtiEnforcement(mode: QtiEnforcementMode | null): void;
675
+ /**
676
+ * Get the policy engine inputs currently driving decisions. Useful
677
+ * for debugging / instrumentation; do not mutate.
678
+ */
679
+ getPolicyInputs(): Readonly<ResolvedEngineInputs>;
680
+ /**
681
+ * Register a custom {@link PolicySource} with the owned policy
682
+ * engine. The source participates in every subsequent
683
+ * {@link decideToolPolicy} call until disposed (the returned
684
+ * function detaches and emits a `policy-source-removed` event).
685
+ *
686
+ * Delegates verbatim to
687
+ * {@link ToolPolicyEngine.registerPolicySource} — see that
688
+ * method for the full contract (event ordering, idempotency of
689
+ * the returned dispose function, and how registered sources
690
+ * compose with the built-in QTI source).
691
+ */
692
+ registerPolicySource(source: PolicySource): () => void;
693
+ /**
694
+ * Compute the effective `qtiEnforcement` mode given the explicit
695
+ * host override and the auto-mode helper.
696
+ *
697
+ * Auto-mode (no override) defers to
698
+ * {@link resolveDefaultQtiEnforcement}, which returns `"on"`
699
+ * exactly when the bound assessment or current item ref carries
700
+ * QTI 6-level precedence material (PNP, district policy, test
701
+ * administration, item-level required/restricted/parameters), and
702
+ * `"off"` otherwise. Hosts that bind a bare assessment record
703
+ * (just `id` / `name`) therefore keep the legacy floating-tools
704
+ * behavior — QTI gates engage the moment QTI material is present.
705
+ */
706
+ private resolveEffectiveQtiEnforcement;
434
707
  /**
435
708
  * Apply tool configuration changes to underlying services.
436
709
  * Called after updateToolConfig().
@@ -1 +1 @@
1
- {"version":3,"file":"ToolkitCoordinator.d.ts","sourceRoot":"","sources":["../../src/services/ToolkitCoordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolkitCoordinator.d.ts","sourceRoot":"","sources":["../../src/services/ToolkitCoordinator.ts"],"names":[],"mappings":"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"}