dsh-plugin-subagent-director 0.2.0 → 0.3.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.
Files changed (62) hide show
  1. package/CHANGELOG.md +60 -21
  2. package/LICENSE +21 -21
  3. package/README.md +80 -74
  4. package/cordis.patch.yml +11 -11
  5. package/lib/bridge-contract.d.ts +21 -0
  6. package/lib/bridge-contract.d.ts.map +1 -1
  7. package/lib/bridge-contract.js +4 -0
  8. package/lib/bridge-contract.js.map +1 -1
  9. package/lib/bridge-entry.d.ts +5 -1
  10. package/lib/bridge-entry.d.ts.map +1 -1
  11. package/lib/bridge-entry.js +6 -2
  12. package/lib/bridge-entry.js.map +1 -1
  13. package/lib/client/RoleCard.js +2 -2
  14. package/lib/client/RoleCard.js.map +1 -1
  15. package/lib/client/SubagentCloseAction.d.ts +32 -0
  16. package/lib/client/SubagentCloseAction.d.ts.map +1 -0
  17. package/lib/client/SubagentCloseAction.js +99 -0
  18. package/lib/client/SubagentCloseAction.js.map +1 -0
  19. package/lib/client/SubagentModelDock.d.ts +19 -9
  20. package/lib/client/SubagentModelDock.d.ts.map +1 -1
  21. package/lib/client/SubagentModelDock.js +79 -4
  22. package/lib/client/SubagentModelDock.js.map +1 -1
  23. package/lib/client/SubagentOptionsSection.d.ts +1 -1
  24. package/lib/client/SubagentOptionsSection.d.ts.map +1 -1
  25. package/lib/client/SubagentOptionsSection.js +1 -1
  26. package/lib/client/SubagentOptionsSection.js.map +1 -1
  27. package/lib/client/bind.d.ts +14 -0
  28. package/lib/client/bind.d.ts.map +1 -0
  29. package/lib/client/bind.js +24 -0
  30. package/lib/client/bind.js.map +1 -0
  31. package/lib/client/index.d.ts +5 -0
  32. package/lib/client/index.d.ts.map +1 -1
  33. package/lib/client/index.js +262 -16
  34. package/lib/client/index.js.map +1 -1
  35. package/lib/client/locales.d.ts +1 -1
  36. package/lib/client/locales.d.ts.map +1 -1
  37. package/lib/client/locales.js +20 -2
  38. package/lib/client/locales.js.map +1 -1
  39. package/lib/client/subagent-model.d.ts +13 -0
  40. package/lib/client/subagent-model.d.ts.map +1 -1
  41. package/lib/client/subagent-model.js +20 -0
  42. package/lib/client/subagent-model.js.map +1 -1
  43. package/lib/close-tool.d.ts +29 -0
  44. package/lib/close-tool.d.ts.map +1 -0
  45. package/lib/close-tool.js +60 -0
  46. package/lib/close-tool.js.map +1 -0
  47. package/lib/index.d.ts +1 -0
  48. package/lib/index.d.ts.map +1 -1
  49. package/lib/index.js +7 -0
  50. package/lib/index.js.map +1 -1
  51. package/lib/remote.d.ts +59 -3
  52. package/lib/remote.d.ts.map +1 -1
  53. package/lib/remote.js +148 -10
  54. package/lib/remote.js.map +1 -1
  55. package/lib/route-resolver.d.ts +7 -0
  56. package/lib/route-resolver.d.ts.map +1 -1
  57. package/lib/route-resolver.js +10 -1
  58. package/lib/route-resolver.js.map +1 -1
  59. package/lib/settings.d.ts.map +1 -1
  60. package/lib/settings.js +10 -2
  61. package/lib/settings.js.map +1 -1
  62. package/package.json +113 -114
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close-tool.js","sourceRoot":"","sources":["../src/close-tool.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAkD,MAAM,wBAAwB,CAAC;AACpG,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,0EAA0E;AAC1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC;AAEzD,MAAM,YAAY,GAAG,oBAAoB,CAAC;AAQ1C,kDAAkD;AAClD,MAAM,UAAU,6BAA6B;IAC3C,OAAO;QACL,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EACT,qKAAqK;SACxK;KACF,CAAC;AACJ,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,+BAA+B;IAC7C,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,oBAAoB,EAAE,KAAK;QAC3B,UAAU,EAAE;YACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;SAC5C;KACF,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,uBAAuB,CAAC,OAAyB;IAC/D,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IACxB,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACT,0XAA0X;QAC5X,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EACT,qKAAqK;aACxK;SACF;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;iBAC5C;aACF;YACD,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;SAC1F;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAuB,EAAE,IAAI;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,qEAAqE,CAAC,CAAC;YACxG,CAAC;YACD,MAAM,GAAG,CAAC,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACpF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
package/lib/index.d.ts CHANGED
@@ -22,6 +22,7 @@ export { Config } from './config.js';
22
22
  export type { DirectorConfig } from './config.js';
23
23
  export { assertDelegationCapabilities, buildSubagentRequest, createDelegationParameters, createDelegationOutputSchema, createDelegationTool, DELEGATION_TOOL_PREFIX, resolveDelegationMode, renderDelegationResult, type DelegationToolArgs, type DelegationResult, type DelegationRoute, type DelegationModeDecision, type SubagentRequestParts, } from './delegation-tool.js';
