dsh-context-compression-improved 0.3.0 → 0.4.0-beta.1
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/.githooks/pre-push +37 -0
- package/package.json +3 -2
- package/packages/selector/cordis.patch.yml +12 -5
- package/packages/selector/lib/client.d.ts +24 -0
- package/packages/selector/lib/client.js +506 -5
- package/packages/selector/lib/config.js +27 -4
- package/packages/selector/lib/index.d.ts +7 -0
- package/packages/selector/lib/index.js +229 -1
- package/packages/selector/lib/pruner.d.ts +254 -0
- package/packages/selector/lib/pruner.js +714 -25
- package/packages/selector/package.json +0 -1
- package/packages/selector/src/client/EstimatorControls.tsx +101 -0
- package/packages/selector/src/client/ReviewOverlay.tsx +320 -0
- package/packages/selector/src/client/index.ts +17 -0
- package/packages/selector/src/client/locales.ts +38 -0
- package/packages/selector/src/client/preset-options.ts +1 -0
- package/packages/selector/src/client/review-scope.ts +16 -0
- package/packages/selector/src/client/settings-section.tsx +17 -8
- package/packages/selector/src/index.ts +308 -0
- package/packages/selector/src/profiles.ts +28 -1
- package/packages/selector/src/pruner/state.ts +27 -0
- package/packages/selector/src/pruner.ts +430 -10
- package/packages/selector/src/runtime/audit.ts +27 -0
- package/packages/selector/src/runtime/config.ts +33 -1
- package/packages/selector/src/runtime/tokenpilot/estimator.ts +60 -13
- package/packages/selector/src/runtime/tokenpilot/proposal.ts +223 -0
- package/packages/selector/src/runtime/tokenpilot/review-queue.ts +231 -0
- package/packages/selector/src/runtime/tokenpilot/review-storage.ts +122 -0
- package/packages/selector/src/runtime/types.ts +17 -0
- package/packages/selector/tests/code-skeleton.client.spec.ts +3 -2
- package/packages/selector/tests/custom-contract.client.spec.ts +3 -2
- package/packages/selector/tests/preset-options-write.client.spec.ts +34 -1
- package/packages/selector/tests/review-overlay.client.spec.tsx +118 -0
- package/packages/selector/tests/review-routes.host.spec.ts +290 -0
- package/packages/selector/tests/runtime/audit.spec.ts +44 -0
- package/packages/selector/tests/runtime/tokenpilot/estimator.spec.ts +23 -0
- package/packages/selector/tests/runtime/tokenpilot/profile-baseline.spec.ts +5 -0
- package/packages/selector/tests/runtime/tokenpilot/proposal.spec.ts +199 -0
- package/packages/selector/tests/runtime/tokenpilot/pruner-review.spec.ts +313 -0
- package/packages/selector/tests/runtime/tokenpilot/review-queue.spec.ts +168 -0
- package/packages/selector/tests/settings-seat.client.spec.ts +5 -4
|
@@ -37,7 +37,7 @@ function collectRegistrations(): { declared: string[]; registrations: CapturedRe
|
|
|
37
37
|
inject: (slot: string, factory: () => (() => void) | Generator<() => void>) => {
|
|
38
38
|
declared.push(slot)
|
|
39
39
|
const result = factory()
|
|
40
|
-
const steps: Iterable<() => void> = typeof (result as
|
|
40
|
+
const steps: Iterable<() => void> = typeof (result as { [Symbol.iterator]?: unknown })?.[Symbol.iterator] === 'function'
|
|
41
41
|
? (result as Generator<() => void>)
|
|
42
42
|
: [result as () => void]
|
|
43
43
|
for (const step of steps) { void step }
|
|
@@ -58,11 +58,12 @@ describe('settings-seat contract (standalone settings.section only)', () => {
|
|
|
58
58
|
expect(inject).toEqual(['slots', 'locale', 'settingsScope'])
|
|
59
59
|
})
|
|
60
60
|
|
|
61
|
-
it('injects exactly the settings.section seat
|
|
61
|
+
it('injects exactly the settings.section seat plus the shell.overlay float', () => {
|
|
62
62
|
const { declared, registrations } = collectRegistrations()
|
|
63
|
-
expect(declared).toEqual(['settings.section'])
|
|
64
|
-
expect(registrations).toHaveLength(
|
|
63
|
+
expect(declared).toEqual(['settings.section', 'shell.overlay'])
|
|
64
|
+
expect(registrations).toHaveLength(2)
|
|
65
65
|
expect(registrations[0]!.slot).toBe('settings.section')
|
|
66
|
+
expect(registrations[1]!.slot).toBe('shell.overlay')
|
|
66
67
|
})
|
|
67
68
|
|
|
68
69
|
it('pins the section identity (id/order/label/locale) and the panel component', () => {
|