@retaw106/mmc-oc 0.0.0-stage → 1.2.2
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.
- package/dist/agents/historian.d.ts +4 -0
- package/dist/agents/historian.d.ts.map +1 -0
- package/dist/agents/language-directive.d.ts +26 -0
- package/dist/agents/language-directive.d.ts.map +1 -0
- package/dist/agents/magic-context-prompt.d.ts +5 -0
- package/dist/agents/magic-context-prompt.d.ts.map +1 -0
- package/dist/agents/memory-maintainer.d.ts +96 -0
- package/dist/agents/memory-maintainer.d.ts.map +1 -0
- package/dist/config/agent-disable.d.ts +29 -0
- package/dist/config/agent-disable.d.ts.map +1 -0
- package/dist/config/config-paths.d.ts +7 -0
- package/dist/config/config-paths.d.ts.map +1 -0
- package/dist/config/index.d.ts +69 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/live-run-config.d.ts +11 -0
- package/dist/config/live-run-config.d.ts.map +1 -0
- package/dist/config/live-snapshot.d.ts +32 -0
- package/dist/config/live-snapshot.d.ts.map +1 -0
- package/dist/config/migrate-experimental.d.ts +26 -0
- package/dist/config/migrate-experimental.d.ts.map +1 -0
- package/dist/config/profiles.d.ts +22 -0
- package/dist/config/profiles.d.ts.map +1 -0
- package/dist/config/project-security.d.ts +124 -0
- package/dist/config/project-security.d.ts.map +1 -0
- package/dist/config/prune-config-leaf.d.ts +26 -0
- package/dist/config/prune-config-leaf.d.ts.map +1 -0
- package/dist/config/raw-loader.d.ts +42 -0
- package/dist/config/raw-loader.d.ts.map +1 -0
- package/dist/config/removed-agent-config.d.ts +8 -0
- package/dist/config/removed-agent-config.d.ts.map +1 -0
- package/dist/config/schema/agent-overrides.d.ts +52 -0
- package/dist/config/schema/agent-overrides.d.ts.map +1 -0
- package/dist/config/schema/magic-context.d.ts +805 -0
- package/dist/config/schema/magic-context.d.ts.map +1 -0
- package/dist/config/variable.d.ts +48 -0
- package/dist/config/variable.d.ts.map +1 -0
- package/dist/context-a6px04s0.js +23932 -0
- package/dist/derive-budgets-fhk00zv8.js +18 -0
- package/dist/features/magic-context/compaction-marker.d.ts +211 -0
- package/dist/features/magic-context/compaction-marker.d.ts.map +1 -0
- package/dist/features/magic-context/compaction.d.ts +7 -0
- package/dist/features/magic-context/compaction.d.ts.map +1 -0
- package/dist/features/magic-context/compartment-events.d.ts +50 -0
- package/dist/features/magic-context/compartment-events.d.ts.map +1 -0
- package/dist/features/magic-context/compartment-lease.d.ts +28 -0
- package/dist/features/magic-context/compartment-lease.d.ts.map +1 -0
- package/dist/features/magic-context/compartment-storage.d.ts +178 -0
- package/dist/features/magic-context/compartment-storage.d.ts.map +1 -0
- package/dist/features/magic-context/compression-depth-storage.d.ts +14 -0
- package/dist/features/magic-context/compression-depth-storage.d.ts.map +1 -0
- package/dist/features/magic-context/context-authority.d.ts +15 -0
- package/dist/features/magic-context/context-authority.d.ts.map +1 -0
- package/dist/features/magic-context/fail-closed-block.d.ts +117 -0
- package/dist/features/magic-context/fail-closed-block.d.ts.map +1 -0
- package/dist/features/magic-context/index.d.ts +10 -0
- package/dist/features/magic-context/index.d.ts.map +1 -0
- package/dist/features/magic-context/literal-probes.d.ts +24 -0
- package/dist/features/magic-context/literal-probes.d.ts.map +1 -0
- package/dist/features/magic-context/lkg-prefix-chunks.d.ts +53 -0
- package/dist/features/magic-context/lkg-prefix-chunks.d.ts.map +1 -0
- package/dist/features/magic-context/memory/constants.d.ts +16 -0
- package/dist/features/magic-context/memory/constants.d.ts.map +1 -0
- package/dist/features/magic-context/memory/index.d.ts +11 -0
- package/dist/features/magic-context/memory/index.d.ts.map +1 -0
- package/dist/features/magic-context/memory/memory-diagnostics.d.ts +6 -0
- package/dist/features/magic-context/memory/memory-diagnostics.d.ts.map +1 -0
- package/dist/features/magic-context/memory/memory-selection.d.ts +12 -0
- package/dist/features/magic-context/memory/memory-selection.d.ts.map +1 -0
- package/dist/features/magic-context/memory/memory-visibility.d.ts +46 -0
- package/dist/features/magic-context/memory/memory-visibility.d.ts.map +1 -0
- package/dist/features/magic-context/memory/normalize-hash.d.ts +3 -0
- package/dist/features/magic-context/memory/normalize-hash.d.ts.map +1 -0
- package/dist/features/magic-context/memory/project-identity-cache.d.ts +7 -0
- package/dist/features/magic-context/memory/project-identity-cache.d.ts.map +1 -0
- package/dist/features/magic-context/memory/project-identity.d.ts +97 -0
- package/dist/features/magic-context/memory/project-identity.d.ts.map +1 -0
- package/dist/features/magic-context/memory/promotion.d.ts +26 -0
- package/dist/features/magic-context/memory/promotion.d.ts.map +1 -0
- package/dist/features/magic-context/memory/relocate-memory.d.ts +58 -0
- package/dist/features/magic-context/memory/relocate-memory.d.ts.map +1 -0
- package/dist/features/magic-context/memory/storage-memory-fts.d.ts +11 -0
- package/dist/features/magic-context/memory/storage-memory-fts.d.ts.map +1 -0
- package/dist/features/magic-context/memory/storage-memory-verifications.d.ts +35 -0
- package/dist/features/magic-context/memory/storage-memory-verifications.d.ts.map +1 -0
- package/dist/features/magic-context/memory/storage-memory.d.ts +89 -0
- package/dist/features/magic-context/memory/storage-memory.d.ts.map +1 -0
- package/dist/features/magic-context/memory/types.d.ts +59 -0
- package/dist/features/magic-context/memory/types.d.ts.map +1 -0
- package/dist/features/magic-context/memory/verification-paths.d.ts +48 -0
- package/dist/features/magic-context/memory/verification-paths.d.ts.map +1 -0
- package/dist/features/magic-context/memory/visibility.d.ts +6 -0
- package/dist/features/magic-context/memory/visibility.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/apply.d.ts +65 -0
- package/dist/features/magic-context/memory-maintainer/apply.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/budget.d.ts +75 -0
- package/dist/features/magic-context/memory-maintainer/budget.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/coverage.d.ts +91 -0
- package/dist/features/magic-context/memory-maintainer/coverage.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/dream-state.d.ts +18 -0
- package/dist/features/magic-context/memory-maintainer/dream-state.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/launcher.d.ts +119 -0
- package/dist/features/magic-context/memory-maintainer/launcher.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/lease.d.ts +56 -0
- package/dist/features/magic-context/memory-maintainer/lease.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/manifest.d.ts +127 -0
- package/dist/features/magic-context/memory-maintainer/manifest.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/manual-commands.d.ts +46 -0
- package/dist/features/magic-context/memory-maintainer/manual-commands.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/oc2-adapter.d.ts +79 -0
- package/dist/features/magic-context/memory-maintainer/oc2-adapter.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/pause-report.d.ts +37 -0
- package/dist/features/magic-context/memory-maintainer/pause-report.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/pipeline.d.ts +199 -0
- package/dist/features/magic-context/memory-maintainer/pipeline.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/provider-output-failure.d.ts +15 -0
- package/dist/features/magic-context/memory-maintainer/provider-output-failure.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/schedule-storage.d.ts +76 -0
- package/dist/features/magic-context/memory-maintainer/schedule-storage.d.ts.map +1 -0
- package/dist/features/magic-context/memory-maintainer/schedule.d.ts +90 -0
- package/dist/features/magic-context/memory-maintainer/schedule.d.ts.map +1 -0
- package/dist/features/magic-context/merged-reasoning-decisions.d.ts +6 -0
- package/dist/features/magic-context/merged-reasoning-decisions.d.ts.map +1 -0
- package/dist/features/magic-context/message-fts-rowid-map.d.ts +50 -0
- package/dist/features/magic-context/message-fts-rowid-map.d.ts.map +1 -0
- package/dist/features/magic-context/message-fts-session-filter.d.ts +14 -0
- package/dist/features/magic-context/message-fts-session-filter.d.ts.map +1 -0
- package/dist/features/magic-context/message-index-async.d.ts +33 -0
- package/dist/features/magic-context/message-index-async.d.ts.map +1 -0
- package/dist/features/magic-context/message-index-sweep.d.ts +11 -0
- package/dist/features/magic-context/message-index-sweep.d.ts.map +1 -0
- package/dist/features/magic-context/message-index.d.ts +88 -0
- package/dist/features/magic-context/message-index.d.ts.map +1 -0
- package/dist/features/magic-context/message-time-backfill.d.ts +19 -0
- package/dist/features/magic-context/message-time-backfill.d.ts.map +1 -0
- package/dist/features/magic-context/migration-v2-write-split.d.ts +62 -0
- package/dist/features/magic-context/migration-v2-write-split.d.ts.map +1 -0
- package/dist/features/magic-context/migrations.d.ts +73 -0
- package/dist/features/magic-context/migrations.d.ts.map +1 -0
- package/dist/features/magic-context/mock-database.d.ts +3 -0
- package/dist/features/magic-context/mock-database.d.ts.map +1 -0
- package/dist/features/magic-context/mural/storage-mural-cues.d.ts +65 -0
- package/dist/features/magic-context/mural/storage-mural-cues.d.ts.map +1 -0
- package/dist/features/magic-context/no-content-compartment.d.ts +12 -0
- package/dist/features/magic-context/no-content-compartment.d.ts.map +1 -0
- package/dist/features/magic-context/opencode2-relabel.d.ts +132 -0
- package/dist/features/magic-context/opencode2-relabel.d.ts.map +1 -0
- package/dist/features/magic-context/overflow-detection.d.ts +108 -0
- package/dist/features/magic-context/overflow-detection.d.ts.map +1 -0
- package/dist/features/magic-context/pi-content-decisions.d.ts +9 -0
- package/dist/features/magic-context/pi-content-decisions.d.ts.map +1 -0
- package/dist/features/magic-context/project-identity.d.ts +2 -0
- package/dist/features/magic-context/project-identity.d.ts.map +1 -0
- package/dist/features/magic-context/protection-window.d.ts +79 -0
- package/dist/features/magic-context/protection-window.d.ts.map +1 -0
- package/dist/features/magic-context/range-parser.d.ts +18 -0
- package/dist/features/magic-context/range-parser.d.ts.map +1 -0
- package/dist/features/magic-context/reclaim-protection.d.ts +13 -0
- package/dist/features/magic-context/reclaim-protection.d.ts.map +1 -0
- package/dist/features/magic-context/resolve-subagent-fallback.d.ts +42 -0
- package/dist/features/magic-context/resolve-subagent-fallback.d.ts.map +1 -0
- package/dist/features/magic-context/scheduler.d.ts +20 -0
- package/dist/features/magic-context/scheduler.d.ts.map +1 -0
- package/dist/features/magic-context/schema-fence-probe.d.ts +29 -0
- package/dist/features/magic-context/schema-fence-probe.d.ts.map +1 -0
- package/dist/features/magic-context/search.d.ts +118 -0
- package/dist/features/magic-context/search.d.ts.map +1 -0
- package/dist/features/magic-context/session-cache-ttl.d.ts +10 -0
- package/dist/features/magic-context/session-cache-ttl.d.ts.map +1 -0
- package/dist/features/magic-context/session-decision-calibration.d.ts +31 -0
- package/dist/features/magic-context/session-decision-calibration.d.ts.map +1 -0
- package/dist/features/magic-context/session-project-backfill.d.ts +37 -0
- package/dist/features/magic-context/session-project-backfill.d.ts.map +1 -0
- package/dist/features/magic-context/session-project-storage.d.ts +23 -0
- package/dist/features/magic-context/session-project-storage.d.ts.map +1 -0
- package/dist/features/magic-context/storage-caveman-rules.d.ts +21 -0
- package/dist/features/magic-context/storage-caveman-rules.d.ts.map +1 -0
- package/dist/features/magic-context/storage-clone.d.ts +44 -0
- package/dist/features/magic-context/storage-clone.d.ts.map +1 -0
- package/dist/features/magic-context/storage-db.d.ts +183 -0
- package/dist/features/magic-context/storage-db.d.ts.map +1 -0
- package/dist/features/magic-context/storage-historian-runs.d.ts +79 -0
- package/dist/features/magic-context/storage-historian-runs.d.ts.map +1 -0
- package/dist/features/magic-context/storage-identity-merge.d.ts +26 -0
- package/dist/features/magic-context/storage-identity-merge.d.ts.map +1 -0
- package/dist/features/magic-context/storage-identity-rekey-map.d.ts +11 -0
- package/dist/features/magic-context/storage-identity-rekey-map.d.ts.map +1 -0
- package/dist/features/magic-context/storage-m0-mutation-log.d.ts +22 -0
- package/dist/features/magic-context/storage-m0-mutation-log.d.ts.map +1 -0
- package/dist/features/magic-context/storage-memory-mutation-log.d.ts +29 -0
- package/dist/features/magic-context/storage-memory-mutation-log.d.ts.map +1 -0
- package/dist/features/magic-context/storage-meta-persisted.d.ts +623 -0
- package/dist/features/magic-context/storage-meta-persisted.d.ts.map +1 -0
- package/dist/features/magic-context/storage-meta-session.d.ts +14 -0
- package/dist/features/magic-context/storage-meta-session.d.ts.map +1 -0
- package/dist/features/magic-context/storage-meta-shared.d.ts +102 -0
- package/dist/features/magic-context/storage-meta-shared.d.ts.map +1 -0
- package/dist/features/magic-context/storage-meta.d.ts +4 -0
- package/dist/features/magic-context/storage-meta.d.ts.map +1 -0
- package/dist/features/magic-context/storage-native-replay.d.ts +29 -0
- package/dist/features/magic-context/storage-native-replay.d.ts.map +1 -0
- package/dist/features/magic-context/storage-notes.d.ts +80 -0
- package/dist/features/magic-context/storage-notes.d.ts.map +1 -0
- package/dist/features/magic-context/storage-ops.d.ts +14 -0
- package/dist/features/magic-context/storage-ops.d.ts.map +1 -0
- package/dist/features/magic-context/storage-primers.d.ts +96 -0
- package/dist/features/magic-context/storage-primers.d.ts.map +1 -0
- package/dist/features/magic-context/storage-project-state.d.ts +19 -0
- package/dist/features/magic-context/storage-project-state.d.ts.map +1 -0
- package/dist/features/magic-context/storage-reasoning-removal.d.ts +30 -0
- package/dist/features/magic-context/storage-reasoning-removal.d.ts.map +1 -0
- package/dist/features/magic-context/storage-replay-document.d.ts +72 -0
- package/dist/features/magic-context/storage-replay-document.d.ts.map +1 -0
- package/dist/features/magic-context/storage-schema-helpers.d.ts +31 -0
- package/dist/features/magic-context/storage-schema-helpers.d.ts.map +1 -0
- package/dist/features/magic-context/storage-session-tables.d.ts +18 -0
- package/dist/features/magic-context/storage-session-tables.d.ts.map +1 -0
- package/dist/features/magic-context/storage-source.d.ts +5 -0
- package/dist/features/magic-context/storage-source.d.ts.map +1 -0
- package/dist/features/magic-context/storage-subagent-invocations.d.ts +62 -0
- package/dist/features/magic-context/storage-subagent-invocations.d.ts.map +1 -0
- package/dist/features/magic-context/storage-tags.d.ts +542 -0
- package/dist/features/magic-context/storage-tags.d.ts.map +1 -0
- package/dist/features/magic-context/storage-unavailable-reason.d.ts +17 -0
- package/dist/features/magic-context/storage-unavailable-reason.d.ts.map +1 -0
- package/dist/features/magic-context/storage-v22-backfill-failures.d.ts +26 -0
- package/dist/features/magic-context/storage-v22-backfill-failures.d.ts.map +1 -0
- package/dist/features/magic-context/storage.d.ts +23 -0
- package/dist/features/magic-context/storage.d.ts.map +1 -0
- package/dist/features/magic-context/store-generation-rebase.d.ts +188 -0
- package/dist/features/magic-context/store-generation-rebase.d.ts.map +1 -0
- package/dist/features/magic-context/subagent-token-capture.d.ts +35 -0
- package/dist/features/magic-context/subagent-token-capture.d.ts.map +1 -0
- package/dist/features/magic-context/tag-input.d.ts +4 -0
- package/dist/features/magic-context/tag-input.d.ts.map +1 -0
- package/dist/features/magic-context/tagger.d.ts +119 -0
- package/dist/features/magic-context/tagger.d.ts.map +1 -0
- package/dist/features/magic-context/tool-definition-tokens.d.ts +90 -0
- package/dist/features/magic-context/tool-definition-tokens.d.ts.map +1 -0
- package/dist/features/magic-context/tool-owner-backfill.d.ts +93 -0
- package/dist/features/magic-context/tool-owner-backfill.d.ts.map +1 -0
- package/dist/features/magic-context/transform-decision-log.d.ts +110 -0
- package/dist/features/magic-context/transform-decision-log.d.ts.map +1 -0
- package/dist/features/magic-context/types.d.ts +133 -0
- package/dist/features/magic-context/types.d.ts.map +1 -0
- package/dist/features/magic-context/window-report-ledger.d.ts +70 -0
- package/dist/features/magic-context/window-report-ledger.d.ts.map +1 -0
- package/dist/features/magic-context/work-metrics.d.ts +79 -0
- package/dist/features/magic-context/work-metrics.d.ts.map +1 -0
- package/dist/features/magic-context/workspaces.d.ts +28 -0
- package/dist/features/magic-context/workspaces.d.ts.map +1 -0
- package/dist/hooks/auto-update-checker/semver.d.ts +26 -0
- package/dist/hooks/auto-update-checker/semver.d.ts.map +1 -0
- package/dist/hooks/magic-context/apply-operations.d.ts +158 -0
- package/dist/hooks/magic-context/apply-operations.d.ts.map +1 -0
- package/dist/hooks/magic-context/auto-search-deadline.d.ts +10 -0
- package/dist/hooks/magic-context/auto-search-deadline.d.ts.map +1 -0
- package/dist/hooks/magic-context/auto-search-hint.d.ts +36 -0
- package/dist/hooks/magic-context/auto-search-hint.d.ts.map +1 -0
- package/dist/hooks/magic-context/auto-search-runner.d.ts +60 -0
- package/dist/hooks/magic-context/auto-search-runner.d.ts.map +1 -0
- package/dist/hooks/magic-context/cache-busting-signals.d.ts +42 -0
- package/dist/hooks/magic-context/cache-busting-signals.d.ts.map +1 -0
- package/dist/hooks/magic-context/caveman-cleanup.d.ts +98 -0
- package/dist/hooks/magic-context/caveman-cleanup.d.ts.map +1 -0
- package/dist/hooks/magic-context/caveman.d.ts +90 -0
- package/dist/hooks/magic-context/caveman.d.ts.map +1 -0
- package/dist/hooks/magic-context/channel2-cycle.d.ts +16 -0
- package/dist/hooks/magic-context/channel2-cycle.d.ts.map +1 -0
- package/dist/hooks/magic-context/channel2-delivery.d.ts +32 -0
- package/dist/hooks/magic-context/channel2-delivery.d.ts.map +1 -0
- package/dist/hooks/magic-context/child-session-spawn.d.ts +27 -0
- package/dist/hooks/magic-context/child-session-spawn.d.ts.map +1 -0
- package/dist/hooks/magic-context/compaction-marker-manager.d.ts +154 -0
- package/dist/hooks/magic-context/compaction-marker-manager.d.ts.map +1 -0
- package/dist/hooks/magic-context/compaction-off-transition.d.ts +97 -0
- package/dist/hooks/magic-context/compaction-off-transition.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-parser.d.ts +66 -0
- package/dist/hooks/magic-context/compartment-parser.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-prompt.d.ts +33 -0
- package/dist/hooks/magic-context/compartment-prompt.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-render-epoch.d.ts +27 -0
- package/dist/hooks/magic-context/compartment-render-epoch.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-drop-queue.d.ts +29 -0
- package/dist/hooks/magic-context/compartment-runner-drop-queue.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-historian.d.ts +43 -0
- package/dist/hooks/magic-context/compartment-runner-historian.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-incremental.d.ts +31 -0
- package/dist/hooks/magic-context/compartment-runner-incremental.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-mapping.d.ts +25 -0
- package/dist/hooks/magic-context/compartment-runner-mapping.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-partial-recomp.d.ts +29 -0
- package/dist/hooks/magic-context/compartment-runner-partial-recomp.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-recomp.d.ts +11 -0
- package/dist/hooks/magic-context/compartment-runner-recomp.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-types.d.ts +295 -0
- package/dist/hooks/magic-context/compartment-runner-types.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner-validation.d.ts +83 -0
- package/dist/hooks/magic-context/compartment-runner-validation.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-runner.d.ts +59 -0
- package/dist/hooks/magic-context/compartment-runner.d.ts.map +1 -0
- package/dist/hooks/magic-context/compartment-trigger.d.ts +77 -0
- package/dist/hooks/magic-context/compartment-trigger.d.ts.map +1 -0
- package/dist/hooks/magic-context/ctx-reduce-availability.d.ts +170 -0
- package/dist/hooks/magic-context/ctx-reduce-availability.d.ts.map +1 -0
- package/dist/hooks/magic-context/ctx-reduce-nudge.d.ts +104 -0
- package/dist/hooks/magic-context/ctx-reduce-nudge.d.ts.map +1 -0
- package/dist/hooks/magic-context/decay-curve.d.ts +84 -0
- package/dist/hooks/magic-context/decay-curve.d.ts.map +1 -0
- package/dist/hooks/magic-context/decay-render.d.ts +80 -0
- package/dist/hooks/magic-context/decay-render.d.ts.map +1 -0
- package/dist/hooks/magic-context/decision-calibration.d.ts +24 -0
- package/dist/hooks/magic-context/decision-calibration.d.ts.map +1 -0
- package/dist/hooks/magic-context/degraded-pass-refusal.d.ts +35 -0
- package/dist/hooks/magic-context/degraded-pass-refusal.d.ts.map +1 -0
- package/dist/hooks/magic-context/derive-budgets.d.ts +60 -0
- package/dist/hooks/magic-context/derive-budgets.d.ts.map +1 -0
- package/dist/hooks/magic-context/drop-stale-reduce-calls.d.ts +39 -0
- package/dist/hooks/magic-context/drop-stale-reduce-calls.d.ts.map +1 -0
- package/dist/hooks/magic-context/dropped-input-guard.d.ts +55 -0
- package/dist/hooks/magic-context/dropped-input-guard.d.ts.map +1 -0
- package/dist/hooks/magic-context/dropped-token-estimate.d.ts +20 -0
- package/dist/hooks/magic-context/dropped-token-estimate.d.ts.map +1 -0
- package/dist/hooks/magic-context/edit-marker.d.ts +11 -0
- package/dist/hooks/magic-context/edit-marker.d.ts.map +1 -0
- package/dist/hooks/magic-context/emergency-drop.d.ts +112 -0
- package/dist/hooks/magic-context/emergency-drop.d.ts.map +1 -0
- package/dist/hooks/magic-context/emergency-fail-closed.d.ts +14 -0
- package/dist/hooks/magic-context/emergency-fail-closed.d.ts.map +1 -0
- package/dist/hooks/magic-context/empty-task-output.d.ts +16 -0
- package/dist/hooks/magic-context/empty-task-output.d.ts.map +1 -0
- package/dist/hooks/magic-context/event-payloads.d.ts +73 -0
- package/dist/hooks/magic-context/event-payloads.d.ts.map +1 -0
- package/dist/hooks/magic-context/event-resolvers.d.ts +114 -0
- package/dist/hooks/magic-context/event-resolvers.d.ts.map +1 -0
- package/dist/hooks/magic-context/execute-flush.d.ts +3 -0
- package/dist/hooks/magic-context/execute-flush.d.ts.map +1 -0
- package/dist/hooks/magic-context/final-wire-token-estimate.d.ts +56 -0
- package/dist/hooks/magic-context/final-wire-token-estimate.d.ts.map +1 -0
- package/dist/hooks/magic-context/fold-execution-gate.d.ts +2 -0
- package/dist/hooks/magic-context/fold-execution-gate.d.ts.map +1 -0
- package/dist/hooks/magic-context/format-bytes.d.ts +2 -0
- package/dist/hooks/magic-context/format-bytes.d.ts.map +1 -0
- package/dist/hooks/magic-context/heuristic-cleanup.d.ts +48 -0
- package/dist/hooks/magic-context/heuristic-cleanup.d.ts.map +1 -0
- package/dist/hooks/magic-context/historian-no-fire-cause.d.ts +5 -0
- package/dist/hooks/magic-context/historian-no-fire-cause.d.ts.map +1 -0
- package/dist/hooks/magic-context/historian-prompt-fit.d.ts +112 -0
- package/dist/hooks/magic-context/historian-prompt-fit.d.ts.map +1 -0
- package/dist/hooks/magic-context/historian-prompt.generated.d.ts +2 -0
- package/dist/hooks/magic-context/historian-prompt.generated.d.ts.map +1 -0
- package/dist/hooks/magic-context/historian-publish-stage-logger.d.ts +3 -0
- package/dist/hooks/magic-context/historian-publish-stage-logger.d.ts.map +1 -0
- package/dist/hooks/magic-context/historian-state-file.d.ts +43 -0
- package/dist/hooks/magic-context/historian-state-file.d.ts.map +1 -0
- package/dist/hooks/magic-context/history-boundary-repair.d.ts +44 -0
- package/dist/hooks/magic-context/history-boundary-repair.d.ts.map +1 -0
- package/dist/hooks/magic-context/hook-handlers.d.ts +177 -0
- package/dist/hooks/magic-context/hook-handlers.d.ts.map +1 -0
- package/dist/hooks/magic-context/host-served-rows.d.ts +58 -0
- package/dist/hooks/magic-context/host-served-rows.d.ts.map +1 -0
- package/dist/hooks/magic-context/image-token-estimate.d.ts +15 -0
- package/dist/hooks/magic-context/image-token-estimate.d.ts.map +1 -0
- package/dist/hooks/magic-context/inject-compartments.d.ts +389 -0
- package/dist/hooks/magic-context/inject-compartments.d.ts.map +1 -0
- package/dist/hooks/magic-context/issue-135-wire-fixtures.d.ts +8 -0
- package/dist/hooks/magic-context/issue-135-wire-fixtures.d.ts.map +1 -0
- package/dist/hooks/magic-context/issue-423-fixture.d.ts +37 -0
- package/dist/hooks/magic-context/issue-423-fixture.d.ts.map +1 -0
- package/dist/hooks/magic-context/issue-424-fixture.d.ts +11 -0
- package/dist/hooks/magic-context/issue-424-fixture.d.ts.map +1 -0
- package/dist/hooks/magic-context/legacy-compartments.d.ts +20 -0
- package/dist/hooks/magic-context/legacy-compartments.d.ts.map +1 -0
- package/dist/hooks/magic-context/live-session-state.d.ts +68 -0
- package/dist/hooks/magic-context/live-session-state.d.ts.map +1 -0
- package/dist/hooks/magic-context/lkg-persist.d.ts +22 -0
- package/dist/hooks/magic-context/lkg-persist.d.ts.map +1 -0
- package/dist/hooks/magic-context/lkg-replay.d.ts +71 -0
- package/dist/hooks/magic-context/lkg-replay.d.ts.map +1 -0
- package/dist/hooks/magic-context/lkg-slot.d.ts +119 -0
- package/dist/hooks/magic-context/lkg-slot.d.ts.map +1 -0
- package/dist/hooks/magic-context/m0-token-breakdown.d.ts +44 -0
- package/dist/hooks/magic-context/m0-token-breakdown.d.ts.map +1 -0
- package/dist/hooks/magic-context/maintenance-authority.d.ts +2 -0
- package/dist/hooks/magic-context/maintenance-authority.d.ts.map +1 -0
- package/dist/hooks/magic-context/openai-compat-adjacency.d.ts +38 -0
- package/dist/hooks/magic-context/openai-compat-adjacency.d.ts.map +1 -0
- package/dist/hooks/magic-context/opencode-v1-store-fixture.d.ts +12 -0
- package/dist/hooks/magic-context/opencode-v1-store-fixture.d.ts.map +1 -0
- package/dist/hooks/magic-context/pass-outcome.d.ts +70 -0
- package/dist/hooks/magic-context/pass-outcome.d.ts.map +1 -0
- package/dist/hooks/magic-context/persist-filtered-noise.d.ts +5 -0
- package/dist/hooks/magic-context/persist-filtered-noise.d.ts.map +1 -0
- package/dist/hooks/magic-context/postprocess-read-cache.d.ts +8 -0
- package/dist/hooks/magic-context/postprocess-read-cache.d.ts.map +1 -0
- package/dist/hooks/magic-context/producer-window-guard.d.ts +63 -0
- package/dist/hooks/magic-context/producer-window-guard.d.ts.map +1 -0
- package/dist/hooks/magic-context/producer-window-test-support.d.ts +14 -0
- package/dist/hooks/magic-context/producer-window-test-support.d.ts.map +1 -0
- package/dist/hooks/magic-context/protected-tail-boundary.d.ts +234 -0
- package/dist/hooks/magic-context/protected-tail-boundary.d.ts.map +1 -0
- package/dist/hooks/magic-context/raw-fallback-context-limit.d.ts +10 -0
- package/dist/hooks/magic-context/raw-fallback-context-limit.d.ts.map +1 -0
- package/dist/hooks/magic-context/read-session-chunk.d.ts +271 -0
- package/dist/hooks/magic-context/read-session-chunk.d.ts.map +1 -0
- package/dist/hooks/magic-context/read-session-db.d.ts +66 -0
- package/dist/hooks/magic-context/read-session-db.d.ts.map +1 -0
- package/dist/hooks/magic-context/read-session-formatting.d.ts +65 -0
- package/dist/hooks/magic-context/read-session-formatting.d.ts.map +1 -0
- package/dist/hooks/magic-context/read-session-raw.d.ts +164 -0
- package/dist/hooks/magic-context/read-session-raw.d.ts.map +1 -0
- package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts +82 -0
- package/dist/hooks/magic-context/read-session-true-raw-tokens.d.ts.map +1 -0
- package/dist/hooks/magic-context/reasoning-removal.d.ts +60 -0
- package/dist/hooks/magic-context/reasoning-removal.d.ts.map +1 -0
- package/dist/hooks/magic-context/recomp-orchestrator.d.ts +93 -0
- package/dist/hooks/magic-context/recomp-orchestrator.d.ts.map +1 -0
- package/dist/hooks/magic-context/reference-retrieval.d.ts +72 -0
- package/dist/hooks/magic-context/reference-retrieval.d.ts.map +1 -0
- package/dist/hooks/magic-context/reference-seeds.generated.d.ts +8 -0
- package/dist/hooks/magic-context/reference-seeds.generated.d.ts.map +1 -0
- package/dist/hooks/magic-context/send-session-notification.d.ts +43 -0
- package/dist/hooks/magic-context/send-session-notification.d.ts.map +1 -0
- package/dist/hooks/magic-context/sentinel.d.ts +146 -0
- package/dist/hooks/magic-context/sentinel.d.ts.map +1 -0
- package/dist/hooks/magic-context/storage-busy-refusal.d.ts +20 -0
- package/dist/hooks/magic-context/storage-busy-refusal.d.ts.map +1 -0
- package/dist/hooks/magic-context/strip-content.d.ts +216 -0
- package/dist/hooks/magic-context/strip-content.d.ts.map +1 -0
- package/dist/hooks/magic-context/strip-structural-noise.d.ts +15 -0
- package/dist/hooks/magic-context/strip-structural-noise.d.ts.map +1 -0
- package/dist/hooks/magic-context/stripped-command.d.ts +56 -0
- package/dist/hooks/magic-context/stripped-command.d.ts.map +1 -0
- package/dist/hooks/magic-context/supersession-reclaim.d.ts +58 -0
- package/dist/hooks/magic-context/supersession-reclaim.d.ts.map +1 -0
- package/dist/hooks/magic-context/system-injection-stripper.d.ts +2 -0
- package/dist/hooks/magic-context/system-injection-stripper.d.ts.map +1 -0
- package/dist/hooks/magic-context/system-prompt-hash.d.ts +129 -0
- package/dist/hooks/magic-context/system-prompt-hash.d.ts.map +1 -0
- package/dist/hooks/magic-context/tag-content-primitives.d.ts +31 -0
- package/dist/hooks/magic-context/tag-content-primitives.d.ts.map +1 -0
- package/dist/hooks/magic-context/tag-id-fallback.d.ts +11 -0
- package/dist/hooks/magic-context/tag-id-fallback.d.ts.map +1 -0
- package/dist/hooks/magic-context/tag-messages.d.ts +145 -0
- package/dist/hooks/magic-context/tag-messages.d.ts.map +1 -0
- package/dist/hooks/magic-context/tag-part-guards.d.ts +23 -0
- package/dist/hooks/magic-context/tag-part-guards.d.ts.map +1 -0
- package/dist/hooks/magic-context/tail-hygiene-walk.d.ts +178 -0
- package/dist/hooks/magic-context/tail-hygiene-walk.d.ts.map +1 -0
- package/dist/hooks/magic-context/temporal-awareness.d.ts +73 -0
- package/dist/hooks/magic-context/temporal-awareness.d.ts.map +1 -0
- package/dist/hooks/magic-context/text-complete.d.ts +31 -0
- package/dist/hooks/magic-context/text-complete.d.ts.map +1 -0
- package/dist/hooks/magic-context/todo-view.d.ts +127 -0
- package/dist/hooks/magic-context/todo-view.d.ts.map +1 -0
- package/dist/hooks/magic-context/tokenizer-calibration.d.ts +92 -0
- package/dist/hooks/magic-context/tokenizer-calibration.d.ts.map +1 -0
- package/dist/hooks/magic-context/tool-drop-target.d.ts +144 -0
- package/dist/hooks/magic-context/tool-drop-target.d.ts.map +1 -0
- package/dist/hooks/magic-context/tool-input-size.d.ts +21 -0
- package/dist/hooks/magic-context/tool-input-size.d.ts.map +1 -0
- package/dist/hooks/magic-context/tool-reclaim.d.ts +12 -0
- package/dist/hooks/magic-context/tool-reclaim.d.ts.map +1 -0
- package/dist/hooks/magic-context/tool-sweep-policy.d.ts +50 -0
- package/dist/hooks/magic-context/tool-sweep-policy.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform-compartment-phase.d.ts +133 -0
- package/dist/hooks/magic-context/transform-compartment-phase.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform-context-state.d.ts +28 -0
- package/dist/hooks/magic-context/transform-context-state.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform-message-helpers.d.ts +32 -0
- package/dist/hooks/magic-context/transform-message-helpers.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform-operations.d.ts +5 -0
- package/dist/hooks/magic-context/transform-operations.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +350 -0
- package/dist/hooks/magic-context/transform-postprocess-phase.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform-stage-logger.d.ts +2 -0
- package/dist/hooks/magic-context/transform-stage-logger.d.ts.map +1 -0
- package/dist/hooks/magic-context/transform.d.ts +334 -0
- package/dist/hooks/magic-context/transform.d.ts.map +1 -0
- package/dist/hooks/magic-context/unmanaged-over-window.d.ts +36 -0
- package/dist/hooks/magic-context/unmanaged-over-window.d.ts.map +1 -0
- package/dist/hooks/magic-context/unresolved-history-boundary.d.ts +15 -0
- package/dist/hooks/magic-context/unresolved-history-boundary.d.ts.map +1 -0
- package/dist/hooks/magic-context/wrapup-orchestrator.d.ts +14 -0
- package/dist/hooks/magic-context/wrapup-orchestrator.d.ts.map +1 -0
- package/dist/index-1vs6anwz.js +126 -0
- package/dist/index-3wagyrnj.js +670 -0
- package/dist/index-53g38ggt.js +40 -0
- package/dist/index-5pg0acf7.js +410 -0
- package/dist/index-977gxfz0.js +514 -0
- package/dist/index-by6h2pav.js +27883 -0
- package/dist/index-e1q8002h.js +16 -0
- package/dist/index-fg34g6a5.js +584 -0
- package/dist/index-jdxxq8cz.js +99 -0
- package/dist/index-me3zcj5t.js +69 -0
- package/dist/index-qbkzdkk0.js +496 -0
- package/dist/index-wgt4gamw.js +6388 -0
- package/dist/index-zx63j2e2.js +907 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/message-time-backfill-5ewk0axe.js +116 -0
- package/dist/model-resolution-5haaxnpt.js +6 -0
- package/dist/plugin/boot-deadline.d.ts +47 -0
- package/dist/plugin/boot-deadline.d.ts.map +1 -0
- package/dist/plugin/boot-quiet.d.ts +12 -0
- package/dist/plugin/boot-quiet.d.ts.map +1 -0
- package/dist/plugin/normalize-tool-arg-schemas.d.ts +7 -0
- package/dist/plugin/normalize-tool-arg-schemas.d.ts.map +1 -0
- package/dist/plugin/rpc-handlers.d.ts +52 -0
- package/dist/plugin/rpc-handlers.d.ts.map +1 -0
- package/dist/plugin/sidebar-snapshot-cache.d.ts +19 -0
- package/dist/plugin/sidebar-snapshot-cache.d.ts.map +1 -0
- package/dist/plugin/subagent-tool-policy.d.ts +9 -0
- package/dist/plugin/subagent-tool-policy.d.ts.map +1 -0
- package/dist/plugin/types.d.ts +3 -0
- package/dist/plugin/types.d.ts.map +1 -0
- package/dist/prompt-context-ffa5xcfx.js +76 -0
- package/dist/read-session-chunk-apjwrttc.js +56 -0
- package/dist/recomp-orchestrator-gyeevxaw.js +21 -0
- package/dist/rpc-notifications-4amf6mf4.js +14 -0
- package/dist/safe-notification-target-ph3xd1ve.js +9 -0
- package/dist/send-session-notification-y29y9fsr.js +18 -0
- package/dist/shared/announcement.d.ts +69 -0
- package/dist/shared/announcement.d.ts.map +1 -0
- package/dist/shared/assistant-message-extractor.d.ts +13 -0
- package/dist/shared/assistant-message-extractor.d.ts.map +1 -0
- package/dist/shared/auto-update-provenance.d.ts +9 -0
- package/dist/shared/auto-update-provenance.d.ts.map +1 -0
- package/dist/shared/bounded-session-map.d.ts +45 -0
- package/dist/shared/bounded-session-map.d.ts.map +1 -0
- package/dist/shared/builtin-commands.d.ts +24 -0
- package/dist/shared/builtin-commands.d.ts.map +1 -0
- package/dist/shared/cache-ttl-display.d.ts +25 -0
- package/dist/shared/cache-ttl-display.d.ts.map +1 -0
- package/dist/shared/cache-ttl-seed.d.ts +10 -0
- package/dist/shared/cache-ttl-seed.d.ts.map +1 -0
- package/dist/shared/child-session-teardown.d.ts +34 -0
- package/dist/shared/child-session-teardown.d.ts.map +1 -0
- package/dist/shared/commit-detection.d.ts +29 -0
- package/dist/shared/commit-detection.d.ts.map +1 -0
- package/dist/shared/config-diagnostics.d.ts +30 -0
- package/dist/shared/config-diagnostics.d.ts.map +1 -0
- package/dist/shared/conflict-detector.d.ts +139 -0
- package/dist/shared/conflict-detector.d.ts.map +1 -0
- package/dist/shared/conflict-fixer.d.ts +20 -0
- package/dist/shared/conflict-fixer.d.ts.map +1 -0
- package/dist/shared/context-limit-provenance.d.ts +3 -0
- package/dist/shared/context-limit-provenance.d.ts.map +1 -0
- package/dist/shared/data-path.d.ts +176 -0
- package/dist/shared/data-path.d.ts.map +1 -0
- package/dist/shared/error-message.d.ts +32 -0
- package/dist/shared/error-message.d.ts.map +1 -0
- package/dist/shared/escalation-bands.d.ts +9 -0
- package/dist/shared/escalation-bands.d.ts.map +1 -0
- package/dist/shared/format-bytes.d.ts +2 -0
- package/dist/shared/format-bytes.d.ts.map +1 -0
- package/dist/shared/format-threshold.d.ts +43 -0
- package/dist/shared/format-threshold.d.ts.map +1 -0
- package/dist/shared/harness-provider-map.d.ts +64 -0
- package/dist/shared/harness-provider-map.d.ts.map +1 -0
- package/dist/shared/harness.d.ts +55 -0
- package/dist/shared/harness.d.ts.map +1 -0
- package/dist/shared/hidden-variant-warnings.d.ts +5 -0
- package/dist/shared/hidden-variant-warnings.d.ts.map +1 -0
- package/dist/shared/historian-tool-expansions.d.ts +5 -0
- package/dist/shared/historian-tool-expansions.d.ts.map +1 -0
- package/dist/shared/historian-tool-template.d.ts +5 -0
- package/dist/shared/historian-tool-template.d.ts.map +1 -0
- package/dist/shared/historian-transient-error.d.ts +2 -0
- package/dist/shared/historian-transient-error.d.ts.map +1 -0
- package/dist/shared/host-limitations.d.ts +14 -0
- package/dist/shared/host-limitations.d.ts.map +1 -0
- package/dist/shared/index.d.ts +8 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/internal-initiator-marker.d.ts +2 -0
- package/dist/shared/internal-initiator-marker.d.ts.map +1 -0
- package/dist/shared/jsonc-edit.d.ts +23 -0
- package/dist/shared/jsonc-edit.d.ts.map +1 -0
- package/dist/shared/jsonc-parser.d.ts +30 -0
- package/dist/shared/jsonc-parser.d.ts.map +1 -0
- package/dist/shared/keep-subagents.d.ts +7 -0
- package/dist/shared/keep-subagents.d.ts.map +1 -0
- package/dist/shared/logger.d.ts +18 -0
- package/dist/shared/logger.d.ts.map +1 -0
- package/dist/shared/model-cache-ttl.d.ts +9 -0
- package/dist/shared/model-cache-ttl.d.ts.map +1 -0
- package/dist/shared/model-resolution.d.ts +35 -0
- package/dist/shared/model-resolution.d.ts.map +1 -0
- package/dist/shared/model-suggestion-retry.d.ts +138 -0
- package/dist/shared/model-suggestion-retry.d.ts.map +1 -0
- package/dist/shared/models-dev-cache.d.ts +156 -0
- package/dist/shared/models-dev-cache.d.ts.map +1 -0
- package/dist/shared/normalize-sdk-response.d.ts +5 -0
- package/dist/shared/normalize-sdk-response.d.ts.map +1 -0
- package/dist/shared/opencode-config-dir-types.d.ts +14 -0
- package/dist/shared/opencode-config-dir-types.d.ts.map +1 -0
- package/dist/shared/opencode-config-dir.d.ts +57 -0
- package/dist/shared/opencode-config-dir.d.ts.map +1 -0
- package/dist/shared/opencode-db-path.d.ts +68 -0
- package/dist/shared/opencode-db-path.d.ts.map +1 -0
- package/dist/shared/pi-executable.d.ts +6 -0
- package/dist/shared/pi-executable.d.ts.map +1 -0
- package/dist/shared/plugin-package-version.d.ts +14 -0
- package/dist/shared/plugin-package-version.d.ts.map +1 -0
- package/dist/shared/project-directory-key.d.ts +26 -0
- package/dist/shared/project-directory-key.d.ts.map +1 -0
- package/dist/shared/prompt-context.d.ts +31 -0
- package/dist/shared/prompt-context.d.ts.map +1 -0
- package/dist/shared/prompt-surface-a1-golden.d.ts +28 -0
- package/dist/shared/prompt-surface-a1-golden.d.ts.map +1 -0
- package/dist/shared/prompt-surface-runtime.d.ts +62 -0
- package/dist/shared/prompt-surface-runtime.d.ts.map +1 -0
- package/dist/shared/prompt-surface.d.ts +53 -0
- package/dist/shared/prompt-surface.d.ts.map +1 -0
- package/dist/shared/provider-response-completion.d.ts +12 -0
- package/dist/shared/provider-response-completion.d.ts.map +1 -0
- package/dist/shared/record-type-guard.d.ts +2 -0
- package/dist/shared/record-type-guard.d.ts.map +1 -0
- package/dist/shared/redaction.d.ts +7 -0
- package/dist/shared/redaction.d.ts.map +1 -0
- package/dist/shared/resolve-fallbacks.d.ts +48 -0
- package/dist/shared/resolve-fallbacks.d.ts.map +1 -0
- package/dist/shared/rpc-client.d.ts +28 -0
- package/dist/shared/rpc-client.d.ts.map +1 -0
- package/dist/shared/rpc-notifications.d.ts +74 -0
- package/dist/shared/rpc-notifications.d.ts.map +1 -0
- package/dist/shared/rpc-server.d.ts +52 -0
- package/dist/shared/rpc-server.d.ts.map +1 -0
- package/dist/shared/rpc-types.d.ts +385 -0
- package/dist/shared/rpc-types.d.ts.map +1 -0
- package/dist/shared/rpc-utils.d.ts +162 -0
- package/dist/shared/rpc-utils.d.ts.map +1 -0
- package/dist/shared/run-token-log.d.ts +13 -0
- package/dist/shared/run-token-log.d.ts.map +1 -0
- package/dist/shared/safe-notification-target.d.ts +23 -0
- package/dist/shared/safe-notification-target.d.ts.map +1 -0
- package/dist/shared/sqlite-context-pragmas.d.ts +12 -0
- package/dist/shared/sqlite-context-pragmas.d.ts.map +1 -0
- package/dist/shared/sqlite-helpers.d.ts +25 -0
- package/dist/shared/sqlite-helpers.d.ts.map +1 -0
- package/dist/shared/sqlite-write-locker-test-support.d.ts +7 -0
- package/dist/shared/sqlite-write-locker-test-support.d.ts.map +1 -0
- package/dist/shared/sqlite.d.ts +163 -0
- package/dist/shared/sqlite.d.ts.map +1 -0
- package/dist/shared/stable-json.d.ts +21 -0
- package/dist/shared/stable-json.d.ts.map +1 -0
- package/dist/shared/status-detail-text.d.ts +4 -0
- package/dist/shared/status-detail-text.d.ts.map +1 -0
- package/dist/shared/status-summary.d.ts +54 -0
- package/dist/shared/status-summary.d.ts.map +1 -0
- package/dist/shared/status-view-check.d.ts +130 -0
- package/dist/shared/status-view-check.d.ts.map +1 -0
- package/dist/shared/status-view.d.ts +230 -0
- package/dist/shared/status-view.d.ts.map +1 -0
- package/dist/shared/storage-permissions.d.ts +29 -0
- package/dist/shared/storage-permissions.d.ts.map +1 -0
- package/dist/shared/subagent-runner.d.ts +231 -0
- package/dist/shared/subagent-runner.d.ts.map +1 -0
- package/dist/shared/summarize-child-stderr.d.ts +2 -0
- package/dist/shared/summarize-child-stderr.d.ts.map +1 -0
- package/dist/shared/system-directive.d.ts +3 -0
- package/dist/shared/system-directive.d.ts.map +1 -0
- package/dist/shared/tag-owner-id.d.ts +19 -0
- package/dist/shared/tag-owner-id.d.ts.map +1 -0
- package/dist/shared/tag-transcript.d.ts +103 -0
- package/dist/shared/tag-transcript.d.ts.map +1 -0
- package/dist/shared/tail-hygiene-status.d.ts +24 -0
- package/dist/shared/tail-hygiene-status.d.ts.map +1 -0
- package/dist/shared/test-temp-dir.d.ts +46 -0
- package/dist/shared/test-temp-dir.d.ts.map +1 -0
- package/dist/shared/transcript.d.ts +251 -0
- package/dist/shared/transcript.d.ts.map +1 -0
- package/dist/shared/user-answer.d.ts +4 -0
- package/dist/shared/user-answer.d.ts.map +1 -0
- package/dist/shared/user-facing-codes.d.ts +135 -0
- package/dist/shared/user-facing-codes.d.ts.map +1 -0
- package/dist/shared/window-geometry.d.ts +121 -0
- package/dist/shared/window-geometry.d.ts.map +1 -0
- package/dist/shared/write-transaction-timing.d.ts +11 -0
- package/dist/shared/write-transaction-timing.d.ts.map +1 -0
- package/dist/shared/xml-unescape.d.ts +9 -0
- package/dist/shared/xml-unescape.d.ts.map +1 -0
- package/dist/tools/ctx-expand/constants.d.ts +3 -0
- package/dist/tools/ctx-expand/constants.d.ts.map +1 -0
- package/dist/tools/ctx-expand/index.d.ts +2 -0
- package/dist/tools/ctx-expand/index.d.ts.map +1 -0
- package/dist/tools/ctx-expand/mode.d.ts +35 -0
- package/dist/tools/ctx-expand/mode.d.ts.map +1 -0
- package/dist/tools/ctx-expand/render.d.ts +47 -0
- package/dist/tools/ctx-expand/render.d.ts.map +1 -0
- package/dist/tools/ctx-expand/tools.d.ts +10 -0
- package/dist/tools/ctx-expand/tools.d.ts.map +1 -0
- package/dist/tools/ctx-expand/types.d.ts +11 -0
- package/dist/tools/ctx-expand/types.d.ts.map +1 -0
- package/dist/tools/ctx-memory/constants.d.ts +3 -0
- package/dist/tools/ctx-memory/constants.d.ts.map +1 -0
- package/dist/tools/ctx-memory/index.d.ts +4 -0
- package/dist/tools/ctx-memory/index.d.ts.map +1 -0
- package/dist/tools/ctx-memory/tools.d.ts +5 -0
- package/dist/tools/ctx-memory/tools.d.ts.map +1 -0
- package/dist/tools/ctx-memory/types.d.ts +38 -0
- package/dist/tools/ctx-memory/types.d.ts.map +1 -0
- package/dist/tools/ctx-memory/verification-recording.d.ts +8 -0
- package/dist/tools/ctx-memory/verification-recording.d.ts.map +1 -0
- package/dist/tools/ctx-note/constants.d.ts +2 -0
- package/dist/tools/ctx-note/constants.d.ts.map +1 -0
- package/dist/tools/ctx-note/index.d.ts +4 -0
- package/dist/tools/ctx-note/index.d.ts.map +1 -0
- package/dist/tools/ctx-note/render.d.ts +67 -0
- package/dist/tools/ctx-note/render.d.ts.map +1 -0
- package/dist/tools/ctx-note/tools.d.ts +13 -0
- package/dist/tools/ctx-note/tools.d.ts.map +1 -0
- package/dist/tools/ctx-note/types.d.ts +14 -0
- package/dist/tools/ctx-note/types.d.ts.map +1 -0
- package/dist/tools/ctx-reduce/constants.d.ts +4 -0
- package/dist/tools/ctx-reduce/constants.d.ts.map +1 -0
- package/dist/tools/ctx-reduce/index.d.ts +4 -0
- package/dist/tools/ctx-reduce/index.d.ts.map +1 -0
- package/dist/tools/ctx-reduce/tools.d.ts +19 -0
- package/dist/tools/ctx-reduce/tools.d.ts.map +1 -0
- package/dist/tools/ctx-reduce/types.d.ts +5 -0
- package/dist/tools/ctx-reduce/types.d.ts.map +1 -0
- package/dist/tools/ctx-search/constants.d.ts +4 -0
- package/dist/tools/ctx-search/constants.d.ts.map +1 -0
- package/dist/tools/ctx-search/date-range.d.ts +9 -0
- package/dist/tools/ctx-search/date-range.d.ts.map +1 -0
- package/dist/tools/ctx-search/index.d.ts +4 -0
- package/dist/tools/ctx-search/index.d.ts.map +1 -0
- package/dist/tools/ctx-search/tools.d.ts +5 -0
- package/dist/tools/ctx-search/tools.d.ts.map +1 -0
- package/dist/tools/ctx-search/types.d.ts +34 -0
- package/dist/tools/ctx-search/types.d.ts.map +1 -0
- package/dist/tools/light-descriptions.d.ts +6 -0
- package/dist/tools/light-descriptions.d.ts.map +1 -0
- package/dist/tools/parameter-descriptions.d.ts +75 -0
- package/dist/tools/parameter-descriptions.d.ts.map +1 -0
- package/dist/tools/unwrap-imitated-reduced-args.d.ts +21 -0
- package/dist/tools/unwrap-imitated-reduced-args.d.ts.map +1 -0
- package/dist/v2/fold/boundary.d.ts +61 -0
- package/dist/v2/fold/boundary.d.ts.map +1 -0
- package/dist/v2/fold/host-media.d.ts +36 -0
- package/dist/v2/fold/host-media.d.ts.map +1 -0
- package/dist/v2/fold/markers.d.ts +7 -0
- package/dist/v2/fold/markers.d.ts.map +1 -0
- package/dist/v2/fold/owner.d.ts +40 -0
- package/dist/v2/fold/owner.d.ts.map +1 -0
- package/dist/v2/fold/restore.d.ts +31 -0
- package/dist/v2/fold/restore.d.ts.map +1 -0
- package/dist/v2/fork-inheritance.d.ts +101 -0
- package/dist/v2/fork-inheritance.d.ts.map +1 -0
- package/dist/v2/hidden-child-cleanup.d.ts +11 -0
- package/dist/v2/hidden-child-cleanup.d.ts.map +1 -0
- package/dist/v2/hidden-child-native.d.ts +29 -0
- package/dist/v2/hidden-child-native.d.ts.map +1 -0
- package/dist/v2/hidden-child-record.d.ts +137 -0
- package/dist/v2/hidden-child-record.d.ts.map +1 -0
- package/dist/v2/hidden-completion.d.ts +57 -0
- package/dist/v2/hidden-completion.d.ts.map +1 -0
- package/dist/v2/hooks/channel2.d.ts +10 -0
- package/dist/v2/hooks/channel2.d.ts.map +1 -0
- package/dist/v2/hooks/commands.d.ts +29 -0
- package/dist/v2/hooks/commands.d.ts.map +1 -0
- package/dist/v2/hooks/context.d.ts +112 -0
- package/dist/v2/hooks/context.d.ts.map +1 -0
- package/dist/v2/hooks/deleted-session-tombstones.d.ts +10 -0
- package/dist/v2/hooks/deleted-session-tombstones.d.ts.map +1 -0
- package/dist/v2/hooks/generate.d.ts +10 -0
- package/dist/v2/hooks/generate.d.ts.map +1 -0
- package/dist/v2/hooks/hidden-child.d.ts +76 -0
- package/dist/v2/hooks/hidden-child.d.ts.map +1 -0
- package/dist/v2/hooks/hidden-terminal-error.d.ts +8 -0
- package/dist/v2/hooks/hidden-terminal-error.d.ts.map +1 -0
- package/dist/v2/hooks/lkg-system.d.ts +11 -0
- package/dist/v2/hooks/lkg-system.d.ts.map +1 -0
- package/dist/v2/hooks/model-limit-cache.d.ts +19 -0
- package/dist/v2/hooks/model-limit-cache.d.ts.map +1 -0
- package/dist/v2/hooks/payload.d.ts +15 -0
- package/dist/v2/hooks/payload.d.ts.map +1 -0
- package/dist/v2/hooks/refusal.d.ts +15 -0
- package/dist/v2/hooks/refusal.d.ts.map +1 -0
- package/dist/v2/hooks/restore-rows.d.ts +29 -0
- package/dist/v2/hooks/restore-rows.d.ts.map +1 -0
- package/dist/v2/hooks/rpc-live-state.d.ts +9 -0
- package/dist/v2/hooks/rpc-live-state.d.ts.map +1 -0
- package/dist/v2/hooks/session-api-gate.d.ts +4 -0
- package/dist/v2/hooks/session-api-gate.d.ts.map +1 -0
- package/dist/v2/hooks/session-project-backfill.d.ts +15 -0
- package/dist/v2/hooks/session-project-backfill.d.ts.map +1 -0
- package/dist/v2/hooks/storage-gate.d.ts +48 -0
- package/dist/v2/hooks/storage-gate.d.ts.map +1 -0
- package/dist/v2/hooks/storage-notice.d.ts +29 -0
- package/dist/v2/hooks/storage-notice.d.ts.map +1 -0
- package/dist/v2/hooks/store.d.ts +58 -0
- package/dist/v2/hooks/store.d.ts.map +1 -0
- package/dist/v2/hooks/tools.d.ts +8 -0
- package/dist/v2/hooks/tools.d.ts.map +1 -0
- package/dist/v2/hooks/types.d.ts +250 -0
- package/dist/v2/hooks/types.d.ts.map +1 -0
- package/dist/v2/hooks/usage-persist.d.ts +31 -0
- package/dist/v2/hooks/usage-persist.d.ts.map +1 -0
- package/dist/v2/hooks/usage-reading.d.ts +46 -0
- package/dist/v2/hooks/usage-reading.d.ts.map +1 -0
- package/dist/v2/server.d.ts +27 -0
- package/dist/v2/server.d.ts.map +1 -0
- package/dist/v2/server.js +76235 -0
- package/dist/v2/store-reader.d.ts +218 -0
- package/dist/v2/store-reader.d.ts.map +1 -0
- package/dist/web/api.d.ts +40 -0
- package/dist/web/api.d.ts.map +1 -0
- package/dist/web/context-store.d.ts +74 -0
- package/dist/web/context-store.d.ts.map +1 -0
- package/dist/web/fixtures.d.ts +53 -0
- package/dist/web/fixtures.d.ts.map +1 -0
- package/dist/web/host-opencode.d.ts +56 -0
- package/dist/web/host-opencode.d.ts.map +1 -0
- package/dist/web/host-pi.d.ts +116 -0
- package/dist/web/host-pi.d.ts.map +1 -0
- package/dist/web/main.d.ts +24 -0
- package/dist/web/main.d.ts.map +1 -0
- package/dist/web/main.js +6071 -0
- package/dist/web/memories.d.ts +67 -0
- package/dist/web/memories.d.ts.map +1 -0
- package/dist/web/server.d.ts +42 -0
- package/dist/web/server.d.ts.map +1 -0
- package/dist/web/types.d.ts +52 -0
- package/dist/web/types.d.ts.map +1 -0
- package/dist/web/ui/favicon.svg +4 -0
- package/dist/web/ui/index.html +36 -0
- package/dist/web/ui/panel.css +8 -0
- package/dist/web/ui/panel.js +373 -0
- package/dist/web/views.d.ts +155 -0
- package/dist/web/views.d.ts.map +1 -0
- package/dist/web/writes.d.ts +86 -0
- package/dist/web/writes.d.ts.map +1 -0
- package/dist/wrapup-orchestrator-z9sqpqjf.js +420 -0
- package/index.js +1 -0
- package/package.json +84 -4
- package/src/agents/historian.ts +3 -0
- package/src/agents/language-directive.test.ts +129 -0
- package/src/agents/language-directive.ts +113 -0
- package/src/agents/magic-context-prompt.language.test.ts +37 -0
- package/src/agents/magic-context-prompt.test.ts +520 -0
- package/src/agents/magic-context-prompt.ts +196 -0
- package/src/agents/memory-maintainer.test.ts +249 -0
- package/src/agents/memory-maintainer.ts +374 -0
- package/src/config/agent-disable.ts +58 -0
- package/src/config/compaction-accessor-guard.test.ts +81 -0
- package/src/config/compaction-backcompat.test.ts +52 -0
- package/src/config/config-paths.ts +42 -0
- package/src/config/index.test.ts +1252 -0
- package/src/config/index.ts +762 -0
- package/src/config/latch-permanence-guard.test.ts +218 -0
- package/src/config/live-run-config.test.ts +139 -0
- package/src/config/live-run-config.ts +79 -0
- package/src/config/live-schema-drift.test.ts +67 -0
- package/src/config/live-snapshot.test.ts +86 -0
- package/src/config/live-snapshot.ts +187 -0
- package/src/config/migrate-experimental.ts +92 -0
- package/src/config/misplaced-agent-model.test.ts +55 -0
- package/src/config/profiles.ts +106 -0
- package/src/config/project-config-trust-boundary.test.ts +185 -0
- package/src/config/project-security.hostile-matrix.test.ts +281 -0
- package/src/config/project-security.test.ts +329 -0
- package/src/config/project-security.ts +940 -0
- package/src/config/protected-tokens.test.ts +229 -0
- package/src/config/prune-config-leaf.test.ts +78 -0
- package/src/config/prune-config-leaf.ts +67 -0
- package/src/config/raw-loader.test.ts +389 -0
- package/src/config/raw-loader.ts +435 -0
- package/src/config/removed-agent-config.ts +45 -0
- package/src/config/removed-agent-source-fence.test.ts +53 -0
- package/src/config/removed-config-keys.test.ts +106 -0
- package/src/config/schema/agent-overrides.ts +45 -0
- package/src/config/schema/magic-context.test.ts +434 -0
- package/src/config/schema/magic-context.ts +1019 -0
- package/src/config/variable.test.ts +324 -0
- package/src/config/variable.ts +192 -0
- package/src/shared/__fixtures__/window-overlay.v1.json +337 -0
- package/src/shared/announcement.test.ts +198 -0
- package/src/shared/announcement.ts +145 -0
- package/src/shared/assistant-message-extractor.test.ts +47 -0
- package/src/shared/assistant-message-extractor.ts +156 -0
- package/src/shared/auto-update-provenance.ts +42 -0
- package/src/shared/bounded-session-map.test.ts +97 -0
- package/src/shared/bounded-session-map.ts +84 -0
- package/src/shared/builtin-commands.ts +46 -0
- package/src/shared/cache-ttl-display.test.ts +84 -0
- package/src/shared/cache-ttl-display.ts +58 -0
- package/src/shared/cache-ttl-seed.ts +23 -0
- package/src/shared/child-session-teardown.test.ts +241 -0
- package/src/shared/child-session-teardown.ts +66 -0
- package/src/shared/commit-detection.test.ts +63 -0
- package/src/shared/commit-detection.ts +53 -0
- package/src/shared/config-diagnostics.test.ts +29 -0
- package/src/shared/config-diagnostics.ts +64 -0
- package/src/shared/conflict-detector.test.ts +780 -0
- package/src/shared/conflict-detector.ts +596 -0
- package/src/shared/conflict-fixer.test.ts +608 -0
- package/src/shared/conflict-fixer.ts +295 -0
- package/src/shared/context-limit-provenance.ts +6 -0
- package/src/shared/data-path.test.ts +352 -0
- package/src/shared/data-path.ts +310 -0
- package/src/shared/error-message.test.ts +94 -0
- package/src/shared/error-message.ts +115 -0
- package/src/shared/escalation-bands.test.ts +23 -0
- package/src/shared/escalation-bands.ts +18 -0
- package/src/shared/format-bytes.ts +5 -0
- package/src/shared/format-threshold.ts +54 -0
- package/src/shared/harness-provider-map.test.ts +176 -0
- package/src/shared/harness-provider-map.ts +130 -0
- package/src/shared/harness.ts +76 -0
- package/src/shared/hidden-variant-warnings.ts +21 -0
- package/src/shared/historian-tool-defaults.json +13 -0
- package/src/shared/historian-tool-expansions.ts +18 -0
- package/src/shared/historian-tool-template.ts +248 -0
- package/src/shared/historian-transient-error.test.ts +36 -0
- package/src/shared/historian-transient-error.ts +22 -0
- package/src/shared/host-limitations.ts +43 -0
- package/src/shared/index.ts +7 -0
- package/src/shared/internal-initiator-marker.ts +1 -0
- package/src/shared/jsonc-edit.ts +387 -0
- package/src/shared/jsonc-parser.test.ts +46 -0
- package/src/shared/jsonc-parser.ts +283 -0
- package/src/shared/keep-subagents.test.ts +39 -0
- package/src/shared/keep-subagents.ts +28 -0
- package/src/shared/logger.test.ts +292 -0
- package/src/shared/logger.ts +248 -0
- package/src/shared/model-cache-ttl.test.ts +40 -0
- package/src/shared/model-cache-ttl.ts +58 -0
- package/src/shared/model-resolution.test.ts +132 -0
- package/src/shared/model-resolution.ts +158 -0
- package/src/shared/model-suggestion-retry.test.ts +698 -0
- package/src/shared/model-suggestion-retry.ts +838 -0
- package/src/shared/models-dev-cache.test.ts +720 -0
- package/src/shared/models-dev-cache.ts +661 -0
- package/src/shared/normalize-sdk-response.ts +40 -0
- package/src/shared/opencode-config-dir-types.ts +15 -0
- package/src/shared/opencode-config-dir.ts +111 -0
- package/src/shared/opencode-db-path.test.ts +389 -0
- package/src/shared/opencode-db-path.ts +396 -0
- package/src/shared/opencode-host-generation.test.ts +29 -0
- package/src/shared/pi-executable.ts +20 -0
- package/src/shared/plugin-package-version.ts +52 -0
- package/src/shared/project-directory-key.test.ts +111 -0
- package/src/shared/project-directory-key.ts +54 -0
- package/src/shared/prompt-context.ts +135 -0
- package/src/shared/prompt-surface-a1-golden.md +407 -0
- package/src/shared/prompt-surface-a1-golden.ts +41 -0
- package/src/shared/prompt-surface-runtime.test.ts +190 -0
- package/src/shared/prompt-surface-runtime.ts +263 -0
- package/src/shared/prompt-surface.test.ts +195 -0
- package/src/shared/prompt-surface.ts +162 -0
- package/src/shared/provider-response-completion.ts +23 -0
- package/src/shared/record-type-guard.ts +3 -0
- package/src/shared/redaction.test.ts +134 -0
- package/src/shared/redaction.ts +298 -0
- package/src/shared/resolve-fallbacks.test.ts +114 -0
- package/src/shared/resolve-fallbacks.ts +95 -0
- package/src/shared/rpc-async-probes.test.ts +320 -0
- package/src/shared/rpc-client.test.ts +576 -0
- package/src/shared/rpc-client.ts +218 -0
- package/src/shared/rpc-notifications.test.ts +151 -0
- package/src/shared/rpc-notifications.ts +222 -0
- package/src/shared/rpc-server.ts +431 -0
- package/src/shared/rpc-types.ts +386 -0
- package/src/shared/rpc-utils.test.ts +822 -0
- package/src/shared/rpc-utils.ts +1146 -0
- package/src/shared/run-token-log.test.ts +65 -0
- package/src/shared/run-token-log.ts +39 -0
- package/src/shared/safe-notification-target.test.ts +97 -0
- package/src/shared/safe-notification-target.ts +102 -0
- package/src/shared/session-messages-bounded.test.ts +112 -0
- package/src/shared/sqlite-acquisition-fence.test.ts +133 -0
- package/src/shared/sqlite-acquisition-routing.test.ts +145 -0
- package/src/shared/sqlite-bind-style.test.ts +80 -0
- package/src/shared/sqlite-context-pragmas.ts +24 -0
- package/src/shared/sqlite-helpers.ts +44 -0
- package/src/shared/sqlite-import-fence.test.ts +19 -0
- package/src/shared/sqlite-pass-scope.test.ts +154 -0
- package/src/shared/sqlite-transaction-mode-guard.test.ts +234 -0
- package/src/shared/sqlite-write-locker-test-support.ts +63 -0
- package/src/shared/sqlite.test.ts +58 -0
- package/src/shared/sqlite.ts +988 -0
- package/src/shared/stable-json.test.ts +87 -0
- package/src/shared/stable-json.ts +37 -0
- package/src/shared/status-detail-text.test.ts +194 -0
- package/src/shared/status-detail-text.ts +7 -0
- package/src/shared/status-summary.ts +189 -0
- package/src/shared/status-view-check.test.ts +252 -0
- package/src/shared/status-view-check.ts +519 -0
- package/src/shared/status-view.test.ts +395 -0
- package/src/shared/status-view.ts +794 -0
- package/src/shared/storage-busy.test.ts +73 -0
- package/src/shared/storage-permissions.test.ts +190 -0
- package/src/shared/storage-permissions.ts +212 -0
- package/src/shared/subagent-runner.ts +240 -0
- package/src/shared/summarize-child-stderr.test.ts +55 -0
- package/src/shared/summarize-child-stderr.ts +33 -0
- package/src/shared/system-directive.ts +9 -0
- package/src/shared/tag-owner-id.test.ts +33 -0
- package/src/shared/tag-owner-id.ts +29 -0
- package/src/shared/tag-transcript.test.ts +554 -0
- package/src/shared/tag-transcript.ts +1400 -0
- package/src/shared/tail-hygiene-status.ts +73 -0
- package/src/shared/test-temp-dir.test.ts +84 -0
- package/src/shared/test-temp-dir.ts +192 -0
- package/src/shared/transcript.ts +274 -0
- package/src/shared/user-answer.test.ts +12 -0
- package/src/shared/user-answer.ts +17 -0
- package/src/shared/user-facing-codes.test.ts +82 -0
- package/src/shared/user-facing-codes.ts +180 -0
- package/src/shared/window-geometry.test.ts +405 -0
- package/src/shared/window-geometry.ts +726 -0
- package/src/shared/windows-hidden-spawns.test.ts +133 -0
- package/src/shared/write-transaction-attribution.test.ts +214 -0
- package/src/shared/write-transaction-timing.ts +26 -0
- package/src/shared/xml-unescape.ts +19 -0
- package/README.md +0 -3
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import type { PluginContext } from "../../plugin/types";
|
|
2
|
+
/**
|
|
3
|
+
* Whether a given tool is actually CALLABLE in a session's tool set.
|
|
4
|
+
*
|
|
5
|
+
* Magic Context registers tools process-globally, but a parent agent (or the
|
|
6
|
+
* user's OpenCode config) can spawn a session with an explicit allow-list
|
|
7
|
+
* tools map ({"*": false, read: true, ...}) that filters a tool out. For such
|
|
8
|
+
* sessions any surface that urges or replays that tool — mmc_reduce §N§
|
|
9
|
+
* prefixes and nudges, or synthetic todowrite pairs — is pure overhead urging
|
|
10
|
+
* a tool the model cannot call (plus cargo-cult risk with no benefit).
|
|
11
|
+
*
|
|
12
|
+
* CACHE STABILITY: the verdict is resolved ONCE per session per tool from the
|
|
13
|
+
* FIRST user message's tools map and cached for the process lifetime. Per-turn
|
|
14
|
+
* tool maps can differ (mode switches toggle edit tools), and a flapping
|
|
15
|
+
* verdict would oscillate provider-visible bytes — a per-turn HARD bust. The
|
|
16
|
+
* first-message map is fixed at session spawn, so the verdict is deterministic
|
|
17
|
+
* across passes and restarts.
|
|
18
|
+
*
|
|
19
|
+
* OpenCode does not write agent or session permissions into the first user
|
|
20
|
+
* message's tools map, so a session whose agent config (or session permission
|
|
21
|
+
* overlay) denies mmc_reduce would otherwise freeze as "callable". To cover it,
|
|
22
|
+
* whichever hook runs first on a session (the messages transform or the
|
|
23
|
+
* system-prompt hook; OpenCode may run either first) reads those permissions
|
|
24
|
+
* ONCE, before the mmc_reduce verdict first freezes (see
|
|
25
|
+
* primeCtxReduceSpawnPermission). A deny recorded there makes
|
|
26
|
+
* the frozen verdict "unavailable" from the session's first pass, so no
|
|
27
|
+
* provider-visible byte ever flips.
|
|
28
|
+
*
|
|
29
|
+
* After the verdict freezes it never changes again, even when OpenCode's live
|
|
30
|
+
* permission rules later deny the tool. Its value gates guidance and the
|
|
31
|
+
* system-prompt hash; changing it mid-session would invalidate the provider
|
|
32
|
+
* prefix for a permission change that is otherwise not part of the prompt. A
|
|
33
|
+
* mid-session deny is only logged. Todowrite's synthetic pair has a separate
|
|
34
|
+
* live permission check at cache-busting boundaries, so this asymmetry is
|
|
35
|
+
* deliberate and load-bearing.
|
|
36
|
+
*
|
|
37
|
+
* Fail-open: no tools map (normal sessions), no wildcard-deny, no recorded
|
|
38
|
+
* permission deny, or an unreadable OpenCode DB all resolve to "available" —
|
|
39
|
+
* current behavior.
|
|
40
|
+
*/
|
|
41
|
+
/** Availability verdict plus whether it is final for the session's lifetime. */
|
|
42
|
+
export interface ToolAvailabilityVerdict {
|
|
43
|
+
callable: boolean;
|
|
44
|
+
/** True when resolved from the session's first user message (cached).
|
|
45
|
+
* False when the verdict is a provisional fail-open default — consumers
|
|
46
|
+
* that PERSIST state derived from the verdict (e.g. the system-prompt
|
|
47
|
+
* hash) must skip persistence until a frozen verdict exists, or a later
|
|
48
|
+
* final verdict flips the persisted bytes and busts the prompt cache. */
|
|
49
|
+
frozen: boolean;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Set whether `mmc_reduce` is registered process-globally. Called once at
|
|
53
|
+
* plugin boot from the tool registry resolution. When false, every
|
|
54
|
+
* `resolveCtxReduceAvailability*` call returns a frozen `callable: false`
|
|
55
|
+
* verdict without consulting the per-session tools map or the OpenCode DB.
|
|
56
|
+
*/
|
|
57
|
+
export declare function setCtxReduceRegisteredGlobally(registered: boolean): void;
|
|
58
|
+
/** Test-only reset so the availability suite's default-true baseline is
|
|
59
|
+
* unaffected by a prior test that flipped the override. Production code
|
|
60
|
+
* never needs to re-enable mid-process (boot-resolved, process-stable). */
|
|
61
|
+
export declare function resetCtxReduceRegisteredGloballyForTest(): void;
|
|
62
|
+
/** Historical alias. mmc_reduce was the first consumer of this resolver; the
|
|
63
|
+
* verdict shape is identical for every tool, so the name is kept so existing
|
|
64
|
+
* mmc_reduce call sites stay untouched.
|
|
65
|
+
*/
|
|
66
|
+
export type CtxReduceAvailabilityVerdict = ToolAvailabilityVerdict;
|
|
67
|
+
type PermissionAction = "ask" | "allow" | "deny";
|
|
68
|
+
/** The small rule shape used by OpenCode's Permission.disabled evaluator. */
|
|
69
|
+
export interface PermissionRule {
|
|
70
|
+
permission: string;
|
|
71
|
+
pattern: string;
|
|
72
|
+
action: PermissionAction;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Resolve from the in-memory transform message array (preferred — free).
|
|
76
|
+
* Caches the verdict on first resolution.
|
|
77
|
+
*/
|
|
78
|
+
export declare function resolveToolAvailabilityFromMessages(sessionId: string, toolName: string, messages: ReadonlyArray<{
|
|
79
|
+
info?: {
|
|
80
|
+
role?: string;
|
|
81
|
+
tools?: unknown;
|
|
82
|
+
};
|
|
83
|
+
}>): ToolAvailabilityVerdict;
|
|
84
|
+
/**
|
|
85
|
+
* Resolve from the OpenCode DB (paths that may run before the transform has
|
|
86
|
+
* seen any messages — e.g. the system-prompt hook, or tool.execute.after).
|
|
87
|
+
* Falls back to "available" when the DB is absent (Pi-only installs) or the
|
|
88
|
+
* read fails.
|
|
89
|
+
*/
|
|
90
|
+
export declare function resolveToolAvailability(sessionId: string, toolName: string): ToolAvailabilityVerdict;
|
|
91
|
+
/** Drop a cached verdict for one tool of one session (test/reset helper). */
|
|
92
|
+
export declare function clearToolAvailability(sessionId: string, toolName: string): void;
|
|
93
|
+
export declare function resolveCtxReduceAvailabilityFromMessages(sessionId: string, messages: ReadonlyArray<{
|
|
94
|
+
info?: {
|
|
95
|
+
role?: string;
|
|
96
|
+
tools?: unknown;
|
|
97
|
+
};
|
|
98
|
+
}>): CtxReduceAvailabilityVerdict;
|
|
99
|
+
export declare function resolveCtxReduceAvailability(sessionId: string): CtxReduceAvailabilityVerdict;
|
|
100
|
+
export declare function clearCtxReduceAvailability(sessionId: string): void;
|
|
101
|
+
/**
|
|
102
|
+
* Apply OpenCode's Permission.disabled rule: the last matching permission
|
|
103
|
+
* rule wins, and only a deny of the whole permission pattern disables it.
|
|
104
|
+
* Keeping this evaluator pure makes the findLast behavior testable without a
|
|
105
|
+
* live OpenCode server.
|
|
106
|
+
*/
|
|
107
|
+
export declare function permissionDisabled(toolName: string, rules: readonly PermissionRule[]): boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Read OpenCode's merged agent permissions plus the session overlay and apply
|
|
110
|
+
* the same last-rule evaluator OpenCode uses. The SDK declarations in older
|
|
111
|
+
* plugin peer versions do not expose the newer permission fields, so the
|
|
112
|
+
* response is intentionally narrowed at this boundary.
|
|
113
|
+
*/
|
|
114
|
+
export declare function resolveToolPermissionDenied(client: PluginContext["client"], sessionId: string, toolName: string, activeAgent?: string): Promise<boolean>;
|
|
115
|
+
/**
|
|
116
|
+
* Read the agent and session permissions for mmc_reduce ONCE, before the
|
|
117
|
+
* session's mmc_reduce verdict first freezes, so a permission deny makes that
|
|
118
|
+
* first frozen verdict "unavailable" (no §N§ tags, no reduce guidance, no
|
|
119
|
+
* reduce nudges). OpenCode keeps these permissions on the agent config and the
|
|
120
|
+
* session, not in the first user message's tools map, so the tools-map resolver
|
|
121
|
+
* alone cannot see them.
|
|
122
|
+
*
|
|
123
|
+
* Callers must await this before calling a resolveCtxReduceAvailability*
|
|
124
|
+
* function on a pass that may freeze the verdict. Once the verdict is frozen
|
|
125
|
+
* this is a no-op: a later permission change must not flip provider-visible
|
|
126
|
+
* bytes. `spawnAgent` should be the agent named on the session's FIRST user
|
|
127
|
+
* message, so a restart re-reads the same agent even if the user has since
|
|
128
|
+
* switched agents. A failed read records nothing and the verdict fails open to
|
|
129
|
+
* "available", exactly as before permissions were considered.
|
|
130
|
+
*/
|
|
131
|
+
export declare function primeCtxReduceSpawnPermission(client: PluginContext["client"], sessionId: string, spawnAgent?: string): Promise<void>;
|
|
132
|
+
/**
|
|
133
|
+
* Cheap check (no I/O) for whether a pre-freeze permission read would still do
|
|
134
|
+
* anything: false once the verdict froze or a read already recorded a result.
|
|
135
|
+
*/
|
|
136
|
+
export declare function ctxReduceSpawnPermissionReadNeeded(sessionId: string): boolean;
|
|
137
|
+
/** Agent named on the session's first user message (the agent it was spawned with). */
|
|
138
|
+
export declare function spawnAgentFromMessages(messages: ReadonlyArray<{
|
|
139
|
+
info?: {
|
|
140
|
+
role?: string;
|
|
141
|
+
agent?: unknown;
|
|
142
|
+
};
|
|
143
|
+
}>): string | undefined;
|
|
144
|
+
/**
|
|
145
|
+
* Spawn agent read from OpenCode's DB, for callers that run before the
|
|
146
|
+
* messages transform (OpenCode can run the system-prompt hook first).
|
|
147
|
+
* `persisted: false` means the session has no stored user message yet, so no
|
|
148
|
+
* verdict can freeze and no permission read should be recorded. A present
|
|
149
|
+
* message without an agent reports `agent: undefined`.
|
|
150
|
+
*/
|
|
151
|
+
export declare function spawnAgentFromOpenCodeDb(sessionId: string): {
|
|
152
|
+
persisted: boolean;
|
|
153
|
+
agent?: string;
|
|
154
|
+
};
|
|
155
|
+
export declare function todowritePermissionDenied(client: PluginContext["client"], sessionId: string, activeAgent?: string): Promise<boolean>;
|
|
156
|
+
/** Cached live verdict used by defer passes; undefined means no bust has read it yet. */
|
|
157
|
+
export declare function cachedToolPermissionDenied(sessionId: string, toolName: string): boolean | undefined;
|
|
158
|
+
export declare function clearToolPermissionDenied(sessionId: string, toolName?: string): void;
|
|
159
|
+
export declare function hasLoggedCtxReducePermissionDeny(sessionId: string): boolean;
|
|
160
|
+
export declare function markCtxReducePermissionDenyLogged(sessionId: string): void;
|
|
161
|
+
export declare function resolveTodowriteAvailabilityFromMessages(sessionId: string, messages: ReadonlyArray<{
|
|
162
|
+
info?: {
|
|
163
|
+
role?: string;
|
|
164
|
+
tools?: unknown;
|
|
165
|
+
};
|
|
166
|
+
}>): ToolAvailabilityVerdict;
|
|
167
|
+
export declare function resolveTodowriteAvailability(sessionId: string): ToolAvailabilityVerdict;
|
|
168
|
+
export declare function clearTodowriteAvailability(sessionId: string): void;
|
|
169
|
+
export {};
|
|
170
|
+
//# sourceMappingURL=ctx-reduce-availability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ctx-reduce-availability.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/ctx-reduce-availability.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { type TailHygieneBaseline, type TailHygienePartMeasurement } from "./tail-hygiene-walk";
|
|
2
|
+
export type Channel1Level = "gentle" | "firm" | "urgent";
|
|
3
|
+
export interface ToolReclaimHint {
|
|
4
|
+
tagNumber: number;
|
|
5
|
+
toolName: string | null;
|
|
6
|
+
}
|
|
7
|
+
export interface Channel1State extends TailHygieneBaseline {
|
|
8
|
+
usableWindow: number;
|
|
9
|
+
/** Monotonic count of real (not Magic Context-injected) user turns in this pass. */
|
|
10
|
+
realUserTurnCount: number;
|
|
11
|
+
reducedSinceRefresh: boolean;
|
|
12
|
+
/** Do not trigger a reduction nudge on the pass that applied queued agent drops. */
|
|
13
|
+
agentDropsAppliedThisPass?: boolean;
|
|
14
|
+
oldestReclaimableToolTags: ToolReclaimHint[];
|
|
15
|
+
}
|
|
16
|
+
export declare const CHANNEL1_SENTINEL = "<system-reminder>";
|
|
17
|
+
export declare const TOKENS_PER_BYTE = 0.25;
|
|
18
|
+
export declare const CHANNEL1_MIN_TOKENS = 60000;
|
|
19
|
+
export declare const CHANNEL1_FLOOR_TOKENS = 25000;
|
|
20
|
+
export declare const CHANNEL1_REFIRE_FLOOR_TOKENS = 25000;
|
|
21
|
+
export declare const CHANNEL2_SEVERITY_THRESHOLD = 0.75;
|
|
22
|
+
export declare const CHANNEL2_FLOOR_TOKENS = 50000;
|
|
23
|
+
export declare function channel1RefireTokens(tailTokens: number): number;
|
|
24
|
+
export declare function isDroppedToolOutput(output: string): boolean;
|
|
25
|
+
export declare function tailToolTokensFromStrings(outputs: readonly string[]): number;
|
|
26
|
+
export declare function toolOutputTokens(output: string): number;
|
|
27
|
+
export interface TailTokenEstimate {
|
|
28
|
+
tailToolTokens: number;
|
|
29
|
+
liveTailTokens: number;
|
|
30
|
+
}
|
|
31
|
+
export type NudgeBand = "quiet" | "gentle" | "firm" | "urgent" | "channel2";
|
|
32
|
+
export declare function nudgeBand(undroppedTokens: number, tailTokens: number): NudgeBand;
|
|
33
|
+
export type Channel1DampeningState = "none" | "baseline-hold" | "post-reduce-grace" | "band-hysteresis" | "cadence" | "sticky-floor";
|
|
34
|
+
export type Channel1VerdictReason = "baseline-unevaluable" | "recent-reduce-refresh" | "agent-drops-applied" | "post-reduce-baseline-pending" | "post-reduce-compliance-grace" | "tail-below-minimum" | "reclaimable-below-floor" | "ratio-below-gentle" | "band-deescalation" | "cadence-growth" | "sticky-turn-floor" | "band-crossing" | "cadence-refire" | "post-reduce-regrowth-reached" | "post-reduce-band-escalation";
|
|
35
|
+
export interface Channel1Decision {
|
|
36
|
+
fire: boolean;
|
|
37
|
+
/** Re-fires inside an already-observed band always use the calm one-line copy. */
|
|
38
|
+
sticky: boolean;
|
|
39
|
+
level: Channel1Level;
|
|
40
|
+
band: Exclude<NudgeBand, "channel2">;
|
|
41
|
+
undroppedTokens: number;
|
|
42
|
+
tailTokens: number;
|
|
43
|
+
severity: number;
|
|
44
|
+
graceBaselineU: number | null;
|
|
45
|
+
graceGrowth: number;
|
|
46
|
+
growthThreshold: number;
|
|
47
|
+
cadenceGrowth: number;
|
|
48
|
+
stickyTurnsRemaining: number;
|
|
49
|
+
dampeningState: Channel1DampeningState;
|
|
50
|
+
verdictReason: Channel1VerdictReason;
|
|
51
|
+
nextLastNudge: number;
|
|
52
|
+
/** The currently observed band, not merely the last band that emitted copy. */
|
|
53
|
+
nextLastNudgeLevel: Channel1Level | "";
|
|
54
|
+
/** True once post-reduce grace has ended and its durable fields should be cleared. */
|
|
55
|
+
clearPostReduceGrace: boolean;
|
|
56
|
+
}
|
|
57
|
+
export declare function decideChannel1(input: {
|
|
58
|
+
baselineU: number;
|
|
59
|
+
baselineT: number;
|
|
60
|
+
turnDeltaU: number;
|
|
61
|
+
turnDeltaT: number;
|
|
62
|
+
lastNudgeUndropped: number;
|
|
63
|
+
lastNudgeLevel: Channel1Level | "";
|
|
64
|
+
lastFireOrdinal?: number;
|
|
65
|
+
currentRealUserTurnCount?: number;
|
|
66
|
+
hasRecentReduce: boolean;
|
|
67
|
+
agentDropsAppliedThisPass?: boolean;
|
|
68
|
+
postReduceGracePending?: boolean;
|
|
69
|
+
postReduceGraceBaselineU?: number;
|
|
70
|
+
postReduceGracePreLevel?: Channel1Level | "";
|
|
71
|
+
evaluable?: boolean;
|
|
72
|
+
generationInvalidated?: boolean;
|
|
73
|
+
}): Channel1Decision;
|
|
74
|
+
export type Channel2PredicateBaseline = Pick<TailHygieneBaseline, "baselineU" | "baselineT" | "turnDeltaU" | "turnDeltaT" | "evaluable" | "generationInvalidated">;
|
|
75
|
+
export type Channel2VerdictReason = "baseline-unavailable" | "baseline-unevaluable" | "generation-invalidated" | "non-finite-input" | "tail-below-minimum" | "reclaimable-below-floor" | "ratio-below-ceiling" | "ceiling-threshold-met";
|
|
76
|
+
export interface Channel2PredicateEvaluation {
|
|
77
|
+
evaluable: boolean;
|
|
78
|
+
shouldTrigger: boolean;
|
|
79
|
+
reclaimableTokens: number;
|
|
80
|
+
tailTokens: number;
|
|
81
|
+
severity: number;
|
|
82
|
+
band: NudgeBand;
|
|
83
|
+
verdictReason: Channel2VerdictReason;
|
|
84
|
+
}
|
|
85
|
+
export declare function evaluateChannel2(input: Channel2PredicateBaseline | undefined): Channel2PredicateEvaluation;
|
|
86
|
+
export type Channel2LeaseState = "" | "pending" | "claimed" | "delivered";
|
|
87
|
+
export declare function formatChannel1Evaluation(decision: Channel1Decision, ctxReduceCallable?: boolean): string;
|
|
88
|
+
export declare function formatChannel2Evaluation(evaluation: Channel2PredicateEvaluation, input: {
|
|
89
|
+
ctxReduceCallable?: boolean;
|
|
90
|
+
leaseBefore: Channel2LeaseState;
|
|
91
|
+
leaseAfter?: Channel2LeaseState;
|
|
92
|
+
gateHoldReason?: string;
|
|
93
|
+
}): string;
|
|
94
|
+
export declare function reclaimableToolOutputCount(parts: readonly TailHygienePartMeasurement[]): number;
|
|
95
|
+
export declare function buildChannel2Reminder(undroppedTokens: number, reclaimableToolOutputs: number, hint?: readonly ToolReclaimHint[]): string;
|
|
96
|
+
export declare const CHANNEL1_STICKY_REAL_USER_TURN_GAP = 5;
|
|
97
|
+
export declare function shouldUseStickyChannel1Reminder(input: {
|
|
98
|
+
lastLevel: Channel1Level | "";
|
|
99
|
+
lastOrdinal: number;
|
|
100
|
+
level: Channel1Level;
|
|
101
|
+
currentRealUserTurnCount: number;
|
|
102
|
+
}): boolean;
|
|
103
|
+
export declare function buildChannel1Reminder(level: Channel1Level, undroppedTokens: number, reclaimableToolOutputs: number, hint?: readonly ToolReclaimHint[], sticky?: boolean): string;
|
|
104
|
+
//# sourceMappingURL=ctx-reduce-nudge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ctx-reduce-nudge.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/ctx-reduce-nudge.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAClC,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,aAAc,SAAQ,mBAAmB;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oFAAoF;IACpF,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,yBAAyB,EAAE,eAAe,EAAE,CAAC;CAChD;AAED,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AACrD,eAAO,MAAM,eAAe,OAAO,CAAC;AACpC,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAC1C,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAC5C,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAInD,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAChD,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAI5C,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAG/D;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAO3D;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAO5E;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,MAAM,WAAW,iBAAiB;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAa5E,wBAAgB,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,CAQhF;AAED,MAAM,MAAM,sBAAsB,GAC5B,MAAM,GACN,eAAe,GACf,mBAAmB,GACnB,iBAAiB,GACjB,SAAS,GACT,cAAc,CAAC;AAErB,MAAM,MAAM,qBAAqB,GAC3B,sBAAsB,GACtB,uBAAuB,GACvB,qBAAqB,GACrB,8BAA8B,GAC9B,8BAA8B,GAC9B,oBAAoB,GACpB,yBAAyB,GACzB,oBAAoB,GACpB,mBAAmB,GACnB,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,gBAAgB,GAChB,8BAA8B,GAC9B,6BAA6B,CAAC;AAEpC,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,kFAAkF;IAClF,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,aAAa,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,sBAAsB,CAAC;IACvC,aAAa,EAAE,qBAAqB,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,kBAAkB,EAAE,aAAa,GAAG,EAAE,CAAC;IACvC,sFAAsF;IACtF,oBAAoB,EAAE,OAAO,CAAC;CACjC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,aAAa,GAAG,EAAE,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,uBAAuB,CAAC,EAAE,aAAa,GAAG,EAAE,CAAC;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC,GAAG,gBAAgB,CA+HnB;AAED,MAAM,MAAM,yBAAyB,GAAG,IAAI,CACxC,mBAAmB,EACnB,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,GAAG,uBAAuB,CAClG,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC3B,sBAAsB,GACtB,sBAAsB,GACtB,wBAAwB,GACxB,kBAAkB,GAClB,oBAAoB,GACpB,yBAAyB,GACzB,qBAAqB,GACrB,uBAAuB,CAAC;AAE9B,MAAM,WAAW,2BAA2B;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,qBAAqB,CAAC;CACxC;AAED,wBAAgB,gBAAgB,CAC5B,KAAK,EAAE,yBAAyB,GAAG,SAAS,GAC7C,2BAA2B,CAkC7B;AAED,MAAM,MAAM,kBAAkB,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAM1E,wBAAgB,wBAAwB,CACpC,QAAQ,EAAE,gBAAgB,EAC1B,iBAAiB,UAAO,GACzB,MAAM,CAgBR;AAED,wBAAgB,wBAAwB,CACpC,UAAU,EAAE,2BAA2B,EACvC,KAAK,EAAE;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC;IAChC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B,GACF,MAAM,CAiCR;AAeD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,0BAA0B,EAAE,GAAG,MAAM,CAE/F;AAWD,wBAAgB,qBAAqB,CACjC,eAAe,EAAE,MAAM,EACvB,sBAAsB,EAAE,MAAM,EAC9B,IAAI,CAAC,EAAE,SAAS,eAAe,EAAE,GAClC,MAAM,CAQR;AAED,eAAO,MAAM,kCAAkC,IAAI,CAAC;AAEpD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACnD,SAAS,EAAE,aAAa,GAAG,EAAE,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,aAAa,CAAC;IACrB,wBAAwB,EAAE,MAAM,CAAC;CACpC,GAAG,OAAO,CAIV;AAED,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,aAAa,EACpB,eAAe,EAAE,MAAM,EACvB,sBAAsB,EAAE,MAAM,EAC9B,IAAI,CAAC,EAAE,SAAS,eAAe,EAAE,EACjC,MAAM,UAAQ,GACf,MAAM,CAoBR"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deterministic tier-decay curve (v2 cache architecture).
|
|
3
|
+
*
|
|
4
|
+
* Pure functions that select which detail tier renders for each compartment,
|
|
5
|
+
* and which compartments are archived (P5, not rendered). There are TWO
|
|
6
|
+
* rendered detail tiers: P1 (full narrative) and P4 (decayed — anchor-only
|
|
7
|
+
* fragment or one compact sentence). The historical P2/P3 paraphrase windows
|
|
8
|
+
* are fossilized storage layers: the historian no longer emits them, and the
|
|
9
|
+
* curve renders straight from P1 to P4 across the merged former P2–P4 window.
|
|
10
|
+
* This REPLACEs the LLM compressor and the per-compartment `compression_depth`
|
|
11
|
+
* machinery: tier demotion is byte-deterministic at render time, driven by
|
|
12
|
+
* compartment age, historian-emitted importance (semantically a *decay rate*),
|
|
13
|
+
* and live budget pressure.
|
|
14
|
+
*
|
|
15
|
+
* This is a faithful implementation of the council-validated, empirically-
|
|
16
|
+
* grounded model documented in `.alfonso/plans/decay-curve-formula.md`, with
|
|
17
|
+
* the tier ladder collapsed to two detail tiers (boundaries derived from
|
|
18
|
+
* measured v8.3 Flash tier costs). The model's invariants — age/importance
|
|
19
|
+
* monotonicity, finite demotion even at importance 100, append stability,
|
|
20
|
+
* O(H) render cost, and budget self-tuning across model/budget changes — were
|
|
21
|
+
* independently verified there.
|
|
22
|
+
*
|
|
23
|
+
* Anchor overlap (the archive-protection input `o`) is reserved for a future
|
|
24
|
+
* release: anchors are not a reliable first-class storage primitive today (they
|
|
25
|
+
* live inline in P4 text), so callers pass `0` and the archive predicate cleanly
|
|
26
|
+
* reduces to `z >= Z4`. The parameter is kept so the wiring is ready when
|
|
27
|
+
* anchor extraction lands.
|
|
28
|
+
*/
|
|
29
|
+
/** Half-life (in compartments) for importance 50 at pressure 1. */
|
|
30
|
+
export declare const H50 = 24;
|
|
31
|
+
/** Importance points needed to double the half-life (imp 75 → 2×, 100 → 4×). */
|
|
32
|
+
export declare const D = 25;
|
|
33
|
+
/** Max extra half-lives of P4 protection from full anchor overlap. */
|
|
34
|
+
export declare const G = 2;
|
|
35
|
+
export declare const Z1 = 0.201;
|
|
36
|
+
export declare const Z4 = 2.587;
|
|
37
|
+
/** Pressure floor: prevents div-by-zero and caps relaxation at 10×. */
|
|
38
|
+
export declare const P_FLOOR = 0.1;
|
|
39
|
+
/** Per-tier average token cost, indexed by tier number (1..5). Index 0 unused.
|
|
40
|
+
* Indices 2/3 are inert fossils: P2/P3 are storage-only layers now, never
|
|
41
|
+
* selected by `tier()`, and the cost array is kept for byte stability. */
|
|
42
|
+
export declare const TIER_COST: readonly [0, 322, 109, 35, 20, 5];
|
|
43
|
+
export type Tier = 1 | 2 | 3 | 4 | 5;
|
|
44
|
+
/**
|
|
45
|
+
* Which detail tier a compartment renders at, ignoring archive protection.
|
|
46
|
+
* Two-tier model: `z < Z1` renders P1 (full); `Z1 <= z < Z4` renders P4
|
|
47
|
+
* (decayed — the merged former P2–P4 window); `z >= Z4` archives (P5).
|
|
48
|
+
* @param compartmentIndex 1-based position from newest (1 = newest).
|
|
49
|
+
* @param importance 1..100 (historian-emitted decay rate).
|
|
50
|
+
* @param budgetPressure 0.10..∞ (computed once per pass via computeBudgetPressure).
|
|
51
|
+
*/
|
|
52
|
+
export declare function tier(compartmentIndex: number, importance: number, budgetPressure: number): Tier;
|
|
53
|
+
/**
|
|
54
|
+
* Whether a compartment should be archived (P5, not rendered). Anchor overlap
|
|
55
|
+
* extends P4 protection by up to G half-lives; with `o = 0` (v2.0 default) this
|
|
56
|
+
* reduces to `z >= Z4`.
|
|
57
|
+
*/
|
|
58
|
+
export declare function shouldArchive(compartmentIndex: number, importance: number, budgetPressure: number, anchorOverlap?: number): boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Final rendered tier combining base tier + archive protection. Archived
|
|
61
|
+
* compartments return 5; anchor-protected ones render at P4 (anchor-only)
|
|
62
|
+
* instead of P5, preserving the topic until anchor overlap fades.
|
|
63
|
+
*/
|
|
64
|
+
export declare function renderedTier(compartmentIndex: number, importance: number, budgetPressure: number, anchorOverlap?: number): Tier;
|
|
65
|
+
/**
|
|
66
|
+
* Compute budget pressure for a render pass in a single forward pass. Because
|
|
67
|
+
* H ∝ 1/p, the count of compartments in each tier also scales as 1/p, so
|
|
68
|
+
* C(p) ≈ C(1)/p; setting p = C(1)/B gives C(p) ≈ B. Overshoots up to ~30% at
|
|
69
|
+
* very tight budgets (<8K) — use computeBudgetPressureTwoPass there.
|
|
70
|
+
*/
|
|
71
|
+
export declare function computeBudgetPressure(compartments: ReadonlyArray<{
|
|
72
|
+
index: number;
|
|
73
|
+
importance: number;
|
|
74
|
+
}>, historyBudget: number): number;
|
|
75
|
+
/**
|
|
76
|
+
* Two-pass pressure for tight budgets — converges to within ~1% of budget at
|
|
77
|
+
* ~2µs extra cost. Recompute actual cost at the single-pass pressure and, if it
|
|
78
|
+
* still overshoots by >10%, scale pressure proportionally.
|
|
79
|
+
*/
|
|
80
|
+
export declare function computeBudgetPressureTwoPass(compartments: ReadonlyArray<{
|
|
81
|
+
index: number;
|
|
82
|
+
importance: number;
|
|
83
|
+
}>, historyBudget: number): number;
|
|
84
|
+
//# sourceMappingURL=decay-curve.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decay-curve.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/decay-curve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,mEAAmE;AACnE,eAAO,MAAM,GAAG,KAAK,CAAC;AACtB,gFAAgF;AAChF,eAAO,MAAM,CAAC,KAAK,CAAC;AACpB,sEAAsE;AACtE,eAAO,MAAM,CAAC,IAAI,CAAC;AAQnB,eAAO,MAAM,EAAE,QAAQ,CAAC;AACxB,eAAO,MAAM,EAAE,QAAQ,CAAC;AAExB,uEAAuE;AACvE,eAAO,MAAM,OAAO,MAAM,CAAC;AAE3B;;0EAE0E;AAC1E,eAAO,MAAM,SAAS,mCAAoC,CAAC;AAE3D,MAAM,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAErC;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI,CAY/F;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CACzB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,aAAa,SAAI,GAClB,OAAO,CAWT;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CACxB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,aAAa,SAAI,GAClB,IAAI,CAMN;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACjC,YAAY,EAAE,aAAa,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,EAClE,aAAa,EAAE,MAAM,GACtB,MAAM,CAWR;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CACxC,YAAY,EAAE,aAAa,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,EAClE,aAAa,EAAE,MAAM,GACtB,MAAM,CAYR"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared deterministic decay renderer (v2). Used by BOTH OpenCode
|
|
3
|
+
* (inject-compartments.ts) and Pi (inject-compartments-pi.ts) so the two
|
|
4
|
+
* harnesses render compartment history byte-identically from the same validated
|
|
5
|
+
* decay curve. This is the single render-side implementation of the curve in
|
|
6
|
+
* `decay-curve.ts`; neither harness may keep a private/approximate copy.
|
|
7
|
+
*
|
|
8
|
+
* Responsibilities:
|
|
9
|
+
* - Pick a tier per compartment from age + importance + budget pressure
|
|
10
|
+
* (decay-curve.ts), with budget pressure computed ONCE per pass.
|
|
11
|
+
* - Render the chosen detail tier: P1 (full) or P4 (decayed — the merged
|
|
12
|
+
* former P2–P4 window); P5 = archived (omitted). p2/p3 are fossil storage
|
|
13
|
+
* layers: the tierBody fallback chain keeps tolerating them, but the curve
|
|
14
|
+
* never selects them.
|
|
15
|
+
* - Legacy (pre-v2, flat-content) compartments: no paraphrase columns, so the
|
|
16
|
+
* initial tier is P3 when the body has a `U:` line else P4, and the body is
|
|
17
|
+
* truncated `content`.
|
|
18
|
+
* - Demote oldest-first under a hard token budget (the curve already fits the
|
|
19
|
+
* budget, but this guards against estimate drift / very tight budgets).
|
|
20
|
+
*
|
|
21
|
+
* v2 faithful facts: this renderer NEVER emits a <session_facts> block. Facts
|
|
22
|
+
* are promoted to project memory and render via <project-memory>. Callers pass
|
|
23
|
+
* the memory block separately; session facts are not a render input.
|
|
24
|
+
*/
|
|
25
|
+
import { TIER_COST } from "./decay-curve";
|
|
26
|
+
/** Default history budget when a caller doesn't supply one. */
|
|
27
|
+
export declare const DEFAULT_HISTORY_BUDGET_TOKENS = 60000;
|
|
28
|
+
/** Minimal compartment shape the renderer needs (subset of Compartment). */
|
|
29
|
+
export interface DecayRenderCompartment {
|
|
30
|
+
startMessage: number;
|
|
31
|
+
endMessage: number;
|
|
32
|
+
title: string;
|
|
33
|
+
content: string;
|
|
34
|
+
startDate?: string | null;
|
|
35
|
+
endDate?: string | null;
|
|
36
|
+
p1?: string | null;
|
|
37
|
+
p2?: string | null;
|
|
38
|
+
p3?: string | null;
|
|
39
|
+
p4?: string | null;
|
|
40
|
+
importance?: number | null;
|
|
41
|
+
legacy?: number | null;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Render a single compartment at an explicit tier. Exposed for the m[1]
|
|
45
|
+
* "new compartments" block, which always renders newest compartments at P1
|
|
46
|
+
* (full fidelity — no decay applies to brand-new deltas).
|
|
47
|
+
*/
|
|
48
|
+
export declare function renderCompartmentAtTier(c: DecayRenderCompartment, tier: number): string;
|
|
49
|
+
/**
|
|
50
|
+
* Compute the rendered tier for each compartment, given budget pressure derived
|
|
51
|
+
* once from the whole set. `compartments` are in chronological order (oldest
|
|
52
|
+
* first); the decay curve indexes from newest (1 = newest).
|
|
53
|
+
*/
|
|
54
|
+
/** Panel read-only reuse (plan 11 P2c): export the exact per-pass tier picker. */
|
|
55
|
+
export declare function computeTiers(compartments: DecayRenderCompartment[], historyBudgetTokens: number): number[];
|
|
56
|
+
/**
|
|
57
|
+
* Render the decayed compartment history block. Optionally prefixes a memory
|
|
58
|
+
* block. Never renders session facts (v2 faithful). Returns the joined body
|
|
59
|
+
* (no <session-history> wrapper — callers add their own framing).
|
|
60
|
+
*/
|
|
61
|
+
export declare function renderDecayedCompartments(args: {
|
|
62
|
+
compartments: DecayRenderCompartment[];
|
|
63
|
+
/** The caller converts the provider-token history budget to local tokens before rendering. */
|
|
64
|
+
historyBudgetTokens: number;
|
|
65
|
+
}): string;
|
|
66
|
+
/**
|
|
67
|
+
* Extract a top-level m[0] block slice (e.g. "session-history",
|
|
68
|
+
* "project-memory") for budget measurement and token attribution. Returns the
|
|
69
|
+
* full `<tag>…</tag>` slice or null. `tag` must be a literal block name (the
|
|
70
|
+
* caller controls it), so the constructed RegExp is safe.
|
|
71
|
+
*
|
|
72
|
+
* Shared so the materialize tightening loop measures ONLY the session-history
|
|
73
|
+
* slice against the history budget (not the whole m[0], which also carries
|
|
74
|
+
* project-memory — which has its own budget),
|
|
75
|
+
* and so the sidebar/status token attribution reads the same slices both
|
|
76
|
+
* harnesses actually render.
|
|
77
|
+
*/
|
|
78
|
+
export declare function extractM0Block(m0Text: string, tag: string): string | null;
|
|
79
|
+
export { TIER_COST };
|
|
80
|
+
//# sourceMappingURL=decay-render.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decay-render.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/decay-render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,EAAuC,SAAS,EAAa,MAAM,eAAe,CAAC;AAG1F,+DAA+D;AAC/D,eAAO,MAAM,6BAA6B,QAAS,CAAC;AAEpD,4EAA4E;AAC5E,MAAM,WAAW,sBAAsB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAyED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvF;AAsBD;;;;GAIG;AACH,kFAAkF;AAClF,wBAAgB,YAAY,CACxB,YAAY,EAAE,sBAAsB,EAAE,EACtC,mBAAmB,EAAE,MAAM,GAC5B,MAAM,EAAE,CA8BV;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC5C,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACvC,8FAA8F;IAC9F,mBAAmB,EAAE,MAAM,CAAC;CAC/B,GAAG,MAAM,CAyET;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGzE;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type ModelCalibration } from "./tokenizer-calibration";
|
|
2
|
+
/** Immutable static ratios; session usage samples never change this decision policy. */
|
|
3
|
+
export interface DecisionCalibration extends Readonly<ModelCalibration> {
|
|
4
|
+
readonly modelKey: string;
|
|
5
|
+
readonly revision: string;
|
|
6
|
+
readonly matchedPrefix?: string;
|
|
7
|
+
readonly seeded: boolean;
|
|
8
|
+
readonly source: "seed" | "family-fallback" | "model-id";
|
|
9
|
+
}
|
|
10
|
+
export declare function resolveDecisionCalibration(providerId: string | undefined, modelId: string | undefined): DecisionCalibration;
|
|
11
|
+
export interface LocalMass {
|
|
12
|
+
system?: number;
|
|
13
|
+
tools?: number;
|
|
14
|
+
prose?: number;
|
|
15
|
+
}
|
|
16
|
+
/** Accumulate fractional provider mass, then ceil once at the decision boundary. */
|
|
17
|
+
export declare function providerMass(raw: LocalMass, seed: DecisionCalibration, fit?: boolean): number;
|
|
18
|
+
/** Available real-token budgets round down so rendered local mass cannot overspend them. */
|
|
19
|
+
export declare function localBudget(providerTokens: number, ratio: number): number;
|
|
20
|
+
/** Split provider/model at the first slash, retaining any further slashes in the model name. */
|
|
21
|
+
export declare function calibrationForModelKey(modelKey: string | null | undefined): DecisionCalibration;
|
|
22
|
+
/** Convert at history materialization, not in cache markers: calibration must not trigger a fold. */
|
|
23
|
+
export declare function historyLocalBudget(providerTokens: number, modelKey: string | null | undefined): number;
|
|
24
|
+
//# sourceMappingURL=decision-calibration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decision-calibration.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/decision-calibration.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,gBAAgB,EAGxB,MAAM,yBAAyB,CAAC;AAEjC,wFAAwF;AACxF,MAAM,WAAW,mBAAoB,SAAQ,QAAQ,CAAC,gBAAgB,CAAC;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,UAAU,CAAC;CAC5D;AAED,wBAAgB,0BAA0B,CACtC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,GAC5B,mBAAmB,CAerB;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,UAAQ,GAAG,MAAM,CAe3F;AAED,4FAA4F;AAC5F,wBAAgB,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CASzE;AAED,gGAAgG;AAChG,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,mBAAmB,CAK/F;AAED,qGAAqG;AACrG,wBAAgB,kBAAkB,CAC9B,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACpC,MAAM,CAIR"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A transform pass failed at a stage whose output the request depends on: the
|
|
3
|
+
* session's saved drops, truncations or history cut could not be applied, or
|
|
4
|
+
* the pass would have returned the host's raw messages. Serving that pass can
|
|
5
|
+
* send a request several times larger than the previous one, so the pass stops
|
|
6
|
+
* instead. The messages wrapper replays the last good request when it can and
|
|
7
|
+
* otherwise refuses the turn with this message.
|
|
8
|
+
*/
|
|
9
|
+
export declare class DegradedPassRefusalError extends Error {
|
|
10
|
+
/** The stage that failed, by the name the pass records for it (e.g. "tagging-persistence-failure"). */
|
|
11
|
+
readonly site: string;
|
|
12
|
+
readonly code = "DEGRADED_PASS_REFUSAL";
|
|
13
|
+
readonly recoverable = true;
|
|
14
|
+
readonly estimatedTokens: number | undefined;
|
|
15
|
+
readonly contextLimitTokens: number | undefined;
|
|
16
|
+
constructor(
|
|
17
|
+
/** The stage that failed, by the name the pass records for it (e.g. "tagging-persistence-failure"). */
|
|
18
|
+
site: string, options?: {
|
|
19
|
+
cause?: unknown;
|
|
20
|
+
/** Set when the refusal comes from the served-request size guard. */
|
|
21
|
+
estimatedTokens?: number;
|
|
22
|
+
contextLimitTokens?: number;
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The error a pass throws when a stage it cannot serve without has failed.
|
|
27
|
+
*
|
|
28
|
+
* A SQLite busy or locked error is rethrown unchanged: the messages wrapper
|
|
29
|
+
* already owns that case (replay the last good request, otherwise the
|
|
30
|
+
* storage-busy refusal and its host notice). Any other error becomes a
|
|
31
|
+
* {@link DegradedPassRefusalError}, which the wrapper treats the same way
|
|
32
|
+
* except for the message shown to the user.
|
|
33
|
+
*/
|
|
34
|
+
export declare function degradedPassError(site: string, error: unknown): Error;
|
|
35
|
+
//# sourceMappingURL=degraded-pass-refusal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"degraded-pass-refusal.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/degraded-pass-refusal.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IAO3C,uGAAuG;IACvG,QAAQ,CAAC,IAAI,EAAE,MAAM;IAPzB,QAAQ,CAAC,IAAI,2BAA2B;IACxC,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;;IAG5C,uGAAuG;IAC9F,IAAI,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QACN,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,qEAAqE;QACrE,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC/B;CASR;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,KAAK,CAKrE"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Budget derivation
|
|
3
|
+
*
|
|
4
|
+
* Two scaling bases, two clamps. Replaces the old static
|
|
5
|
+
* `compartment_token_budget` setting which tried to serve both roles
|
|
6
|
+
* and scaled with neither model.
|
|
7
|
+
*
|
|
8
|
+
* - triggerBudget: scales with (main model × executeThreshold).
|
|
9
|
+
* Drives size-based historian triggers (`tail_size`, `commit_clusters`).
|
|
10
|
+
* "How big can the uncompartmentalized tail get before we force
|
|
11
|
+
* historian to run." This is anchored to the MAIN model's usable
|
|
12
|
+
* working space, not its total context.
|
|
13
|
+
*
|
|
14
|
+
* - historianChunkTokens: scales with the HISTORIAN model's context.
|
|
15
|
+
* The raw-history window historian processes per call. Different
|
|
16
|
+
* scaling basis because historian is a single-shot summarizer bound
|
|
17
|
+
* by its own context, not the main session's pressure math.
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* Budget basis for size-based historian triggers (tail_size, commit_clusters).
|
|
21
|
+
* Anchored to the MAIN model's usable working space, not its total context.
|
|
22
|
+
*
|
|
23
|
+
* @param mainContextLimit Main session model's context window (tokens).
|
|
24
|
+
* @param executeThresholdPercentage The effective execute threshold (0-100).
|
|
25
|
+
*/
|
|
26
|
+
export declare function deriveTriggerBudget(mainContextLimit: number, executeThresholdPercentage: number): number;
|
|
27
|
+
/**
|
|
28
|
+
* Raw-history chunk budget for historian's own context window.
|
|
29
|
+
* Historian formats tool calls as compact `TC:` summaries and drops tool results,
|
|
30
|
+
* so a 50K-token chunk typically represents far more raw messages than its token
|
|
31
|
+
* count implies. The max is tuned around that compression.
|
|
32
|
+
*
|
|
33
|
+
* @param historianContextLimit Historian model's context window (tokens).
|
|
34
|
+
*/
|
|
35
|
+
export declare function deriveHistorianChunkTokens(historianContextLimit: number): number;
|
|
36
|
+
/**
|
|
37
|
+
* Resolve the historian model's context limit for chunk budget sizing.
|
|
38
|
+
*
|
|
39
|
+
* Behavior:
|
|
40
|
+
* - If `historianModelOverride` is a full `provider/model-id` → use that model's
|
|
41
|
+
* context directly. This honors explicit user intent.
|
|
42
|
+
* - If the override is set but lacks `/` (e.g. `"llama3-32k"`) → warn and use
|
|
43
|
+
* the conservative default, since we can't look up a model without a
|
|
44
|
+
* provider and silently guessing would produce an incorrect chunk size.
|
|
45
|
+
* - If no override (or the model is unknown to models.dev / opencode.json
|
|
46
|
+
* custom providers) → 128K conservative default.
|
|
47
|
+
*
|
|
48
|
+
* Context limits are resolved through `getSdkContextLimit`, which reads
|
|
49
|
+
* OpenCode's SDK-resolved provider config (models.dev + snapshot + opencode.json
|
|
50
|
+
* overrides + auth-plugin caps), bounded to a sane range.
|
|
51
|
+
*/
|
|
52
|
+
export declare function resolveKnownHistorianContextLimit(historianModelOverride?: string): number | undefined;
|
|
53
|
+
export declare function resolveHistorianProducerLimits(modelKey?: string): {
|
|
54
|
+
context?: number;
|
|
55
|
+
input?: number;
|
|
56
|
+
};
|
|
57
|
+
export declare function resolveHistorianContextLimit(historianModelOverride?: string): number;
|
|
58
|
+
/** Formatted historian source mixes prose and compact tool records, so use the larger class seed. */
|
|
59
|
+
export declare function producerSourceLocalBudget(providerTokens: number, modelKey: string | undefined): number;
|
|
60
|
+
//# sourceMappingURL=derive-budgets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-budgets.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/derive-budgets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAwBH;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAC/B,gBAAgB,EAAE,MAAM,EACxB,0BAA0B,EAAE,MAAM,GACnC,MAAM,CAYR;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM,CAMhF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iCAAiC,CAC7C,sBAAsB,CAAC,EAAE,MAAM,GAChC,MAAM,GAAG,SAAS,CASpB;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAeA;AAED,wBAAgB,4BAA4B,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,CAkBpF;AAED,qGAAqG;AACrG,wBAAgB,yBAAyB,CACrC,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC7B,MAAM,CAIR"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { MessageLike } from "./tag-messages";
|
|
2
|
+
export declare function isReduceToolPart(part: unknown): boolean;
|
|
3
|
+
export interface StaleReduceStripResult {
|
|
4
|
+
/** True if any mmc_reduce part was sentinelized this pass. */
|
|
5
|
+
didDrop: boolean;
|
|
6
|
+
/** Message ids newly detected as aged this pass (only when detect=true). */
|
|
7
|
+
newlyStrippedIds: string[];
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Sentinel-strip aged `mmc_reduce` tool parts using a FROZEN replay watermark.
|
|
11
|
+
*
|
|
12
|
+
* The cache-stability contract: a defer pass must replay byte-identical to the
|
|
13
|
+
* prior pass. An earlier version recomputed eligibility from the live
|
|
14
|
+
* `messages.length - protectedCount` boundary on every pass — but that boundary
|
|
15
|
+
* MOVES as the conversation grows, so a defer pass with tail growth would newly
|
|
16
|
+
* strip an older mmc_reduce call mid-prefix (for Anthropic the empty sentinel is
|
|
17
|
+
* filtered before the wire and the dropped tool_result lets the SDK merge
|
|
18
|
+
* adjacent assistants → the message vanishes + the array shifts → the cached
|
|
19
|
+
* prefix busts). That is exactly the bug this design removes.
|
|
20
|
+
*
|
|
21
|
+
* Instead, eligibility is an id-keyed frozen set:
|
|
22
|
+
* - REPLAY (every pass): strip mmc_reduce parts in any message whose `info.id`
|
|
23
|
+
* is in `frozenIds`. Growth-invariant and compaction-safe (a missing id is a
|
|
24
|
+
* no-op). This is what makes defer passes byte-identical.
|
|
25
|
+
* - DETECT (cache-busting passes only, `detect=true`): additionally scan the
|
|
26
|
+
* pre-protected region for mmc_reduce calls not yet frozen, strip them, and
|
|
27
|
+
* return their ids in `newlyStrippedIds` so the caller can advance the
|
|
28
|
+
* persisted watermark. Detection happens only on passes where the wire is
|
|
29
|
+
* already allowed to change, so it never busts a defer pass.
|
|
30
|
+
*
|
|
31
|
+
* Messages without a stable `info.id` are never newly detected (they cannot be
|
|
32
|
+
* frozen for deterministic replay), so they are left intact rather than stripped
|
|
33
|
+
* inconsistently.
|
|
34
|
+
*/
|
|
35
|
+
export declare function dropStaleReduceCalls(messages: MessageLike[], frozenIds: Set<string>, options?: {
|
|
36
|
+
detect?: boolean;
|
|
37
|
+
protectedCount?: number;
|
|
38
|
+
}): StaleReduceStripResult;
|
|
39
|
+
//# sourceMappingURL=drop-stale-reduce-calls.d.ts.map
|