24
24
  export { applyGuidance, renderRolesGuidance, GUIDANCE_SECTION_ORDER, GUIDANCE_SECTION_NAME } from './guidance.js';
25
+ export { CLOSE_SUBAGENT_TOOL_NAME, createCloseSubagentTool } from './close-tool.js';
25
26
  export { SUBAGENT_DIRECTOR_SETTINGS_NAMESPACE, SettingsSchema, validateDirectorSettings, installDirectorSettings, type RoleTemplate, type SubagentDirectorSettings, } from './settings.js';
26
27
  export declare const name = "subagent-director";
27
28
  export declare const inject: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AASnD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,0BAA0B,EAC1B,4BAA4B,EAC5B,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAClH,OAAO,EACL,oCAAoC,EACpC,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,wBAAwB,GAC9B,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,IAAI,sBAAsB,CAAC;AAExC,eAAO,MAAM,MAAM,UAA4C,CAAC;AAEhE,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,aAAa,EAAE,cAAc,QA0D/E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAUnD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,0BAA0B,EAC1B,4BAA4B,EAC5B,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAClH,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EACL,oCAAoC,EACpC,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,wBAAwB,GAC9B,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,IAAI,sBAAsB,CAAC;AAExC,eAAO,MAAM,MAAM,UAA4C,CAAC;AAEhE,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,aAAa,EAAE,cAAc,QAgE/E"}
package/lib/index.js CHANGED
@@ -1,11 +1,13 @@
1
1
  import { assertSubagentMaxDepth } from '@deepseek-ai/dsh-subagent';
2
2
  import { createDelegationTool } from './delegation-tool.js';
3
+ import { CLOSE_SUBAGENT_TOOL_NAME, createCloseSubagentTool } from './close-tool.js';
3
4
  import { applyDefaultRouteSeam } from './default-route.js';
4
5
  import { applyGuidance } from './guidance.js';
5
6
  import { createSettingsSnapshot, installDirectorSettings } from './settings.js';
6
7
  export { Config } from './config.js';
7
8
  export { assertDelegationCapabilities, buildSubagentRequest, createDelegationParameters, createDelegationOutputSchema, createDelegationTool, DELEGATION_TOOL_PREFIX, resolveDelegationMode, renderDelegationResult, } from './delegation-tool.js';
8
9
  export { applyGuidance, renderRolesGuidance, GUIDANCE_SECTION_ORDER, GUIDANCE_SECTION_NAME } from './guidance.js';
10
+ export { CLOSE_SUBAGENT_TOOL_NAME, createCloseSubagentTool } from './close-tool.js';
9
11
  export { SUBAGENT_DIRECTOR_SETTINGS_NAMESPACE, SettingsSchema, validateDirectorSettings, installDirectorSettings, } from './settings.js';
10
12
  export const name = 'subagent-director';
11
13
  export const inject = ['tools', 'subagents', 'llm', 'settings'];
@@ -33,6 +35,11 @@ export function apply(ctx, config) {
33
35
  }
34
36
  // ---- role guidance ----------------------------------------------------
35
37
  applyGuidance(ctx, getSettings, toolName);
38
+ // ---- close_subagent tool ----------------------------------------------
39
+ // Provider-independent (drain is a global subagents operation), so it
40
+ // registers at mount time like the control tools; on a deployment without
41
+ // continuable children it is a safe no-op.
42
+ ctx.effect(() => ctx.tools.register(createCloseSubagentTool({ ctx })), 'subagent-director: close_subagent tool');
36
43
  // ---- delegation tool registration ------------------------------------
37
44
  if (typeof config.maxDepth === 'number')
38
45
  assertSubagentMaxDepth(config.maxDepth);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAEhF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,0BAA0B,EAC1B,4BAA4B,EAC5B,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,GAMvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAClH,OAAO,EACL,oCAAoC,EACpC,cAAc,EACd,wBAAwB,EACxB,uBAAuB,GAGxB,MAAM,eAAe,CAAC;AAEvB,MAAM,CAAC,MAAM,IAAI,GAAG,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AAEhE,MAAM,UAAU,KAAK,CAAC,GAAY,EAAE,MAA4C;IAC9E,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,UAAU,CAAC;IAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,eAAe,CAAC;IACpD,MAAM,YAAY,GAAG,MAAM,CAAC,gBAAgB,IAAI,OAAO,CAAC;IAExD,yEAAyE;IACzE,0EAA0E;IAC1E,0EAA0E;IAC1E,0EAA0E;IAC1E,2CAA2C;IAE3C,2EAA2E;IAC3E,0DAA0D;IAC1D,qBAAqB;IACrB,MAAM,gBAAgB,GAAG,sBAAsB,CAAmD,EAAE,CAAC,CAAC;IACtG,uBAAuB,CAAC,GAAG,EAAE,EAAE,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC;IAEzC,2EAA2E;IAC3E,kDAAkD;IAClD,gDAAgD;IAChD,wBAAwB;IACxB,IAAI,MAAM,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;QACvC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,sCAAsC,CAAC,CAAC;IACpG,CAAC;IAED,0EAA0E;IAC1E,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAE1C,yEAAyE;IACzE,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;QAAE,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjF,IAAI,WAAqC,CAAC;IAE1C,MAAM,KAAK,GAAG,CAAC,QAA0B,EAAE,EAAE;QAC3C,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;YAC7E,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,QAAQ,CAAC,IAAI,GAAG,2FAA2F,CAAC,CAAC;QACjK,CAAC;QACD,IAAI,cAAc,KAAK,aAAa,IAAI,QAAQ,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAClF,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,QAAQ,CAAC,IAAI,GAAG,iHAAiH,CAAC,CAAC;QACvL,CAAC;QACD,GAAG,CAAC,MAAM,CAAC,IAAI,CACb,GAAG,GAAG,IAAI,GAAG,gBAAgB,GAAG,QAAQ,GAAG,yBAAyB,GAAG,GAAG,GAAG,YAAY,GAAG,GAAG,GAAG,uBAAuB,GAAG,GAAG,GAAG,cAAc,GAAG,GAAG,CACvJ,CAAC;QACF,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACjG,CAAC,CAAC;IAEF,GAAG,CAAC,EAAE,CAAC,yBAAyB,EAAE,CAAC,QAA0B,EAAE,EAAE;QAC/D,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,IAAI,WAAW,KAAK,SAAS;YAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,EAAE,CAAC,2BAA2B,EAAE,CAAC,KAAa,EAAE,EAAE;QACpD,IAAI,KAAK,KAAK,YAAY,IAAI,WAAW,KAAK,SAAS;YAAE,OAAO;QAChE,WAAW,EAAE,CAAC;QACd,WAAW,GAAG,SAAS,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACxD,IAAI,OAAO,KAAK,SAAS;QAAE,KAAK,CAAC,OAAO,CAAC,CAAC;;QACrC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,sBAAsB,GAAG,GAAG,GAAG,YAAY,GAAG,6BAA6B,GAAG,QAAQ,GAAG,sCAAsC,CAAC,CAAC;AACrK,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/remote.d.ts CHANGED
