dsh-kingdom 3.1.0 → 3.2.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/README.md +252 -244
- package/docs/DISPATCH-IDENTITY-PROBE.md +79 -0
- package/docs/DSH-KINGDOM-3.0-ANNOUNCEMENT.md +13 -13
- package/docs/V3.0-RELEASE-NOTES.md +21 -21
- package/docs/V3.0-USER-GUIDE.md +33 -33
- package/docs/V3.1-RELEASE-NOTES.md +76 -72
- package/docs/V3.2-RELEASE-NOTES.md +108 -0
- package/docs/V3.2.1-RELEASE-NOTES.md +39 -0
- package/lib/adapter/dsh-backend.js +189 -11
- package/lib/adapter/dsh-backend.js.map +1 -1
- package/lib/adapter/dsh-session-events.js +51 -7
- package/lib/adapter/dsh-session-events.js.map +1 -1
- package/lib/core/binding.js +166 -61
- package/lib/core/binding.js.map +1 -1
- package/lib/core/db.js +593 -546
- package/lib/core/db.js.map +1 -1
- package/lib/core/governed.js +20 -6
- package/lib/core/governed.js.map +1 -1
- package/lib/core/owner-binding-intent.js +14 -25
- package/lib/core/owner-binding-intent.js.map +1 -1
- package/lib/core/owner-window.js +106 -12
- package/lib/core/owner-window.js.map +1 -1
- package/lib/core/task-service.js +4 -1
- package/lib/core/task-service.js.map +1 -1
- package/lib/core/territory.js +43 -9
- package/lib/core/territory.js.map +1 -1
- package/lib/core/usage.js +10 -6
- package/lib/core/usage.js.map +1 -1
- package/lib/core/workspace-admission.js +31 -7
- package/lib/core/workspace-admission.js.map +1 -1
- package/lib/dispatch/service.js +141 -7
- package/lib/dispatch/service.js.map +1 -1
- package/lib/gui/contract.js.map +1 -1
- package/lib/gui/control-contract.js +3 -2
- package/lib/gui/control-contract.js.map +1 -1
- package/lib/gui/owner-ui.js +43 -2
- package/lib/gui/owner-ui.js.map +1 -1
- package/lib/gui/workbench-ui.js +15 -3
- package/lib/gui/workbench-ui.js.map +1 -1
- package/lib/gui/workbench.js +10 -0
- package/lib/gui/workbench.js.map +1 -1
- package/lib/index.js +78 -20
- package/lib/index.js.map +1 -1
- package/lib/types/adapter/contract.d.ts +20 -0
- package/lib/types/adapter/dsh-backend.d.ts +5 -1
- package/lib/types/adapter/dsh-session-events.d.ts +10 -1
- package/lib/types/core/binding.d.ts +14 -0
- package/lib/types/core/db.d.ts +16 -0
- package/lib/types/core/governed.d.ts +5 -0
- package/lib/types/core/owner-binding-intent.d.ts +9 -1
- package/lib/types/core/owner-window.d.ts +2 -1
- package/lib/types/core/territory.d.ts +18 -3
- package/lib/types/core/workspace-admission.d.ts +13 -1
- package/lib/types/dispatch/service.d.ts +18 -14
- package/lib/types/gui/contract.d.ts +9 -0
- package/lib/types/index.d.ts +11 -1
- package/lib/worker/governed-executor.js +18 -0
- package/lib/worker/governed-executor.js.map +1 -1
- package/package.json +84 -79
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
import { randomUUID } from 'node:crypto';
|
|
15
15
|
import { cleanupDshEnforcement, materializeDshEnforcement, readEnforceableSet, } from '../capability/dsh-enforcement.js';
|
|
16
16
|
import { terminalOutcomeOf } from '../dispatch/evidence.js';
|
|
17
|
-
import { locateDshDispatchRef, readDshSessionEvents } from './dsh-session-events.js';
|
|
17
|
+
import { DSH_RECONCILE_EVENT_LIMIT, locateDshDispatchRef, readBoundedDshSessionEvents, readDshSessionEvents, } from './dsh-session-events.js';
|
|
18
18
|
/** Deliberately not exported: only this backend can issue a fence token. */
|
|
19
19
|
class DshTrustFenceToken {
|
|
20
20
|
// Runtime identity is checked through an Adapter-instance-private WeakMap;
|
|
@@ -48,6 +48,28 @@ function boundedFenceReason(value) {
|
|
|
48
48
|
function fenceResult(ok, status, reservation, generation, reason) {
|
|
49
49
|
return { ok, status, reservation, generation, reason: boundedFenceReason(reason) };
|
|
50
50
|
}
|
|
51
|
+
const DEFAULT_DSH_IO_TIMEOUT_MS = 5000;
|
|
52
|
+
/** Timeout never cancels/resends a Runtime operation; its outcome stays uncertain. */
|
|
53
|
+
async function boundedWait(operation, milliseconds, code) {
|
|
54
|
+
let timer;
|
|
55
|
+
try {
|
|
56
|
+
return await Promise.race([
|
|
57
|
+
operation,
|
|
58
|
+
new Promise((_resolve, reject) => { timer = setTimeout(() => reject(new Error(code)), milliseconds); }),
|
|
59
|
+
]);
|
|
60
|
+
}
|
|
61
|
+
finally {
|
|
62
|
+
if (timer !== undefined)
|
|
63
|
+
clearTimeout(timer);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
function freezeUserMessage(text) {
|
|
67
|
+
const message = buildUserMessage(text);
|
|
68
|
+
Object.freeze(message.content[0]);
|
|
69
|
+
Object.freeze(message.content);
|
|
70
|
+
Object.freeze(message.source);
|
|
71
|
+
return Object.freeze(message);
|
|
72
|
+
}
|
|
51
73
|
function asAgents(value) {
|
|
52
74
|
return value;
|
|
53
75
|
}
|
|
@@ -120,6 +142,8 @@ export class DshRuntimeAdapter {
|
|
|
120
142
|
runtimeType = 'dsh';
|
|
121
143
|
/** Fence tokens are accepted only by the exact Adapter instance that issued them. */
|
|
122
144
|
trustFenceStates = new WeakMap();
|
|
145
|
+
/** The exposed ref cannot replace the original single-use preparation token. */
|
|
146
|
+
preparedDispatches = new WeakMap();
|
|
123
147
|
deps;
|
|
124
148
|
constructor(deps) {
|
|
125
149
|
this.deps = {
|
|
@@ -128,6 +152,10 @@ export class DshRuntimeAdapter {
|
|
|
128
152
|
model: deps.model ?? null,
|
|
129
153
|
agents: asAgents(deps.agents),
|
|
130
154
|
sessionPersistence: asPersistence(deps.sessionPersistence),
|
|
155
|
+
sessions: deps.sessions,
|
|
156
|
+
dispatchFlushTimeoutMs: Number.isFinite(deps.dispatchFlushTimeoutMs) && (deps.dispatchFlushTimeoutMs ?? 0) > 0
|
|
157
|
+
? Math.min(deps.dispatchFlushTimeoutMs, DEFAULT_DSH_IO_TIMEOUT_MS)
|
|
158
|
+
: DEFAULT_DSH_IO_TIMEOUT_MS,
|
|
131
159
|
presets: asPresets(deps.presets),
|
|
132
160
|
policy: {
|
|
133
161
|
toolDisclosure: deps.toolDisclosure,
|
|
@@ -535,12 +563,80 @@ export class DshRuntimeAdapter {
|
|
|
535
563
|
return materializeDshEnforcement(this.deps.policy, ctx, request);
|
|
536
564
|
}
|
|
537
565
|
// ── Dispatch / Evidence / Reconcile ────────────────────────────────────────
|
|
566
|
+
async prepareDispatch(input) {
|
|
567
|
+
if (!input.kingdomDispatchId.trim() || !input.sessionRef.trim())
|
|
568
|
+
throw new Error('dsh prepare: DISPATCH_IDENTITY_REQUIRED');
|
|
569
|
+
const agent = this.deps.agents.get(input.sessionRef);
|
|
570
|
+
if (!agent || agent.id !== input.sessionRef)
|
|
571
|
+
throw new Error('dsh prepare: EXACT_LIVE_SESSION_REQUIRED');
|
|
572
|
+
const message = freezeUserMessage(input.text);
|
|
573
|
+
const baseline = readDshSessionEvents(agent.session);
|
|
574
|
+
if (baseline === null)
|
|
575
|
+
throw new Error('dsh prepare: BASELINE_UNREADABLE');
|
|
576
|
+
if (locateDshDispatchRef(baseline, message.id) >= 0)
|
|
577
|
+
throw new Error('dsh prepare: RUNTIME_REF_ALREADY_PRESENT');
|
|
578
|
+
const token = Object.freeze({ runtimeDispatchRef: message.id });
|
|
579
|
+
this.preparedDispatches.set(token, {
|
|
580
|
+
kingdomDispatchId: input.kingdomDispatchId,
|
|
581
|
+
sessionRef: input.sessionRef,
|
|
582
|
+
text: input.text,
|
|
583
|
+
message,
|
|
584
|
+
agent,
|
|
585
|
+
session: agent.session,
|
|
586
|
+
used: false,
|
|
587
|
+
});
|
|
588
|
+
return token;
|
|
589
|
+
}
|
|
538
590
|
async dispatch(input) {
|
|
539
591
|
const agent = this.deps.agents.get(input.sessionRef);
|
|
540
592
|
if (!agent)
|
|
541
593
|
throw new Error(`dsh dispatch: session ${input.sessionRef} 不在 live registry(无法 dispatch)`);
|
|
542
|
-
|
|
543
|
-
|
|
594
|
+
let message;
|
|
595
|
+
if (input.preparedDispatch !== undefined) {
|
|
596
|
+
const prepared = input.preparedDispatch !== null && typeof input.preparedDispatch === 'object'
|
|
597
|
+
? this.preparedDispatches.get(input.preparedDispatch)
|
|
598
|
+
: undefined;
|
|
599
|
+
if (!prepared)
|
|
600
|
+
throw new Error('dsh dispatch: UNKNOWN_PREPARED_TOKEN');
|
|
601
|
+
if (prepared.used)
|
|
602
|
+
throw new Error('dsh dispatch: PREPARED_TOKEN_ALREADY_USED');
|
|
603
|
+
if (prepared.kingdomDispatchId !== input.kingdomDispatchId || prepared.sessionRef !== input.sessionRef
|
|
604
|
+
|| prepared.text !== input.text || prepared.agent !== agent || prepared.session !== agent.session
|
|
605
|
+
|| agent.id !== input.sessionRef || prepared.message.id !== input.preparedDispatch.runtimeDispatchRef) {
|
|
606
|
+
throw new Error('dsh dispatch: PREPARED_IDENTITY_MISMATCH');
|
|
607
|
+
}
|
|
608
|
+
if (typeof this.deps.sessions?.flush !== 'function')
|
|
609
|
+
throw new Error('dsh dispatch: DURABILITY_BARRIER_UNAVAILABLE');
|
|
610
|
+
const baseline = readDshSessionEvents(agent.session);
|
|
611
|
+
if (baseline === null)
|
|
612
|
+
throw new Error('dsh dispatch: BASELINE_UNREADABLE');
|
|
613
|
+
if (locateDshDispatchRef(baseline, prepared.message.id) >= 0)
|
|
614
|
+
throw new Error('dsh dispatch: RUNTIME_REF_ALREADY_PRESENT');
|
|
615
|
+
// Consume before any side effect. A thrown followup or uncertain barrier
|
|
616
|
+
// must never make this token usable for an automatic second send.
|
|
617
|
+
prepared.used = true;
|
|
618
|
+
message = prepared.message;
|
|
619
|
+
agent.followup(message);
|
|
620
|
+
let durable;
|
|
621
|
+
try {
|
|
622
|
+
durable = await boundedWait(Promise.resolve(this.deps.sessions.flush(agent.session)), this.deps.dispatchFlushTimeoutMs, 'dsh dispatch: DURABILITY_BARRIER_TIMEOUT');
|
|
623
|
+
}
|
|
624
|
+
catch (error) {
|
|
625
|
+
throw new Error(error instanceof Error && error.message === 'dsh dispatch: DURABILITY_BARRIER_TIMEOUT'
|
|
626
|
+
? 'dsh dispatch: DURABILITY_BARRIER_TIMEOUT'
|
|
627
|
+
: 'dsh dispatch: DURABILITY_BARRIER_UNCERTAIN');
|
|
628
|
+
}
|
|
629
|
+
if (durable !== true)
|
|
630
|
+
throw new Error('dsh dispatch: DURABILITY_BARRIER_NOT_CONFIRMED');
|
|
631
|
+
}
|
|
632
|
+
else {
|
|
633
|
+
// Explicit compatibility seam for historical direct Adapter consumers;
|
|
634
|
+
// correlated governed dispatch cannot fall back to this non-durable path.
|
|
635
|
+
if (input.kingdomDispatchId !== undefined)
|
|
636
|
+
throw new Error('dsh dispatch: PREPARED_TOKEN_REQUIRED');
|
|
637
|
+
message = buildUserMessage(input.text);
|
|
638
|
+
agent.followup(message);
|
|
639
|
+
}
|
|
544
640
|
return {
|
|
545
641
|
refs: {
|
|
546
642
|
runtimeType: this.runtimeType,
|
|
@@ -557,23 +653,105 @@ export class DshRuntimeAdapter {
|
|
|
557
653
|
return 'UNKNOWN';
|
|
558
654
|
return reconstructExecutionObservation(live, refs.runtimeDispatchRef);
|
|
559
655
|
}
|
|
656
|
+
async persistedEvents(sessionRef) {
|
|
657
|
+
const persistence = this.deps.sessionPersistence;
|
|
658
|
+
if (typeof persistence?.open !== 'function')
|
|
659
|
+
return { events: [], complete: false, reason: 'UNREADABLE' };
|
|
660
|
+
let reader;
|
|
661
|
+
let openTimedOut = false;
|
|
662
|
+
let result = { events: [], complete: false, reason: 'UNREADABLE' };
|
|
663
|
+
try {
|
|
664
|
+
const opening = Promise.resolve(persistence.open(sessionRef, 'read'));
|
|
665
|
+
// If open finishes after our deadline, release only its read handle.
|
|
666
|
+
void opening.then(handle => {
|
|
667
|
+
if (openTimedOut)
|
|
668
|
+
void Promise.resolve().then(() => handle.close()).catch(() => undefined);
|
|
669
|
+
}, () => undefined);
|
|
670
|
+
try {
|
|
671
|
+
reader = await boundedWait(opening, DEFAULT_DSH_IO_TIMEOUT_MS, 'PERSISTENCE_OPEN_TIMEOUT');
|
|
672
|
+
}
|
|
673
|
+
catch {
|
|
674
|
+
openTimedOut = true;
|
|
675
|
+
return result;
|
|
676
|
+
}
|
|
677
|
+
if (reader.id !== sessionRef || reader.access !== 'read' || typeof reader.read !== 'function' || typeof reader.close !== 'function')
|
|
678
|
+
return result;
|
|
679
|
+
const slice = await boundedWait(Promise.resolve(reader.read(0, DSH_RECONCILE_EVENT_LIMIT)), DEFAULT_DSH_IO_TIMEOUT_MS, 'PERSISTENCE_READ_TIMEOUT');
|
|
680
|
+
// At the exact limit we cannot know whether the log has a later tail.
|
|
681
|
+
result = readBoundedDshSessionEvents({ events: slice.events });
|
|
682
|
+
if (result.events.length === DSH_RECONCILE_EVENT_LIMIT)
|
|
683
|
+
result = { ...result, complete: false, reason: 'EVENT_LIMIT' };
|
|
684
|
+
}
|
|
685
|
+
catch {
|
|
686
|
+
result = { events: [], complete: false, reason: 'UNREADABLE' };
|
|
687
|
+
}
|
|
688
|
+
finally {
|
|
689
|
+
if (reader && typeof reader.close === 'function') {
|
|
690
|
+
try {
|
|
691
|
+
await boundedWait(Promise.resolve(reader.close()), DEFAULT_DSH_IO_TIMEOUT_MS, 'PERSISTENCE_CLOSE_TIMEOUT');
|
|
692
|
+
}
|
|
693
|
+
catch {
|
|
694
|
+
result = { events: [], complete: false, reason: 'UNREADABLE' };
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
return result;
|
|
699
|
+
}
|
|
560
700
|
async reconcile(kingdomDispatchId, refs) {
|
|
561
|
-
// session 维:live registry 或持久可恢复 → AVAILABLE;否则 UNKNOWN(GONE 需显式删除证据,S5 细化)
|
|
562
701
|
const live = this.deps.agents.get(refs.sessionRef);
|
|
563
702
|
let sessionObservation = 'UNKNOWN';
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
703
|
+
let source = 'NONE';
|
|
704
|
+
let projection = { events: [], complete: false, reason: 'UNREADABLE' };
|
|
705
|
+
if (live?.id === refs.sessionRef) {
|
|
567
706
|
sessionObservation = 'AVAILABLE';
|
|
568
|
-
|
|
707
|
+
source = 'LIVE';
|
|
708
|
+
projection = readBoundedDshSessionEvents(live.session);
|
|
709
|
+
}
|
|
710
|
+
else if (typeof this.deps.sessionPersistence?.open === 'function') {
|
|
711
|
+
source = 'PERSISTED';
|
|
712
|
+
projection = await this.persistedEvents(refs.sessionRef);
|
|
713
|
+
if (projection.complete || projection.reason === 'EVENT_LIMIT')
|
|
714
|
+
sessionObservation = 'AVAILABLE';
|
|
715
|
+
}
|
|
716
|
+
if (sessionObservation === 'UNKNOWN') {
|
|
717
|
+
try {
|
|
718
|
+
// Presence metadata never establishes a dispatch or its terminal.
|
|
719
|
+
const persistence = this.deps.sessionPersistence;
|
|
720
|
+
const present = typeof persistence?.stat === 'function'
|
|
721
|
+
? await boundedWait(Promise.resolve(persistence.stat(refs.sessionRef)), DEFAULT_DSH_IO_TIMEOUT_MS, 'PERSISTENCE_STAT_TIMEOUT')
|
|
722
|
+
: persistence?.has?.(refs.sessionRef) === true;
|
|
723
|
+
if (present)
|
|
724
|
+
sessionObservation = 'AVAILABLE';
|
|
725
|
+
}
|
|
726
|
+
catch { /* unknown presence stays unknown */ }
|
|
727
|
+
}
|
|
728
|
+
const located = Boolean(refs.runtimeDispatchRef && locateDshDispatchRef(projection.events, refs.runtimeDispatchRef) >= 0);
|
|
569
729
|
let executionObservation = 'UNKNOWN';
|
|
570
|
-
if (
|
|
571
|
-
|
|
730
|
+
if (projection.complete && located && refs.runtimeDispatchRef) {
|
|
731
|
+
const start = locateDshDispatchRef(projection.events, refs.runtimeDispatchRef);
|
|
732
|
+
const foreign = projection.events.slice(start).some(event => {
|
|
733
|
+
if (event.type === 'user/message')
|
|
734
|
+
return eventMessageId(event) !== refs.runtimeDispatchRef;
|
|
735
|
+
return event.type === 'agent/inbox/spliced' && Array.isArray(event.data?.inserted)
|
|
736
|
+
&& event.data.inserted.some(item => item === null || typeof item !== 'object' || item.id !== refs.runtimeDispatchRef);
|
|
737
|
+
});
|
|
738
|
+
if (!foreign)
|
|
739
|
+
executionObservation = reconstructExecutionObservation({ header: {}, events: projection.events }, refs.runtimeDispatchRef);
|
|
572
740
|
}
|
|
573
741
|
return {
|
|
574
742
|
executionObservation,
|
|
575
743
|
sessionObservation,
|
|
576
|
-
evidence: {
|
|
744
|
+
evidence: {
|
|
745
|
+
kingdomDispatchId,
|
|
746
|
+
runtimeDispatchRef: refs.runtimeDispatchRef ?? null,
|
|
747
|
+
source,
|
|
748
|
+
located,
|
|
749
|
+
eventsRead: projection.events.length,
|
|
750
|
+
complete: projection.complete,
|
|
751
|
+
reason: projection.reason !== 'READABLE' ? projection.reason === 'EVENT_LIMIT' ? 'EVENT_LIMIT' : 'OBSERVATION_UNREADABLE'
|
|
752
|
+
: located ? 'EXACT_INPUT_FOUND' : 'INPUT_NOT_LOCATED',
|
|
753
|
+
observedAt: new Date().toISOString(),
|
|
754
|
+
},
|
|
577
755
|
};
|
|
578
756
|
}
|
|
579
757
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dsh-backend.js","sourceRoot":"","sources":["../../src/adapter/dsh-backend.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dsh-backend.js","sourceRoot":"","sources":["../../src/adapter/dsh-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,53 @@
|
|
|
1
|
+
export const DSH_RECONCILE_EVENT_LIMIT = 10_000;
|
|
2
|
+
function validEvents(events) {
|
|
3
|
+
if (!Array.isArray(events))
|
|
4
|
+
return false;
|
|
5
|
+
// for-of visits sparse slots as undefined; Array.every would skip them and
|
|
6
|
+
// incorrectly admit a non-contiguous projection as readable evidence.
|
|
7
|
+
for (const event of events) {
|
|
8
|
+
if (event === null || typeof event !== 'object' || Array.isArray(event)
|
|
9
|
+
|| typeof event.type !== 'string' || event.type.length === 0
|
|
10
|
+
|| (event.data !== undefined && (event.data === null || typeof event.data !== 'object' || Array.isArray(event.data))))
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
/** Bounded read projection only; even a missing ID in a complete read is UNKNOWN. */
|
|
16
|
+
export function readBoundedDshSessionEvents(session, limit = DSH_RECONCILE_EVENT_LIMIT) {
|
|
17
|
+
if (session === null || typeof session !== 'object')
|
|
18
|
+
return { events: [], complete: false, reason: 'UNREADABLE' };
|
|
19
|
+
try {
|
|
20
|
+
const source = session;
|
|
21
|
+
let events;
|
|
22
|
+
let complete;
|
|
23
|
+
if ('snapshotEvents' in source) {
|
|
24
|
+
if (typeof source.snapshotEvents !== 'function')
|
|
25
|
+
return { events: [], complete: false, reason: 'UNREADABLE' };
|
|
26
|
+
const count = source.seq;
|
|
27
|
+
events = source.snapshotEvents(0, limit);
|
|
28
|
+
complete = typeof count === 'number' && Number.isSafeInteger(count) && count >= 0
|
|
29
|
+
? count <= limit && Array.isArray(events) && events.length === count
|
|
30
|
+
: Array.isArray(events) && events.length < limit;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
events = source.events;
|
|
34
|
+
complete = Array.isArray(events) && events.length <= limit;
|
|
35
|
+
}
|
|
36
|
+
if (!Array.isArray(events))
|
|
37
|
+
return { events: [], complete: false, reason: 'UNREADABLE' };
|
|
38
|
+
const prefix = events.length > limit ? events.slice(0, limit) : events;
|
|
39
|
+
// Legacy arrays or a nonconforming snapshot implementation must not make
|
|
40
|
+
// validation itself traverse more than the observation budget.
|
|
41
|
+
if (!validEvents(prefix))
|
|
42
|
+
return { events: [], complete: false, reason: 'UNREADABLE' };
|
|
43
|
+
if (events.length > limit || !complete)
|
|
44
|
+
return { events: prefix, complete: false, reason: 'EVENT_LIMIT' };
|
|
45
|
+
return { events: prefix, complete: true, reason: 'READABLE' };
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return { events: [], complete: false, reason: 'UNREADABLE' };
|
|
49
|
+
}
|
|
50
|
+
}
|
|
1
51
|
/**
|
|
2
52
|
* Read the current snapshot on every call. Only absence of the modern API
|
|
3
53
|
* permits legacy access; a broken advertised API must not hide behind stale
|
|
@@ -18,14 +68,8 @@ export function readDshSessionEvents(session) {
|
|
|
18
68
|
else {
|
|
19
69
|
events = source.events;
|
|
20
70
|
}
|
|
21
|
-
if (!
|
|
71
|
+
if (!validEvents(events))
|
|
22
72
|
return null;
|
|
23
|
-
for (const event of events) {
|
|
24
|
-
if (event === null || typeof event !== 'object' || Array.isArray(event)
|
|
25
|
-
|| typeof event.type !== 'string' || event.type.length === 0
|
|
26
|
-
|| (event.data !== undefined && (event.data === null || typeof event.data !== 'object' || Array.isArray(event.data))))
|
|
27
|
-
return null;
|
|
28
|
-
}
|
|
29
73
|
return events;
|
|
30
74
|
}
|
|
31
75
|
catch {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dsh-session-events.js","sourceRoot":"","sources":["../../src/adapter/dsh-session-events.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dsh-session-events.js","sourceRoot":"","sources":["../../src/adapter/dsh-session-events.ts"],"names":[],"mappings":"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"}
|