@agimon-ai/po-core 0.0.0-alpha.122 → 0.0.0-alpha.124
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 +6 -0
- package/dist/apiContracts.d.mts +130 -4
- package/dist/apiContracts.d.mts.map +1 -1
- package/dist/headlessHub.cjs +7 -0
- package/dist/headlessHub.cjs.map +1 -1
- package/dist/headlessHub.mjs +7 -0
- package/dist/headlessHub.mjs.map +1 -1
- package/dist/mcp.cjs +2 -0
- package/dist/mcp.d.mts +2 -2
- package/dist/mcp.mjs +1 -1
- package/dist/src/schemas/hubChannel.cjs +1 -1
- package/dist/src/schemas/hubChannel.cjs.map +1 -1
- package/dist/src/schemas/hubChannel.d.mts +1 -1
- package/dist/src/schemas/hubChannel.mjs +1 -1
- package/dist/src/schemas/hubChannel.mjs.map +1 -1
- package/dist/src/schemas/mcp.cjs +4 -0
- package/dist/src/schemas/mcp.cjs.map +1 -1
- package/dist/src/schemas/mcp.d.mts +46 -0
- package/dist/src/schemas/mcp.d.mts.map +1 -1
- package/dist/src/schemas/mcp.mjs +3 -1
- package/dist/src/schemas/mcp.mjs.map +1 -1
- package/dist/src/schemas/packageApi.cjs.map +1 -1
- package/dist/src/schemas/packageApi.d.mts +4 -3
- package/dist/src/schemas/packageApi.d.mts.map +1 -1
- package/dist/src/schemas/packageApi.mjs.map +1 -1
- package/dist/src/schemas/workflow.cjs +153 -0
- package/dist/src/schemas/workflow.cjs.map +1 -1
- package/dist/src/schemas/workflow.d.mts +184 -4
- package/dist/src/schemas/workflow.d.mts.map +1 -1
- package/dist/src/schemas/workflow.mjs +140 -1
- package/dist/src/schemas/workflow.mjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.cjs +15 -0
- package/dist/src/systems/main/adapters/headlessSessionHost.cjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.d.mts.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.mjs +16 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.mjs.map +1 -1
- package/dist/src/web/types/nativeTemplate.d.mts +3 -1
- package/dist/src/web/types/nativeTemplate.d.mts.map +1 -1
- package/dist/src/web/types/template.d.mts +8 -2
- package/dist/src/web/types/template.d.mts.map +1 -1
- package/dist/src/web/types/webPlugin.d.mts +5 -0
- package/dist/src/web/types/webPlugin.d.mts.map +1 -1
- package/dist/workflow.cjs +14 -0
- package/dist/workflow.d.mts +2 -2
- package/dist/workflow.mjs +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -4,6 +4,12 @@ Reusable runtime logic for Po packages. Main and child systems own session lifec
|
|
|
4
4
|
|
|
5
5
|
The `po` package composes these capabilities into the CLI and distribution. Feature packages own their policies and depend on core.
|
|
6
6
|
|
|
7
|
+
## Workflow allocation contracts
|
|
8
|
+
|
|
9
|
+
`@agimon-ai/po-core/workflow` exports strict schemas for per-launch role assignments, effective-graph requirements, safe profile candidates, versioned allocation snapshots and expected provider identity. `validatePoWorkflowAssignments` checks exact role coverage and same-profile role groups; `parsePoWorkflowAllocation` verifies and detaches saved evidence. Neither function grants authorization or proves remote freshness.
|
|
10
|
+
|
|
11
|
+
Allocation-aware runtimes require the workspace-bound identity service's `discover`, `allocate` and `revalidateAllocation` capabilities. These are optional only for compatibility with older providers: missing capabilities must block allocation-aware launches, not fall back to teams, default mailboxes or the launcher's profile. Core contracts alone do not implement runtime enforcement.
|
|
12
|
+
|
|
7
13
|
## Workspace registry
|
|
8
14
|
|
|
9
15
|
Hosts bind the read-only `po/workspace-registry` Cordis service before serving plugins. Its public
|
package/dist/apiContracts.d.mts
CHANGED
|
@@ -546,6 +546,106 @@ declare const PoWorkflowRunRefSchema: Type.TObject<{
|
|
|
546
546
|
registryWorkspace: Type.TString;
|
|
547
547
|
}>;
|
|
548
548
|
type PoWorkflowRunRef = Static<typeof PoWorkflowRunRefSchema>;
|
|
549
|
+
/** Derived from the effective graph. revision identifies the parsed definition, never a mutable path alone. */
|
|
550
|
+
declare const PoWorkflowIdentityRequirementsSchema: Type.TObject<{
|
|
551
|
+
definition: Type.TObject<{
|
|
552
|
+
source: Type.TString;
|
|
553
|
+
key: Type.TString;
|
|
554
|
+
}>;
|
|
555
|
+
revision: Type.TString;
|
|
556
|
+
roles: Type.TArray<Type.TString>;
|
|
557
|
+
groups: Type.TArray<Type.TObject<{
|
|
558
|
+
kind: Type.TUnion<[Type.TLiteral<"job">, Type.TLiteral<"child">, Type.TLiteral<"repair">]>;
|
|
559
|
+
job: Type.TString;
|
|
560
|
+
roles: Type.TArray<Type.TString>;
|
|
561
|
+
}>>;
|
|
562
|
+
}>;
|
|
563
|
+
type PoWorkflowIdentityRequirements = Static<typeof PoWorkflowIdentityRequirementsSchema>;
|
|
564
|
+
declare const PoWorkflowAssignmentsSchema: Type.TRecord<"^.*$", Type.TString>;
|
|
565
|
+
type PoWorkflowAssignments = Static<typeof PoWorkflowAssignmentsSchema>;
|
|
566
|
+
declare const PoWorkflowIdentityDiscoverySchema: Type.TObject<{
|
|
567
|
+
scope: Type.TObject<{
|
|
568
|
+
workspaceId: Type.TString;
|
|
569
|
+
product: Type.TString;
|
|
570
|
+
revision: Type.TString;
|
|
571
|
+
}>;
|
|
572
|
+
candidates: Type.TArray<Type.TObject<{
|
|
573
|
+
ref: Type.TString;
|
|
574
|
+
label: Type.TString;
|
|
575
|
+
roles: Type.TArray<Type.TString>;
|
|
576
|
+
voiceConfigured: Type.TBoolean;
|
|
577
|
+
}>>;
|
|
578
|
+
}>;
|
|
579
|
+
type PoWorkflowIdentityDiscovery = Static<typeof PoWorkflowIdentityDiscoverySchema>;
|
|
580
|
+
/** Persisted before effects. Profiles contain exact admitted evidence, never secrets or an implicit team selection. */
|
|
581
|
+
declare const PoWorkflowAllocationSchema: Type.TObject<{
|
|
582
|
+
version: Type.TLiteral<1>;
|
|
583
|
+
requirements: Type.TObject<{
|
|
584
|
+
definition: Type.TObject<{
|
|
585
|
+
source: Type.TString;
|
|
586
|
+
key: Type.TString;
|
|
587
|
+
}>;
|
|
588
|
+
revision: Type.TString;
|
|
589
|
+
roles: Type.TArray<Type.TString>;
|
|
590
|
+
groups: Type.TArray<Type.TObject<{
|
|
591
|
+
kind: Type.TUnion<[Type.TLiteral<"job">, Type.TLiteral<"child">, Type.TLiteral<"repair">]>;
|
|
592
|
+
job: Type.TString;
|
|
593
|
+
roles: Type.TArray<Type.TString>;
|
|
594
|
+
}>>;
|
|
595
|
+
}>;
|
|
596
|
+
scope: Type.TObject<{
|
|
597
|
+
workspaceId: Type.TString;
|
|
598
|
+
product: Type.TString;
|
|
599
|
+
revision: Type.TString;
|
|
600
|
+
}>;
|
|
601
|
+
assignments: Type.TRecord<"^.*$", Type.TString>;
|
|
602
|
+
profiles: Type.TArray<Type.TObject<{
|
|
603
|
+
ref: Type.TString;
|
|
604
|
+
profile: Type.TString;
|
|
605
|
+
contentDigest: Type.TString;
|
|
606
|
+
policyDigest: Type.TString;
|
|
607
|
+
provider: Type.TObject<{
|
|
608
|
+
provider: Type.TString;
|
|
609
|
+
organizationId: Type.TString;
|
|
610
|
+
mailboxId: Type.TString;
|
|
611
|
+
credentialRef: Type.TString;
|
|
612
|
+
}>;
|
|
613
|
+
}>>;
|
|
614
|
+
}>;
|
|
615
|
+
type PoWorkflowAllocation = Static<typeof PoWorkflowAllocationSchema>;
|
|
616
|
+
/** Step bootstrap only. An allocation-owned role-less session explicitly has no profile. */
|
|
617
|
+
declare const PoWorkflowExpectedIdentitySchema: Type.TUnion<[Type.TObject<{
|
|
618
|
+
kind: Type.TLiteral<"none">;
|
|
619
|
+
}>, Type.TObject<{
|
|
620
|
+
ref: Type.TString;
|
|
621
|
+
profile: Type.TString;
|
|
622
|
+
contentDigest: Type.TString;
|
|
623
|
+
policyDigest: Type.TString;
|
|
624
|
+
provider: Type.TObject<{
|
|
625
|
+
provider: Type.TString;
|
|
626
|
+
organizationId: Type.TString;
|
|
627
|
+
mailboxId: Type.TString;
|
|
628
|
+
credentialRef: Type.TString;
|
|
629
|
+
}>;
|
|
630
|
+
kind: Type.TLiteral<"profile">;
|
|
631
|
+
scope: Type.TObject<{
|
|
632
|
+
workspaceId: Type.TString;
|
|
633
|
+
product: Type.TString;
|
|
634
|
+
revision: Type.TString;
|
|
635
|
+
}>;
|
|
636
|
+
definitionRevision: Type.TString;
|
|
637
|
+
roles: Type.TArray<Type.TString>;
|
|
638
|
+
}>]>;
|
|
639
|
+
type PoWorkflowExpectedIdentity = Static<typeof PoWorkflowExpectedIdentitySchema>;
|
|
640
|
+
/** Read-only effective-graph requirements and provider discovery. identity is absent only for role-less graphs. */
|
|
641
|
+
interface PoWorkflowRequirementsReport {
|
|
642
|
+
readonly requirements: PoWorkflowIdentityRequirements;
|
|
643
|
+
readonly identity?: PoWorkflowIdentityDiscovery;
|
|
644
|
+
}
|
|
645
|
+
interface PoWorkflowAllocationRequest {
|
|
646
|
+
readonly requirements: PoWorkflowIdentityRequirements;
|
|
647
|
+
readonly assignments: Readonly<PoWorkflowAssignments>;
|
|
648
|
+
}
|
|
549
649
|
interface PoWorkflowLaunchOverrides {
|
|
550
650
|
readonly runner?: string;
|
|
551
651
|
readonly command?: string;
|
|
@@ -555,7 +655,11 @@ interface PoWorkflowLaunchOverrides {
|
|
|
555
655
|
readonly env?: Readonly<Record<string, string>>;
|
|
556
656
|
readonly prompt?: string;
|
|
557
657
|
readonly name?: string;
|
|
558
|
-
/**
|
|
658
|
+
/** Name for a newly created workflow session, not the run or an existing owner session. */
|
|
659
|
+
readonly sessionName?: string;
|
|
660
|
+
/** Exact per-launch role assignments. Teams, defaults and local profile names cannot fill missing assignments. */
|
|
661
|
+
readonly assignments?: Readonly<PoWorkflowAssignments>;
|
|
662
|
+
/** Legacy team override only. Never a substitute for explicit allocation. */
|
|
559
663
|
readonly team?: string;
|
|
560
664
|
}
|
|
561
665
|
/** Session-owned. Rejection means no observable registration was accepted. */
|
|
@@ -618,6 +722,8 @@ interface PoWorkflowPolicyOptions {
|
|
|
618
722
|
}
|
|
619
723
|
interface PoWorkflowAdmissionOverrides extends PoWorkflowLaunchOverrides {
|
|
620
724
|
readonly policy?: PoWorkflowPolicyAssociation;
|
|
725
|
+
/** Frozen preparation evidence. The destination revalidates it exactly, never treats it as authorization. */
|
|
726
|
+
readonly allocation?: PoWorkflowAllocation;
|
|
621
727
|
/**
|
|
622
728
|
* Run the workflow as this same-workspace session instead of the caller, for example a session in an
|
|
623
729
|
* isolated checkout. Trusted in-process launchers only: never accepted from tools, code mode or HTTP.
|
|
@@ -654,6 +760,8 @@ interface PoWorkflowValidationReport {
|
|
|
654
760
|
}[];
|
|
655
761
|
/** Declared by the definition and reported only: the engine never provisions a checkout itself. */
|
|
656
762
|
readonly isolation?: 'checkout';
|
|
763
|
+
/** Trusted preparation evidence only. Ordinary namespace reports omit provider bindings. */
|
|
764
|
+
readonly allocation?: PoWorkflowAllocation;
|
|
657
765
|
}
|
|
658
766
|
type PoWorkflowAdmission = {
|
|
659
767
|
readonly attemptId: string;
|
|
@@ -674,6 +782,8 @@ type PoWorkflowAdmission = {
|
|
|
674
782
|
};
|
|
675
783
|
/** Trusted, session-bound opt-in capability, never exposed as a tool or code-mode namespace. */
|
|
676
784
|
interface PoWorkflowAdmissionsService {
|
|
785
|
+
/** Discovery precedes assignment and creates no admission journal, claims or workflow effects. */
|
|
786
|
+
requirements?(definition: PoWorkflowDefinitionRef, options?: Pick<PoWorkflowLaunchOverrides, 'job'>): Promise<PoWorkflowRequirementsReport>;
|
|
677
787
|
validate(request: PoWorkflowAdmissionRequest): Promise<PoWorkflowValidationReport>;
|
|
678
788
|
launch(attemptId: string, definition: PoWorkflowDefinitionRef, overrides?: PoWorkflowAdmissionOverrides): Promise<PoWorkflowAdmission>;
|
|
679
789
|
recover(attemptId: string, previousRun: PoWorkflowRunRef, options?: PoWorkflowRecoveryOptions): Promise<PoWorkflowAdmission>;
|
|
@@ -815,6 +925,10 @@ interface PoWorkflowContextService {
|
|
|
815
925
|
readonly instructions?: string;
|
|
816
926
|
readonly state: PoWorkflowRunsService;
|
|
817
927
|
readonly children?: PoWorkflowChildrenSession;
|
|
928
|
+
/** Trusted startup evidence, not a remote session-create field. */
|
|
929
|
+
readonly identity?: PoWorkflowExpectedIdentity;
|
|
930
|
+
/** Frozen run evidence for trusted child admission. Never read from environment or public config views. */
|
|
931
|
+
readonly allocation?: PoWorkflowAllocation;
|
|
818
932
|
}
|
|
819
933
|
interface PoWorkflowIdentityRequest {
|
|
820
934
|
readonly team: string;
|
|
@@ -834,15 +948,26 @@ interface PoWorkflowIdentityBinding {
|
|
|
834
948
|
readonly policyDigest: string;
|
|
835
949
|
}
|
|
836
950
|
/**
|
|
837
|
-
*
|
|
838
|
-
*
|
|
839
|
-
*
|
|
951
|
+
* Workspace-bound identity capability. New role-bound launches require the allocation methods;
|
|
952
|
+
* an older provider missing them must fail closed rather than falling back to legacy teams.
|
|
953
|
+
* Fresh admission narrows existing authorization and never grants credentials or changes the caller's profile.
|
|
840
954
|
*/
|
|
841
955
|
interface PoWorkflowIdentityService {
|
|
956
|
+
/** Ordinary read-only discovery, available without Help or a selected profile. */
|
|
957
|
+
discover?(requirements: PoWorkflowIdentityRequirements): Promise<PoWorkflowIdentityDiscovery>;
|
|
958
|
+
/** Refreshes eligibility and admits exactly the requested references in the provider's trusted product scope. */
|
|
959
|
+
allocate?(request: PoWorkflowAllocationRequest): Promise<PoWorkflowAllocation>;
|
|
960
|
+
/** Revalidates exact persisted evidence; any change blocks instead of substituting profiles or digests. */
|
|
961
|
+
revalidateAllocation?(allocation: PoWorkflowAllocation): Promise<PoWorkflowAllocation>;
|
|
962
|
+
/** Legacy team-based admission, not used by allocation-aware launches. */
|
|
842
963
|
resolve(request: PoWorkflowIdentityRequest): Promise<PoWorkflowIdentityBinding>;
|
|
843
964
|
/** Rechecks a saved binding against the current team and authorization, returning it as it stands now. */
|
|
844
965
|
revalidate(binding: PoWorkflowIdentityBinding): Promise<PoWorkflowIdentityBinding>;
|
|
845
966
|
}
|
|
967
|
+
/** Required profile-version admission for allocation-owned prompts. Only the profile package supplies it. */
|
|
968
|
+
interface PoWorkflowProfileAdmissionService {
|
|
969
|
+
assertReady(expected: PoWorkflowExpectedIdentity): Promise<void>;
|
|
970
|
+
}
|
|
846
971
|
declare module '@deepseek-ai/cordis' {
|
|
847
972
|
interface Context {
|
|
848
973
|
'po/workflow-launch': PoWorkflowLaunchService;
|
|
@@ -851,6 +976,7 @@ declare module '@deepseek-ai/cordis' {
|
|
|
851
976
|
'po/workflow-context': PoWorkflowContextService;
|
|
852
977
|
'po/workflow-admissions': PoWorkflowAdmissionsService;
|
|
853
978
|
'po/workflow-identity': PoWorkflowIdentityService;
|
|
979
|
+
'po/workflow-profile-admission': PoWorkflowProfileAdmissionService;
|
|
854
980
|
}
|
|
855
981
|
}
|
|
856
982
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiContracts.d.mts","names":["_0","_0","_0","_0","IoContext","_0","_$__hubChannel0.PoHubSessionUsage","_0","_$__protocolContracts0.ChordMethods"],"sources":["../src/schemas/serverBundle.ts","../src/schemas/brain.ts","../src/schemas/serverScope.ts","../src/schemas/approvalPrompt.ts","../src/schemas/approval.ts","../src/schemas/backgroundWork.ts","../src/schemas/notification.ts","../src/schemas/platform.ts","../src/schemas/workflow.ts","../src/schemas/hubChannel.ts","../src/schemas/packageApi.ts","../src/schemas/apiContracts.ts","../src/services/apiContracts/index.ts","../src/schemas/builtinApiContracts.ts","../src/schemas/httpApiContracts.ts","../src/schemas/protocolContracts.ts","../src/schemas/sessionProtocol.ts","../src/schemas/sessionApiContracts.ts","../src/schemas/transportApiContracts.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"apiContracts.d.mts","names":["_0","_0","_0","_0","IoContext","_0","_$__hubChannel0.PoHubSessionUsage","_0","_$__protocolContracts0.ChordMethods"],"sources":["../src/schemas/serverBundle.ts","../src/schemas/brain.ts","../src/schemas/serverScope.ts","../src/schemas/approvalPrompt.ts","../src/schemas/approval.ts","../src/schemas/backgroundWork.ts","../src/schemas/notification.ts","../src/schemas/platform.ts","../src/schemas/workflow.ts","../src/schemas/hubChannel.ts","../src/schemas/packageApi.ts","../src/schemas/apiContracts.ts","../src/services/apiContracts/index.ts","../src/schemas/builtinApiContracts.ts","../src/schemas/httpApiContracts.ts","../src/schemas/protocolContracts.ts","../src/schemas/sessionProtocol.ts","../src/schemas/sessionApiContracts.ts","../src/schemas/transportApiContracts.ts"],"mappings":";;;;;;;;;;;;UAKiB;WACN;WACA;;UAGM;WACN;;WAEA;;WAEA,cAAc;;WAEd,iBAAiB;;WAEjB,cAAc;;WAEd;;WAEA;WACA,iBAAiB;WACjB,iBAAiB;WACjB;;;;;UCtBM;EACf;EACA,OAAO;;UAGQ;EACf;EACA;EACA,QAAQ,YAAY;;UAGL;EACf;EACA;EACA,OAAO;EACP,aAAa;EACb,OAAO;EACP;EACA;;UAGe;EACf;EACA;EACA,OAAO;EACP,OAAO;;;UAIQ;EACf;EACA;EACA;EACA;;UAGe;EACf,OAAO;EACP,OAAO;EACP,KAAK;;EAEL,SAAS;;UAGM;EACf,OAAO;EACP,QAAQ;EACR,UAAU;;EAEV,iBAAiB;EACjB,UAAU;EACV,WAAW;EACX,OAAO;EACP;;;UA+Be;EACf;EACA;IACE;IACA,OAAO;IACP;IACA;IACA;;EAEF;IACE;IACA;IACA,OAAO;IACP;;EAEF;;;;;UCrFe,kBAAkB;WACxB;WACA,OAAO;;WAEP;;WAEA,QAAQ;;;KAeP;;UAoBK,sBAAsB;WAC5B,OAAO;EAChB,WAAW;;;UAII,oBAAoB;EACnC,QAAQ,GACN,KAAK,qBACL,cAAc,IAAI,QAAQ,IAC1B,WAAW,OAAO,aAAa,gBAC9B,QAAQ,sBAAsB;;EAEjC,IAAI,OAAO;;EAEX,MAAM,MAAM,sBAAsB;;;UA0BnB;WACN,OAAO;;EAEhB,YAAY;;;;;;EAMZ,QAAQ,GAAG,UAAU,kBAAkB,IAAI,OAAO,IAAI,cAAc;;EAEpE,QAAQ,GAAG,UAAU,kBAAkB,KAAK;;EAE5C,KAAK,gBAAgB,QAAQ,MAAM,MAAM,MAAM,WAAW,OAAO;;EAEjE,UAAU,gBAAgB,QAAQ,MAAM,MAAM,MAAM,WAAW,OAAO;;EAEtE,OAAO,QAAQ,gBAAgB,oBAAoB;;;YAIzC;IACR,mBAAmB;;;;;;UC1GN;WACN;WACA;WACA;aAA8B;aAAwB;;;UAGhD;WACN;;WAEA;;;;UCSM;WACN;;WAEA;WACA,WAAW;WACX;WACA,aAAa;;WAEb;;WAEA;;UAKM;WACN;WACA,WAAW;;WAEX;WACA;;;KAIC,sBAAsB,MAAM,gBAAgB,QAAQ,gBAAgB;;;;;UAM/D;EACf,OAAO,SAAS,oBAAoB;aAAmB;;EACvD,iBAAiB,MAAM,6BAA6B,KAAK;;;YAS/C;IACR,eAAe;;;;;cCjEN,kCAAgC,KAAA;;;;;;KASjC,6BAA6B,cAAc;cAE1C,0BAAwB,KAAA;;;;;;;KAIzB,qBAAqB,cAAc;UAwB9B;WACN;;;;;;EAMT,2BAA2B;;UAGZ;WACN;WACA;;EAET;EACA;;UAGe;WACN,gBAAgB;WAChB;aAA4B;aAA2B;;;UAGjD;WACN;WACA;WACA;;UAGM;;WAEN;EACT,SAAS,UAAU,yBAAyB;;EAE5C,SAAS,qBAAqB;;;YAIpB;IACR,sBAAsB;;YAGd;IACR,6BAA6B,OAAO;;;;;cCtE3B,6BAA2B,KAAA;;;;;;;KAU5B,wBAAwB,cAAc;;UA2BjC;WACN;EACT,QAAQ,SAAS,+BAA+B;;;YAItC;IACR,mBAAmB;;;;;;UCjDN;EACf,OAAO,mBAAmB;IAAW;IAAmB,SAAS;MAAgB,QAAQ;;;UAI1E;WACN;WACA;WACA;WACA;WACA;WACA;;WAEA;;;UAIM;WACN;;;;;EAKT,YAAY,SAAS,0BAA0B,SAAS,cAAc;IAAU;;;;UAIjE;WACN;;WAEA;WACA;;UAGM;WACN;;WAEA;;;;;;;UAQM;WACN;;EAET,UAAU,aAAa,SAAS,cAAc,QAAQ;IAAsB;IAAc;;;EAE1F,SACE,aACA,SAAS,cACR,QAAQ;IAAsB;IAAc;MAAS;MAAc;;IAAkB;;;EAExF,WACE,SAAS,4BACT,SAAS,cACR,QAAQ;IAAsB;IAAc;;;UAGhC;WACN;;EAET,KAAK,cAAc,SAASI,UAAY,QAAQ;;;UAIjC;WACN,SAAS;;EAElB,yBAAyB;;EAEzB,QAAQ,SAASA,UAAY;;UAGd;;WAEN;;WAEA;;WAEA;;UAGM;WACN;;WAEA;;;;;;UAOM;WACN;EACT,KAAK,SAAS,yBAAyB,SAASA,UAAY,QAAQ;;EAEpE,aAAa,mBAAmB,SAASA,UAAY,QAAQ;EAC7D,KAAK,SAASA,UAAY,iBAAiB;;;;;EAK3C,QAAQ,mBAAmB,SAASA,UAAY;;;UAIjC;;WAEN;;WAEA,SAAS,SAAS;WAClB;WACA,QAAQ;;WAER;;WAEA;;WAEA,gBAAgB;;;;;WAKhB,iBACP,sBACG;aACU;aAA0B;aAAqB;;aAC/C;aAAyB;aAAqB,SAAS;;;KAI5D;KAEA;WACG;WAAmB;;WAEnB;WACA;aACE,MAAM;aACN;aACA;;aAEA;aACA;;;;;;;UAQA;WACN;;WAEA;EACT,IAAI,SAAS,mBAAmB,QAAQ;;;UAIzB;WACN;WACA;;WAEA;WACA;WACA;aACE;aACA;aACA;aACA;aACA;aACA;;;;UAKI;;WAEN;;WAEA;aACE;aACA;aACA;aACA;;;WAGF;aAA+B;aAA2B;aAAqB,MAAM;;;WAErF,QAAQ,SAAS,eAAe;WAChC,0BAA0B;;;;;;UAOpB;WACN;;;;;EAKT,YAAY,mBAAmB;aAAmB;aAA0B,OAAO;;;EAEnF,SAAS,wBAAwB,QAAQ;aAAoC;;EAC7E,QAAQ;aACG;MACP;aAAmB;aAA0B,QAAQ,SAAS;;;;YA0BxD;IACR,SAAS;IACT,YAAY;IACZ,aAAa;IACb,sBAAsB;IACtB,cAAc;IACd,UAAU;IACV,eAAe;IACf,cAAc;IACd,oBAAoB;IACpB;eAA+B;;;;;;;cC5PtB,+BAA6B,KAAA;;;;KAU9B,0BAA0B,cAAc;;cAGvC,wBAAsB,KAAA;;;;;;KASvB,mBAAmB,cAAc;;cAwBhC,sCAAoC,KAAA;;;;;;;;;;;;;KASrC,iCAAiC,cAAc;cAE9C,6BAA2B,KAAA,gBAAA,KAAA;KAC5B,wBAAwB,cAAc;cAyBrC,mCAAiC,KAAA;;;;;;;;;;;;;KAOlC,8BAA8B,cAAc;;cA2B3C,4BAA0B,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAU3B,uBAAuB,cAAc;;cAGpC,kCAAgC,KAAA,QAAA,KAAA;;;;;;;;;;;;;;;;;;;;;;KAajC,6BAA6B,cAAc;;UAqFtC;WACN,cAAc;WACd,WAAW;;UAGL;WACN,cAAc;WACd,aAAa,SAAS;;UAGhB;WACN;WACA;WACA;WACA;WACA,SAAS,SAAS;WAClB,MAAM,SAAS;WACf;WACA;;WAEA;;WAEA,cAAc,SAAS;;WAEvB;;;UAIM;EACf,OAAO,YAAY,yBAAyB,YAAY,4BAA4B,QAAQ;;;UAI7E;WACN;WACA;;;UAIM;WACN;WACA;;UAGM;WACN,aAAa;WACb,OAAO;;UAGD;WACN,SAAS;WACT;WACA;WACA;;WAEA,MAAM;WACN,cAAc;;WAEd,QAAQ;;UAGF;;WAEN,cAAc,SAAS;;;;;;;KAQtB,8BAA8B;UAEzB;WACN,SAAS;WACT,KAAK;WACL,SAAS;WACT;WACA;WACA;;WAEA,QAAQ;;UAGF;WACN;;;;;;WAMA,UAAU,SAAS,gCAAgC;;UAG7C,qCAAqC;WAC3C,SAAS;;WAET,aAAa;;;;;WAKb;;UAGM;WACN;;KAGC;WAEG;WACA,YAAY;WACZ,YAAY;;WAEZ;WAA0B,aAAa;WAA2B,UAAU;;UAE1E;WACN;aAA4B;aAAuB;aAA0B;;WAC7E;aAA8B;aAAuB;aAA0B;;WAC/E;aAA8B;aAA2B;aAA4B;;;WAErF;;WAEA,aAAa;;KAGZ;WAEG;WACA;WACA;WACA,UAAU;;WAGV;WACA;WACA;WACA;;WAGA;WACA;WACA;WACA,KAAK;WACL,UAAU;;;UAIR;;EAEf,cACE,YAAY,yBACZ,UAAU,KAAK,oCACd,QAAQ;EACX,SAAS,SAAS,6BAA6B,QAAQ;EACvD,OACE,mBACA,YAAY,yBACZ,YAAY,+BACX,QAAQ;EACX,QACE,mBACA,aAAa,kBACb,UAAU,4BACT,QAAQ;;EAEX,KAAK,oBAAoB,QAAQ;;;;;EAKjC,eACE,qBACA,kBAAkB,SAAS,qCAAqC,QAAQ,yCACxE,SAAS;IACN;;;UAEU;WACN;;WAEA;;UAGM;WACN;WACA;EACT;;;UAIe;EACf,SAAS,cAAc,6BAA6B;EACpD,iBAAiB;EACjB,UAAU,WAAW,kBAAkB;;KAG7B;KACA;KACA;UAUK;WACN;WACA,QAAQ;WACR;aAAiB;aAAuB;aAAqB;;WAC7D;;UAGM;WACN;WACA;WACA,QAAQ;WACR,gBAAgB;;UAGV;WACN,KAAK;WACL,OAAO;WACP,UAAU;;WAEV,UAAU;WACV,eAAe;WACf,oBAAoB;;;UAId;WACN,YAAY;WACZ;;WAEA,UAAU,SAAS;;;UAIb;EACf,WAAW,gBAAgB,QAAQ;EACnC,UAAU,gBAAgB,QAAQ;;EAElC,UAAU,eAAe,WAAW,OAAO;;UAG5B;WACN;WACA;WACA;WACA;WACA;WACA;WACA;WACA,QARME;;UAWA;WACN;WACA;WACA;WACA;WACA;WACA;;UAGM;WACN;WACA;WACA;WACA,mBAAmB;WACnB,sBAAsB;;;UAIhB;WACN;EACT,YAAY;IACV;IACA;IACA,SAAS;MACP,QAAQ;EACZ,aAAa;IAAS;MAAyB,QAAQ;EACvD,aAAa,QAAQ;EACrB,gBAAgB;IACd,SAAS;MAAiB;MAA+B;;MACvD;;EAEJ,oBAAoB;IAAU;IAAkB,WAAW,SAAS;;;EAEpE,mBAAmB;IACjB;MACE;IAAU;IAAkB,WAAW,SAAS;;;;UAIrC;WACN,KAAK;WACL;WACA;WACA;WACA,QAAQ;WACR,gBAAgB,SAAS;WACzB,iBAAiB,SAAS;WAC1B;;WAEA;WACA,OAAO;WACP,WAAW;;WAEX,WAAW;;WAEX,aAAa;;UAGP;WACN;;WAEA;;;UAIM;WACN;WACA;WACA;WACA;;WAEA;WACA;WACA;WACA;;;;;;;UAQM;;EAEf,UAAU,cAAc,iCAAiC,QAAQ;;EAEjE,UAAU,SAAS,8BAA8B,QAAQ;;EAEzD,sBAAsB,YAAY,uBAAuB,QAAQ;;EAEjE,QAAQ,SAAS,4BAA4B,QAAQ;;EAErD,WAAW,SAAS,4BAA4B,QAAQ;;;UAIzC;EACf,YAAY,UAAU,6BAA6B;;;YAKzC;IACR,sBAAsB;IACtB,kCAAkC;IAClC,oBAAoB;IACpB,uBAAuB;IACvB,0BAA0B;IAC1B,wBAAwB;IACxB,iCAAiC;;;;;;UClUpB;WACN;aACE;aACA;aACA;aACA;aACA;;WAEF;WACA;;;;;KCxQC;;UAgPK;;WAEN;;WAEA;;WAEA;WACA;;UAGM;WACN,OAAO;;WAEP;WACA;;;UAOM;;EAEf,MAAM,cAAc,OAAO,+BAA+B;EAC1D,OAAO,cAAc,OAAO;EAC5B,OAAO;EACP,eAAe,yBAAyB;EACxC;;;YASU;IACR,oBAAoB;;;;;qBChTX;qBACA;;qBAYA,qBAAmB,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAkEpB,gBAAgB,cAAc;YAC9B,iBAAiB;YACjB,mBAAmB;wBAEf,kBAAkB,UAAU,gBAAgB;wBAI5C,iBAAiB,iBAAiB;iBAsBjC;EACf;EACA;EACA,iBAAiB;EACjB,iBAAiB;EACjB,WAAW;EACX;;EAEA;;iBAGe;EACf,gBAAgB;EAChB;EACA;EACA,UAAU;;wBAGI,uBAAuB,iBAAiB;;;UClIvC;EACf,OAAO;EACP;EACA;EACA,UAAU;;UAGK;EACf,SAAS;EACT,UAAU;EACV;IACE;IACA;IACA,WAAW;IACX;MACE,OAAO;MACP;MACA;MACA;MACA;;IAEF;MAAY;MAAc;MAAiB,OAAO;;IAClD;MAAQ;MAAqB,OAAO;MAAY;;IAChD;;;;wBAKY,sBAAsB;;wBAwBtB,mBAAmB,qBAAqB,yBAAyB;;;qBC3CpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBCFA,gBAAc,KAAA;;;;qBACd,aAAW,KAAA;MAAX,KAAA;;;wBAIG,iBAAiB,0BAA0B,kBAAe;;;;UCPzD;WACN,OAAO;WACP,SAAS;;;;;;KAoBR,YAAY,UAAU,oBAAoB,UAAU,sBAAsB,KACpF,kBAAkB,OAAO,QAAQ;WAEpB,MAAM;WAAY,QAAQ;;KAE7B,aAAa,UAAU,eAAe,uBAC/C,WAAW,IAAI,YACd,EAAE;WAAsB,YAAY,UAAU;IAAY,OAAO,OAAO,iBACxE,EAAE;WAAsB,cAAc,UAAU;IAAY,OAAO,OAAO;;;KCnClE,+CAA+C;GAAiB,cAAc;;;;qBC4E7E,2BAAyB,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBA+LzB,gBAHME;;IAnJf,MAAI,KAAA;;;;;;;IAOJ,QAAM,KAAA;;;;;;;;;;;;IAYN,MAAI,KAAA,QAAA,KAAA,SAAA,KAAA;;;;;;;;;;;;IAQG,MAAI,KAAA,QAAA,KAAA,SAAA,KAAA;;;;;;;;;;;;IAEK,MAAI,KAAA;;;;;IACV,MAAI,KAAA;;;;;;IACD,MAAI,KAAA,QAAA,KAAA,iBAAA,KAAA,qBAAA,KAAA,iBAAA,KAAA,oBAAA,KAAA,kBAAA,KAAA,iBAAA,KAAA;;;IACJ,MAAI,KAAA;;;IACH,MAAI,KAAA;;;IACR,MAAI,KAAA;;;;;;;;;;;IACI,MAAI,KAAA;;;;;;;;;IAAW,QAAM,KAAA;;;;;IAEvC,MAAI,KAAA;;;IACJ,QAAM,KAAA,QAAA,KAAA,qBAAA,KAAA,uBAAA,KAAA,8BAAA,KAAA;;;IAQN,MAAI,KAAA;;;;IACJ,QAAM,KAAA,QAAA,KAAA,sBAAA,KAAA,uBAAA,KAAA,4BAAA,KAAA;;;;IAQM,QAAM,KAAA;;;;;;IAElB,MAAI,KAAA;;;;;;;IAOJ,QAAM,KAAA;;;;;;;;;;;;;;;;;;;;;;;IAmBN,MAAI,KAAA,QAAA,KAAA;;;;;;;;;;;;IAOJ,QAAM,KAAA;;;;;;;;;;;;;;;;;;;;;;;;IAqBN,QAAM,KAAA;;;;;;;;;;;;;;;;;;;IAeN,QAAM,KAAA,OAAA,KAAA;;;;;;;;;;;;;;IAiBc,QAAM,KAAA,OAAA,KAAA;;;;;;IACE,QAAM,KAAA,OAAA,KAAA,QAAA,KAAA,iBAAA,KAAA,qBAAA,KAAA,iBAAA,KAAA,oBAAA,KAAA,kBAAA,KAAA,iBAAA,KAAA;;;IACzB,MAAI,KAAA;;;IAAuD,QAAM,KAAA,QAAA;;;IACjE,MAAI,KAAA;;;IACF,MAAI,KAAA,OAAA,KAAA;;;;;;qBCrQN;qBA6BA,mBAAiB,KAAA,QAAA,KAAA,QAAA,KAAA,eAAA,KAAA,YAAA,KAAA,QAAA,KAAA,eAAA,KAAA,QAAA,KAAA,OAAA,KAAA,QAAA,KAAA,SAAA,KAAA,aAAA,KAAA,YAAA,KAAA,YAAA,KAAA,QAAA,KAAA,eAAA,KAAA,YAAA,KAAA,QAAA,KAAA,eAAA,KAAA,QAAA,KAAA,OAAA,KAAA,QAAA,KAAA,SAAA,KAAA,aAAA,KAAA,cAAA,KAAA,QAAA,KAAA,iBAAA,KAAA,QAAA,KAAA,eAAA,KAAA,QAAA,KAAA,OAAA,KAAA,QAAA,KAAA,SAAA,KAAA,aAAA,KAAA,YAAA,KAAA,WAAA,KAAA,QAAA,KAAA,eAAA,KAAA,WAAA,KAAA,QAAA,KAAA,eAAA,KAAA,QAAA,KAAA,OAAA,KAAA,QAAA,KAAA,SAAA,KAAA,aAAA,KAAA,YAAA,KAAA,YAAA,KAAA,QAAA,KAAA,eAAA,KAAA,YAAA,KAAA,QAAA,KAAA,eAAA,KAAA,QAAA,KAAA,OAAA,KAAA,QAAA,KAAA,SAAA,KAAA,aAAA,KAAA,YAAA,KAAA,UAAA,KAAA,UAAA,KAAA,OAAA,KAAA,aAAA,KAAA,QAAA,KAAA,eAAA,KAAA,UAAA,KAAA,UAAA,KAAA,OAAA,KAAA,aAAA,KAAA,QAAA,KAAA,eAAA,KAAA,QAAA,KAAA,OAAA,KAAA,QAAA,KAAA,SAAA,KAAA,aAAA,KAAA,YAAA,KAAA,OAAA,KAAA,aAAA,KAAA,QAAA,KAAA,eAAA,KAAA,OAAA,KAAA,aAAA,KAAA,QAAA,KAAA,eAAA,KAAA,UAAA,KAAA,OAAA,KAAA,QAAA,KAAA,SAAA,KAAA;;qBAqCjB,wBAAsB,KAAA,QAAA,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAwBtB,wBAAsB,KAAA,QAAA,KAAA"}
|
package/dist/headlessHub.cjs
CHANGED
|
@@ -230,12 +230,19 @@ function createHeadlessHub(options) {
|
|
|
230
230
|
const belongs = (mount, session) => mount.scope === "global" || (mount.scope === "workspace" ? session.workspaceId === mount.workspaceId : session.id === mount.sessionId);
|
|
231
231
|
const canClose = (mount, session) => belongs(mount, session) || mount.scope === "session" && session.parentSessionId === mount.sessionId;
|
|
232
232
|
const isHomeCoordinator = (session) => session.sessionProvenance === "coordinator" && session.workspaceId !== void 0 && workspaces.get(session.workspaceId)?.kind === "session";
|
|
233
|
+
const homeFallback = (home, peer) => {
|
|
234
|
+
if (!isHomeCoordinator(home) || peer.workspaceId === void 0) return false;
|
|
235
|
+
const workspace = workspaces.get(peer.workspaceId);
|
|
236
|
+
if (workspace === void 0 || workspace.kind === "session" || workspace.sandbox !== void 0) return false;
|
|
237
|
+
return ![...sessions.values()].some((session) => session.workspaceId === peer.workspaceId && session.sessionProvenance === "coordinator") && !options.dormantSessions?.().some((record) => !sessions.has(record.sessionId) && record.workspaceId === peer.workspaceId && record.sessionProvenance === "coordinator");
|
|
238
|
+
};
|
|
233
239
|
const peers = (a, b) => {
|
|
234
240
|
if (a.sessionProvenance === "remote-conversation" || b.sessionProvenance === "remote-conversation") return false;
|
|
235
241
|
const aCoordinates = a.sessionProvenance === require_hubChannel.COORDINATOR_SESSION_PROVENANCE;
|
|
236
242
|
const bCoordinates = b.sessionProvenance === require_hubChannel.COORDINATOR_SESSION_PROVENANCE;
|
|
237
243
|
if ((aCoordinates || bCoordinates) && a.workspaceId !== void 0 && a.workspaceId === b.workspaceId) return true;
|
|
238
244
|
if (aCoordinates && bCoordinates && (isHomeCoordinator(a) || isHomeCoordinator(b))) return true;
|
|
245
|
+
if (homeFallback(a, b) || homeFallback(b, a)) return true;
|
|
239
246
|
if (a.workspaceId !== void 0 && a.workspaceId === b.workspaceId && workspacePresence.get(a.workspaceId)?.canCommunicate(a.id, b.id) === true) return true;
|
|
240
247
|
return (a.groups ?? []).some((group) => b.groups?.includes(group) === true);
|
|
241
248
|
};
|