@@ -30,10 +30,11 @@
30
30
  */
31
31
  import type { IncomingMessage, ServerResponse } from 'node:http';
32
32
  import type { Context } from '@deepseek-ai/cordis';
33
+ import { SessionId } from '@deepseek-ai/dsh-session';
33
34
  import { SettingsConflictError, type SettingsDescriptor, type SettingsProvider } from '@deepseek-ai/dsh-settings';
34
35
  import type { RpcResult, RpcError, SettingsNamespaceView, SettingsPathOpView } from '@deepseek-ai/dsh-host-apiproxy/api';
35
36
  import { SettingsSchema } from './settings.js';
36
- import { SUBAGENT_DIRECTOR_RPC_VIEW, SUBAGENT_DIRECTOR_RPC_MUTATE, type DirectorMutateRequest, type DirectorViewSuccess } from './bridge-contract.js';
37
+ import { SUBAGENT_DIRECTOR_RPC_VIEW, SUBAGENT_DIRECTOR_RPC_MUTATE, SUBAGENT_DIRECTOR_RPC_CLOSE, SUBAGENT_DIRECTOR_RPC_MODEL, type DirectorCloseRequest, type DirectorModelRequest, type DirectorModelSuccess, type DirectorMutateRequest, type DirectorViewSuccess } from './bridge-contract.js';
37
38
  import { SUBAGENT_DIRECTOR_ROUTE_PATH } from './envelope.js';
38
39
  /** Wire route path the bridge owns on the Host web server. */
39
40
  export { SUBAGENT_DIRECTOR_ROUTE_PATH as SUBAGENT_DIRECTOR_RPC_CHANNEL };
@@ -41,8 +42,45 @@ export { SUBAGENT_DIRECTOR_ROUTE_PATH as SUBAGENT_DIRECTOR_RPC_CHANNEL };
41
42
  export { SUBAGENT_DIRECTOR_RPC_VIEW };
42
43
  /** Endpoint that applies one path-op mutation. */
43
44
  export { SUBAGENT_DIRECTOR_RPC_MUTATE };
45
+ /** Endpoint that releases one resident continuable child of a live parent. */
46
+ export { SUBAGENT_DIRECTOR_RPC_CLOSE };
47
+ /** Endpoint that returns the actual provider/model of one child session. */
48
+ export { SUBAGENT_DIRECTOR_RPC_MODEL };
44
49
  /** Request payload for the settingsMutate bridge endpoint. */
45
- export type { DirectorMutateRequest, DirectorViewSuccess };
50
+ export type { DirectorMutateRequest, DirectorViewSuccess, DirectorCloseRequest, DirectorModelRequest, DirectorModelSuccess };
51
+ /**
52
+ * The services the bridge dispatch needs beyond settings. Kept structural so
53
+ * the module stays testable without a live cordis context; installers resolve
54
+ * them lazily through ctx.get and may leave optional ones undefined.
55
+ */
56
+ export interface BridgeDeps {
57
+ settings: SettingsProvider;
58
+ /** Live agent registry (dsh-agent ctx.agents). */
59
+ agents?: {
60
+ get(id: SessionId): unknown;
61
+ };
62
+ /** Subagent service (dsh-subagent ctx.subagents). */
63
+ subagents?: {
64
+ drainContinuableChildren(parent: unknown, childIds: readonly SessionId[]): Promise<void>;
65
+ };
66
+ /** Unified session query (dsh-session-query ctx.sessionQuery). */
67
+ sessionQuery?: {
68
+ readSession(sessionId: SessionId): Promise<{
69
+ events: readonly unknown[];
70
+ }>;
71
+ };
72
+ }
73
+ /**
74
+ * Fold the actual provider/model off a session event log: walk from the tail
75
+ * and take the LAST `request/header` event's `data.header.config`, which the
76
+ * agent loop records on every model request (the durable "what actually ran"
77
+ * source; assistant messages carry no provider/model in current DSH).
78
+ * Returns undefined when the log records none.
79
+ */
80
+ export declare function latestRequestHeaderModel(events: readonly unknown[]): {
81
+ provider: string;
82
+ model: string;
83
+ } | undefined;
46
84
  /**
47
85
  * Map one redacted settings descriptor to its wire view — mirrors apiproxy's
48
86
  * `namespaceView` (dsh-host-apiproxy/lib/index.js:2385-2399) exactly, so the
@@ -89,7 +127,25 @@ export { parseClientRequestEnvelope, isLoopbackHost, isLoopbackHostname, endpoin
89
127
  * - non-loopback Host header → 403 "forbidden" (lightweight trust fence)
90
128
  * - dispatch error → 500 "handler failure: ..."
91
129
  */
92
- export declare function handleDirectorBridgeRequest(settings: SettingsProvider, req: IncomingMessage, res: ServerResponse): Promise<void>;
130
+ export declare function handleDirectorBridgeRequest(deps: BridgeDeps, req: IncomingMessage, res: ServerResponse): Promise<void>;
131
+ /**
132
+ * Release one resident continuable child of an exact live parent (issue #1 UI
133
+ * path). The parent agent is looked up by session id; when it is no longer
134
+ * live its continuable children were released with it, which the client
135
+ * surfaces as `subagent-parent-not-live`. A drain rejection (e.g. core
136
+ * UNAUTHORIZED for a non-direct child) maps to `subagent-close-rejected`.
137
+ */
138
+ export declare function dispatchSubagentClose(deps: BridgeDeps, payload: unknown): Promise<RpcResult<{
139
+ closed: true;
140
+ }>>;
141
+ /**
142
+ * Return the actual provider/model of one child session from its last
143
+ * `request/header` event (the observability data source; see
144
+ * latestRequestHeaderModel). Degrades to { found: false } when the log
145
+ * records none and to `subagent-model-unavailable` when the session query
146
+ * service is not mounted.
147
+ */
148
+ export declare function dispatchSubagentModel(deps: BridgeDeps, payload: unknown): Promise<RpcResult<DirectorModelSuccess>>;
93
149
  /**
94
150
  * Install the Subagent Director setting bridge on the Host web server via a
95
151
  * self-published prefix route. Lazy-acquires `ctx.webServer`; a deployment
@@ -1 +1 @@
1
- {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EACL,qBAAqB,EAErB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,EACR,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,cAAc,EAEf,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,4BAA4B,EAQ7B,MAAM,eAAe,CAAC;AAEvB,8DAA8D;AAC9D,OAAO,EAAE,4BAA4B,IAAI,6BAA6B,EAAE,CAAC;AACzE,gEAAgE;AAChE,OAAO,EAAE,0BAA0B,EAAE,CAAC;AACtC,kDAAkD;AAClD,OAAO,EAAE,4BAA4B,EAAE,CAAC;AACxC,8DAA8D;AAC9D,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,CAAC;AAE3D;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,kBAAkB,GAAG,qBAAqB,CAc7F;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,SAAS,kBAAkB,EAAE,GACzC,qBAAqB,GAAG,SAAS,CAOnC;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,mBAAmB,CAMzF;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,QAAQ,CAMrE;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,QAAQ,CAa1E;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,CAAC,mBAAmB,CAAC,CAEzF;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,EAClC,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,EACtC,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,SAAS,kBAAkB,EAAE,EAClC,gBAAgB,EAAE,MAAM,GAAG,SAAS,GACnC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAwB3C;AAED,+EAA+E;AAC/E,OAAO,EACL,0BAA0B,EAC1B,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,gBAAgB,EAC1B,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,IAAI,CAAC,CAEf;AAqFD;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,IAAI,CA2BpE;AAiCD,iFAAiF;AACjF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"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"}
package/lib/remote.js CHANGED
@@ -1,6 +1,7 @@
1
+ import { SessionId } from '@deepseek-ai/dsh-session';
1
2
  import { SettingsConflictError, settingsNamespace, } from '@deepseek-ai/dsh-settings';
2
3
  import { SettingsSchema, SUBAGENT_DIRECTOR_SETTINGS_NAMESPACE, } from './settings.js';
3
- import { SUBAGENT_DIRECTOR_RPC_VIEW, SUBAGENT_DIRECTOR_RPC_MUTATE, } from './bridge-contract.js';
4
+ import { SUBAGENT_DIRECTOR_RPC_VIEW, SUBAGENT_DIRECTOR_RPC_MUTATE, SUBAGENT_DIRECTOR_RPC_CLOSE, SUBAGENT_DIRECTOR_RPC_MODEL, } from './bridge-contract.js';
4
5
  import { SUBAGENT_DIRECTOR_ROUTE_PATH, buildServerResponse, buildMethodMismatchResponse, buildBadRequestResponse, parseClientRequestEnvelope, isLoopbackHost, endpointFromPath, } from './envelope.js';
5
6
  /** Wire route path the bridge owns on the Host web server. */
6
7
  export { SUBAGENT_DIRECTOR_ROUTE_PATH as SUBAGENT_DIRECTOR_RPC_CHANNEL };
@@ -8,6 +9,39 @@ export { SUBAGENT_DIRECTOR_ROUTE_PATH as SUBAGENT_DIRECTOR_RPC_CHANNEL };
8
9
  export { SUBAGENT_DIRECTOR_RPC_VIEW };
9
10
  /** Endpoint that applies one path-op mutation. */
10
11
  export { SUBAGENT_DIRECTOR_RPC_MUTATE };
12
+ /** Endpoint that releases one resident continuable child of a live parent. */
13
+ export { SUBAGENT_DIRECTOR_RPC_CLOSE };
14
+ /** Endpoint that returns the actual provider/model of one child session. */
15
+ export { SUBAGENT_DIRECTOR_RPC_MODEL };
16
+ /**
17
+ * Fold the actual provider/model off a session event log: walk from the tail
18
+ * and take the LAST `request/header` event's `data.header.config`, which the
19
+ * agent loop records on every model request (the durable "what actually ran"
20
+ * source; assistant messages carry no provider/model in current DSH).
21
+ * Returns undefined when the log records none.
22
+ */
23
+ export function latestRequestHeaderModel(events) {
24
+ if (!Array.isArray(events))
25
+ return undefined;
26
+ for (let i = events.length - 1; i >= 0; i -= 1) {
27
+ const event = events[i];
28
+ if (event === null || typeof event !== 'object')
29
+ continue;
30
+ const record = event;
31
+ if (record.type !== 'request/header')
32
+ continue;
33
+ const data = record.data;
34
+ const config = data?.header?.config;
35
+ if (config !== null && typeof config === 'object') {
36
+ const provider = config.provider;
37
+ const model = config.model;
38
+ if (typeof provider === 'string' && provider !== '' && typeof model === 'string' && model !== '') {
39
+ return { provider, model };
40
+ }
41
+ }
42
+ }
43
+ return undefined;
44
+ }
11
45
  /**
12
46
  * Map one redacted settings descriptor to its wire view — mirrors apiproxy's
13
47
  * `namespaceView` (dsh-host-apiproxy/lib/index.js:2385-2399) exactly, so the
@@ -125,10 +159,10 @@ export { parseClientRequestEnvelope, isLoopbackHost, isLoopbackHostname, endpoin
125
159
  * - non-loopback Host header → 403 "forbidden" (lightweight trust fence)
126
160
  * - dispatch error → 500 "handler failure: ..."
127
161
  */
128
- export function handleDirectorBridgeRequest(settings, req, res) {
129
- return handleDirectorBridgeRequestInner(settings, req.url ?? '/', req.headers.host, req, res);
162
+ export function handleDirectorBridgeRequest(deps, req, res) {
163
+ return handleDirectorBridgeRequestInner(deps, req.url ?? '/', req.headers.host, req, res);
130
164
  }
131
- async function handleDirectorBridgeRequestInner(settings, rawUrl, hostHeader, req, res) {
165
+ async function handleDirectorBridgeRequestInner(deps, rawUrl, hostHeader, req, res) {
132
166
  // Non-POST → 404.
133
167
  if (req.method !== 'POST') {
134
168
  sendPlain(res, 404, 'not found');
@@ -169,13 +203,13 @@ async function handleDirectorBridgeRequestInner(settings, rawUrl, hostHeader, re
169
203
  return;
170
204
  }
171
205
  // Dispatch.
172
- const result = await dispatchBridgeEndpoint(settings, endpoint, envelope.payload);
206
+ const result = await dispatchBridgeEndpoint(deps, endpoint, envelope.payload);
173
207
  sendJson(res, 200, buildServerResponse(envelope.rpcId, result));
174
208
  }
175
- /** Dispatch one validated endpoint to the settings seam. Throws on unknown endpoint. */
176
- async function dispatchBridgeEndpoint(settings, endpoint, payload) {
209
+ /** Dispatch one validated endpoint. Throws on unknown endpoint. */
210
+ async function dispatchBridgeEndpoint(deps, endpoint, payload) {
177
211
  if (endpoint === SUBAGENT_DIRECTOR_RPC_VIEW) {
178
- return directorViewOk(settings);
212
+ return directorViewOk(deps.settings);
179
213
  }
180
214
  if (endpoint === SUBAGENT_DIRECTOR_RPC_MUTATE) {
181
215
  const request = payload;
@@ -190,10 +224,105 @@ async function dispatchBridgeEndpoint(settings, endpoint, payload) {
190
224
  };
191
225
  }
192
226
  const ops = (request?.ops ?? []);
193
- return directorMutate((n, o, r) => settings.mutate(n, o, r), (opts) => settings.describe(opts), String(SUBAGENT_DIRECTOR_SETTINGS_NAMESPACE), ops, request?.expectedRevision);
227
+ return directorMutate((n, o, r) => deps.settings.mutate(n, o, r), (opts) => deps.settings.describe(opts), String(SUBAGENT_DIRECTOR_SETTINGS_NAMESPACE), ops, request?.expectedRevision);
228
+ }
229
+ if (endpoint === SUBAGENT_DIRECTOR_RPC_CLOSE) {
230
+ return dispatchSubagentClose(deps, payload);
231
+ }
232
+ if (endpoint === SUBAGENT_DIRECTOR_RPC_MODEL) {
233
+ return dispatchSubagentModel(deps, payload);
194
234
  }
195
235
  throw new Error('unknown bridge endpoint ' + JSON.stringify(endpoint));
196
236
  }
237
+ /**
238
+ * Release one resident continuable child of an exact live parent (issue #1 UI
239
+ * path). The parent agent is looked up by session id; when it is no longer
240
+ * live its continuable children were released with it, which the client
241
+ * surfaces as `subagent-parent-not-live`. A drain rejection (e.g. core
242
+ * UNAUTHORIZED for a non-direct child) maps to `subagent-close-rejected`.
243
+ */
244
+ export async function dispatchSubagentClose(deps, payload) {
245
+ const request = payload;
246
+ if (request === null ||
247
+ typeof request !== 'object' ||
248
+ typeof request.parentSessionId !== 'string' ||
249
+ typeof request.childSessionId !== 'string') {
250
+ return {
251
+ ok: false,
252
+ error: { code: 'bad-request', message: 'subagentClose: expected { parentSessionId, childSessionId }', details: { issues: [] } },
253
+ };
254
+ }
255
+ const parent = deps.agents?.get(SessionId(request.parentSessionId));
256
+ if (parent === undefined) {
257
+ return {
258
+ ok: false,
259
+ error: {
260
+ code: 'session-not-found',
261
+ message: 'parent agent ' + request.parentSessionId + ' is not live; its continuable children are released with it',
262
+ details: { sessionId: SessionId(request.parentSessionId) },
263
+ },
264
+ };
265
+ }
266
+ if (deps.subagents === undefined) {
267
+ return {
268
+ ok: false,
269
+ error: { code: 'internal', message: 'subagents service is not mounted', details: {} },
270
+ };
271
+ }
272
+ try {
273
+ await deps.subagents.drainContinuableChildren(parent, [SessionId(request.childSessionId)]);
274
+ }
275
+ catch (error) {
276
+ return {
277
+ ok: false,
278
+ error: {
279
+ code: 'internal',
280
+ message: error instanceof Error ? error.message : String(error),
281
+ details: {},
282
+ },
283
+ };
284
+ }
285
+ return { ok: true, value: { closed: true } };
286
+ }
287
+ /**
288
+ * Return the actual provider/model of one child session from its last
289
+ * `request/header` event (the observability data source; see
290
+ * latestRequestHeaderModel). Degrades to { found: false } when the log
291
+ * records none and to `subagent-model-unavailable` when the session query
292
+ * service is not mounted.
293
+ */
294
+ export async function dispatchSubagentModel(deps, payload) {
295
+ const request = payload;
296
+ if (request === null || typeof request !== 'object' || typeof request.sessionId !== 'string') {
297
+ return {
298
+ ok: false,
299
+ error: { code: 'bad-request', message: 'subagentModel: expected { sessionId }', details: { issues: [] } },
300
+ };
301
+ }
302
+ if (deps.sessionQuery === undefined) {
303
+ return {
304
+ ok: false,
305
+ error: { code: 'internal', message: 'sessionQuery service is not mounted', details: {} },
306
+ };
307
+ }
308
+ try {
309
+ const log = await deps.sessionQuery.readSession(SessionId(request.sessionId));
310
+ const model = latestRequestHeaderModel(log?.events);
311
+ return model === undefined
312
+ ? { ok: true, value: { found: false } }
313
+ : { ok: true, value: { found: true, provider: model.provider, model: model.model } };
314
+ }
315
+ catch (error) {
316
+ return {
317
+ ok: false,
318
+ error: {
319
+ code: 'internal',
320
+ message: error instanceof Error ? error.message : String(error),
321
+ details: {},
322
+ },
323
+ };
324
+ }
325
+ }
197
326
  /**
198
327
  * Install the Subagent Director setting bridge on the Host web server via a
199
328
  * self-published prefix route. Lazy-acquires `ctx.webServer`; a deployment
@@ -209,8 +338,17 @@ export function installDirectorRemoteBridge(ctx) {
209
338
  ', webServer:' + String(webServer !== undefined) + ')');
210
339
  return () => { };
211
340
  }
341
+ // agents/subagents/sessionQuery stay lazy (ctx.get) so the bridge keeps
342
+ // working in deployments where one of them is absent: the corresponding
343
+ // endpoints answer a structured error instead of crashing the route.
344
+ const deps = {
345
+ settings,
346
+ agents: ctx.get('agents'),
347
+ subagents: ctx.get('subagents'),
348
+ sessionQuery: ctx.get('sessionQuery'),
349
+ };
212
350
  const handler = (req, res) => {
213
- handleDirectorBridgeRequest(settings, req, res).catch((error) => {
351
+ handleDirectorBridgeRequest(deps, req, res).catch((error) => {
214
352
  // Dispatch throw (unknown endpoint or a settings seam blow-up) → 500.
215
353
  if (res.headersSent) {
216
354
  res.destroy();
package/lib/remote.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"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"}
@@ -113,6 +113,13 @@ export interface RouteResult {
113
113
  /** Human-readable warnings for degraded references (nonexistent role, etc.). */
114
114
  warnings: string[];
115
115
  }
116
+ /**
117
+ * Whether a tool filter actually restricts anything. dsh-settings materializes
118
+ * an absent `toolFilter` as `{ allow: [], deny: [] }` (issue #2), so a filter
119
+ * whose allow/deny are both empty is treated as unconfigured — writing it into
120
+ * a SubagentStartRequest would make the core restrict all tools (tools=0).
121
+ */
122
+ export declare function hasToolFilter(filter: RouteToolFilter | undefined): boolean;
116
123
  /** Core pure resolution logic. */
117
124
  export declare function resolveRoute(input: RouteInput): RouteResult;
118
125
  //# sourceMappingURL=route-resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"route-resolver.d.ts","sourceRoot":"","sources":["../src/route-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D,6DAA6D;AAC7D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjE,yDAAyD;AACzD,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,uEAAuE;IACvE,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iFAAiF;IACjF,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACpD;AAED,iEAAiE;AACjE,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACtC;AAED,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,0EAA0E;AAC1E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,2CAA2C;AAC3C,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,wBAAwB,CAAC;IACnC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,0CAA0C;AAC1C,MAAM,WAAW,WAAW;IAC1B,0EAA0E;IAC1E,KAAK,EAAE,UAAU,CAAC;IAClB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC;IACxD,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,gFAAgF;IAChF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD,kCAAkC;AAClC,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CA4F3D"}
1
+ {"version":3,"file":"route-resolver.d.ts","sourceRoot":"","sources":["../src/route-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D,6DAA6D;AAC7D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjE,yDAAyD;AACzD,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,uEAAuE;IACvE,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iFAAiF;IACjF,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACpD;AAED,iEAAiE;AACjE,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACtC;AAED,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,0EAA0E;AAC1E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,2CAA2C;AAC3C,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,wBAAwB,CAAC;IACnC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,0CAA0C;AAC1C,MAAM,WAAW,WAAW;IAC1B,0EAA0E;IAC1E,KAAK,EAAE,UAAU,CAAC;IAClB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC;IACxD,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,gFAAgF;IAChF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,GAAG,OAAO,CAE1E;AAED,kCAAkC;AAClC,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CA4F3D"}
@@ -1,6 +1,15 @@
1
1
  function isEmpty(value) {
2
2
  return value === undefined || value === '';
3
3
  }
4
+ /**
5
+ * Whether a tool filter actually restricts anything. dsh-settings materializes
6
+ * an absent `toolFilter` as `{ allow: [], deny: [] }` (issue #2), so a filter
7
+ * whose allow/deny are both empty is treated as unconfigured — writing it into
8
+ * a SubagentStartRequest would make the core restrict all tools (tools=0).
9
+ */
10
+ export function hasToolFilter(filter) {
11
+ return filter !== undefined && ((filter.allow?.length ?? 0) > 0 || (filter.deny?.length ?? 0) > 0);
12
+ }
4
13
  /** Core pure resolution logic. */
5
14
  export function resolveRoute(input) {
6
15
  const { args = {}, settings, parent } = input;
@@ -76,7 +85,7 @@ export function resolveRoute(input) {
76
85
  ...(reasoningEffort !== undefined ? { reasoningEffort } : {}),
77
86
  ...(resolvedRoleId !== undefined ? { roleId: resolvedRoleId } : {}),
78
87
  ...(role !== undefined && !isEmpty(role.persona) ? { persona: role.persona } : {}),
79
- ...(role !== undefined && role.toolFilter !== undefined ? { toolFilter: role.toolFilter } : {}),
88
+ ...(role !== undefined && hasToolFilter(role.toolFilter) ? { toolFilter: role.toolFilter } : {}),
80
89
  warnings,
81
90
  };
82
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"route-resolver.js","sourceRoot":"","sources":["../src/route-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route-resolver.js","sourceRoot":"","sources":["../src/route-resolver.ts"],"names":[],"mappings":"AAyHA,SAAS,OAAO,CAAC,KAAyB;IACxC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC;AAC7C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAmC;IAC/D,OAAO,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACrG,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,YAAY,CAAC,KAAiB;IAC5C,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAC9C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,4EAA4E;IAC5E,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACxE,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IAC/D,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IAEpF,6EAA6E;IAC7E,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;IACnC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAChE,MAAM,SAAS,GAAG,YAAY,IAAI,QAAQ,CAAC,WAAW,CAAC;IAEvD,IAAI,IAA8B,CAAC;IACnC,IAAI,cAAkC,CAAC;IACvC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,GAAG,KAAK,CAAC;YACb,cAAc,GAAG,SAAS,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC;YACtG,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACpB,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CACX,2BAA2B,GAAG,SAAS,GAAG,iDAAiD,GAAG,cAAc,GAAG,oCAAoC,CACpJ,CAAC;gBACF,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,cAAc,IAAI,SAAS,EAAE,WAAW,KAAK,SAAS,CACnF,CAAC;gBACF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,QAAQ,CAAC,IAAI,CACX,uDAAuD,GAAG,SAAS,GAAG,eAAe,GAAG,cAAc,GAAG,GAAG,CAC7G,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,CACX,2BAA2B,GAAG,SAAS,GAAG,mEAAmE,CAC9G,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC9F,MAAM,SAAS,GAAG,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IACrF,MAAM,UAAU,GACd,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IAEzF,+EAA+E;IAC/E,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC;IACjG,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;IACxF,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAC5D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAEpC,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,YAAY,IAAI,YAAY,IAAI,eAAe,CAAC;IACjE,MAAM,KAAK,GAAG,SAAS,IAAI,SAAS,IAAI,YAAY,CAAC;IACrD,MAAM,eAAe,GAAG,UAAU,IAAI,UAAU,IAAI,aAAa,CAAC;IAElE,gFAAgF;IAChF,MAAM,YAAY,GAChB,QAAQ,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAC3C,CAAC,CAAC;YACE,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1C;QACH,CAAC,CAAC,SAAS,CAAC;IAEhB,iFAAiF;IACjF,IAAI,KAAK,GAAe,SAAS,CAAC;IAClC,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAClD,IAAI,YAAY,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1D,KAAK,GAAG,MAAM,CAAC;QACjB,CAAC;aAAM,IAAI,YAAY,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACjE,KAAK,GAAG,MAAM,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,SAAS,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK;QACL,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,QAAQ;KACT,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,CAAC,MAAM,0BAA0B,CAAC;AACzC,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAgB,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAElF,qFAAqF;AACrF,eAAO,MAAM,oCAAoC,uDAAyC,CAAC;AAE3F,YAAY,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAElF;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,yEAAyE;IACzE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAC/B,6DAA6D;IAC7D,GAAG,IAAI,CAAC,CAAC;CACV;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAezE;AAKD;6EAC6E;AAC7E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAW7B,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAOzB,CAAC;AAWH;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CA4B9E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,wBAAwB,EAC/B,KAAK,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,GACpD,IAAI,CAQN;AAED,gDAAgD;AAChD,OAAO,EAAE,cAAc,IAAI,8BAA8B,EAAE,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,CAAC,MAAM,0BAA0B,CAAC;AACzC,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAgB,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAElF,qFAAqF;AACrF,eAAO,MAAM,oCAAoC,uDAAyC,CAAC;AAE3F,YAAY,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAElF;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,yEAAyE;IACzE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAC/B,6DAA6D;IAC7D,GAAG,IAAI,CAAC,CAAC;CACV;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAezE;AAKD;6EAC6E;AAC7E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmB7B,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAOzB,CAAC;AAWH;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CA4B9E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,wBAAwB,EAC/B,KAAK,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,GACpD,IAAI,CAQN;AAED,gDAAgD;AAChD,OAAO,EAAE,cAAc,IAAI,8BAA8B,EAAE,CAAC"}
package/lib/settings.js CHANGED
@@ -48,10 +48,18 @@ export const RoleTemplateSchema = z.object({
48
48
  provider: z.string(),
49
49
  model: z.string(),
50
50
  reasoningEffort: z.string(),
51
- toolFilter: z.object({
51
+ // schemastery has no z.optional/z.undefined; an absent object field would
52
+ // otherwise be materialized as { allow: [], deny: [] }, which the route
53
+ // resolver must treat as unconfigured (issue #2). .default(undefined)
54
+ // leaves an absent toolFilter out of the resolved section entirely; an
55
+ // explicitly-set filter still resolves (empty sub-arrays are tolerated by
56
+ // hasToolFilter at resolution time).
57
+ toolFilter: z
58
+ .object({
52
59
  allow: z.array(z.string()),
53
60
  deny: z.array(z.string()),
54
- }),
61
+ })
62
+ .default(undefined),
55
63
  });
56
64
  /**
57
65
  * Schemastery schema for the Subagent Director settings section. Every field is
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,CAAC,MAAM,0BAA0B,CAAC;AACzC,OAAO,EACL,sBAAsB,EACtB,iBAAiB,GAElB,MAAM,2BAA2B,CAAC;AAInC,qFAAqF;AACrF,MAAM,CAAC,MAAM,oCAAoC,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAqB3F,MAAM,UAAU,sBAAsB,CAAI,OAAU;IAClD,IAAI,MAA6B,CAAC;IAClC,IAAI,QAAQ,GAAG,OAAO,CAAC;IACvB,OAAO;QACL,KAAK,EAAE;YACL,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;gBACrB,MAAM,GAAG,OAAO,CAAC;gBACjB,QAAQ,GAAG,OAAO,EAAE,CAAC;YACvB,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,MAAM,KAAK,SAAS;oBAAE,QAAQ,GAAG,MAAM,EAAE,CAAC;YAChD,CAAC;SACF;QACD,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ;KACpB,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,GAAG,4BAA4B,CAAC;AAEhD;6EAC6E;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,0EAA0E;IAC1E,wEAAwE;IACxE,sEAAsE;IACtE,uEAAuE;IACvE,0EAA0E;IAC1E,qCAAqC;IACrC,UAAU,EAAE,CAAC;SACV,MAAM,CAAC;QACN,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KAC1B,CAAC;SACD,OAAO,CAAC,SAAkB,CAAC;CAC/B,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE;IAClC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC5C,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC;CAClC,CAAC,CAAC;AAEH,SAAS,OAAO,CAAC,KAAgC;IAC/C,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED,+DAA+D;AAC/D,SAAS,aAAa,CAAC,KAAgC;IACrD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAA+B;IACtE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;IAChC,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,8BAA8B,GAAG,EAAE,GAAG,oEAAoE,CAC3G,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,EAAE,GAAG,qCAAqC,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,EAAE,GAAG,qCAAqC,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,EAAE,GAAG,gDAAgD,CAAC,CAAC;QACvG,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,WAAY,CAAC,KAAK,SAAS,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CACb,kCAAkC,GAAG,KAAK,CAAC,WAAW,GAAG,qCAAqC,CAC/F,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CACrC,GAAY,EACZ,KAA+B,EAC/B,KAAqD;IAErD,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE,CAAC;QACtC,GAAG,CAAC,MAAM,CAAC,KAAK,CACd,sHAAsH,CACvH,CAAC;QACF,OAAO;IACT,CAAC;IACD,sBAAsB,CAAC,GAAG,EAAE,oCAAoC,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAClG,CAAC;AAED,gDAAgD;AAChD,OAAO,EAAE,cAAc,IAAI,8BAA8B,EAAE,CAAC"}