@dsh-workbench/core 0.2.16 → 0.3.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 (193) hide show
  1. package/README.md +6 -2
  2. package/bin/dsh-workbench +17 -15
  3. package/client.js +359 -64
  4. package/dist/client/client.body.js +359 -64
  5. package/dist/client/index.js +658 -2978
  6. package/dist/host/index.js +443 -385
  7. package/dist/types/app/client.d.ts +3 -0
  8. package/dist/types/app/layouts/rightbar/BoardGrid.d.ts +23 -0
  9. package/dist/types/app/layouts/rightbar/board-columns.d.ts +17 -4
  10. package/dist/types/app/layouts/rightbar/rightbar-width.d.ts +16 -0
  11. package/dist/types/app/layouts/rightbar/use-board-split.d.ts +8 -0
  12. package/dist/types/modules/panels/model/diy-report.d.ts +13 -2
  13. package/dist/types/shared/api/host/diy-workshop.d.ts +13 -0
  14. package/dist/types/shared/api/host/runtime-seed.d.ts +0 -2
  15. package/docs/HANDOFF.md +43 -10
  16. package/docs/OPERATIONS.md +52 -0
  17. package/package.json +4 -3
  18. package/preset/diy.patch.yml +3 -0
  19. package/scripts/seed-workshop.sh +461 -13
  20. package/skills/workbench-module-diy/BUILD.md +11 -7
  21. package/skills/workbench-module-diy/DATASOURCE.md +3 -4
  22. package/skills/workbench-module-diy/DESIGN.md +3 -4
  23. package/skills/workbench-module-diy/KIT.md +11 -12
  24. package/skills/workbench-module-diy/LINKAGE.md +6 -7
  25. package/skills/workbench-module-diy/PANEL.md +9 -10
  26. package/skills/workbench-module-diy/REVIEW.md +2 -3
  27. package/skills/workbench-module-diy/SKILL.md +2 -3
  28. package/skills/workbench-module-diy/TOOLING.md +3 -8
  29. package/skills/workbench-module-diy/TOOLS.md +4 -9
  30. package/skills/workbench-module-diy/WIRING.md +3 -3
  31. package/dist/types/app/layouts/__tests__/async-feedback.test.d.ts +0 -1
  32. package/dist/types/app/layouts/__tests__/kit-preview-nav.test.d.ts +0 -1
  33. package/dist/types/app/layouts/__tests__/panel-hint.test.d.ts +0 -1
  34. package/dist/types/app/layouts/__tests__/project-selection.test.d.ts +0 -1
  35. package/dist/types/app/layouts/env-gate/__tests__/force-plan.test.d.ts +0 -1
  36. package/dist/types/app/layouts/env-gate/__tests__/gate-deadline.test.d.ts +0 -1
  37. package/dist/types/app/layouts/env-gate/__tests__/gate-hidden.test.d.ts +0 -1
  38. package/dist/types/app/layouts/env-gate/__tests__/gate-mocks.test.d.ts +0 -1
  39. package/dist/types/app/layouts/env-gate/gate-mock.d.ts +0 -18
  40. package/dist/types/app/layouts/market/__tests__/add-module-mock.test.d.ts +0 -1
  41. package/dist/types/app/layouts/market/__tests__/add-module-stages.test.d.ts +0 -1
  42. package/dist/types/app/layouts/market/__tests__/add-module-text.test.d.ts +0 -1
  43. package/dist/types/app/layouts/market/add-module-mock.d.ts +0 -14
  44. package/dist/types/app/layouts/rightbar/BoardMockStrip.d.ts +0 -5
  45. package/dist/types/app/layouts/rightbar/__tests__/board-fact.test.d.ts +0 -1
  46. package/dist/types/app/layouts/rightbar/__tests__/board-mock.test.d.ts +0 -1
  47. package/dist/types/app/layouts/rightbar/__tests__/board-plan.test.d.ts +0 -1
  48. package/dist/types/app/layouts/rightbar/__tests__/board-selection.test.d.ts +0 -1
  49. package/dist/types/app/layouts/rightbar/__tests__/breadcrumbs.test.d.ts +0 -1
  50. package/dist/types/app/layouts/rightbar/__tests__/market-catalog.test.d.ts +0 -1
  51. package/dist/types/app/layouts/rightbar/__tests__/market-change.test.d.ts +0 -1
  52. package/dist/types/app/layouts/rightbar/__tests__/market-dots.test.d.ts +0 -1
  53. package/dist/types/app/layouts/rightbar/__tests__/market-freshness.test.d.ts +0 -1
  54. package/dist/types/app/layouts/rightbar/__tests__/market-hint-visible.test.d.ts +0 -1
  55. package/dist/types/app/layouts/rightbar/__tests__/market-installed.test.d.ts +0 -1
  56. package/dist/types/app/layouts/rightbar/__tests__/market-live.test.d.ts +0 -1
  57. package/dist/types/app/layouts/rightbar/__tests__/market-mock.test.d.ts +0 -1
  58. package/dist/types/app/layouts/rightbar/__tests__/market-order.test.d.ts +0 -1
  59. package/dist/types/app/layouts/rightbar/__tests__/market-row-icon.test.d.ts +0 -1
  60. package/dist/types/app/layouts/rightbar/__tests__/market-rows-libs.test.d.ts +0 -1
  61. package/dist/types/app/layouts/rightbar/__tests__/market-rows-plugins.test.d.ts +0 -1
  62. package/dist/types/app/layouts/rightbar/__tests__/market-rows.test.d.ts +0 -1
  63. package/dist/types/app/layouts/rightbar/__tests__/market-running-display.test.d.ts +0 -1
  64. package/dist/types/app/layouts/rightbar/__tests__/market-section-icon.test.d.ts +0 -1
  65. package/dist/types/app/layouts/rightbar/__tests__/market-settle.test.d.ts +0 -1
  66. package/dist/types/app/layouts/rightbar/__tests__/market-shared.test.d.ts +0 -1
  67. package/dist/types/app/layouts/rightbar/__tests__/market-state-rules.test.d.ts +0 -1
  68. package/dist/types/app/layouts/rightbar/__tests__/market-workbench-act.test.d.ts +0 -1
  69. package/dist/types/app/layouts/rightbar/__tests__/market-workbench.test.d.ts +0 -1
  70. package/dist/types/app/layouts/rightbar/__tests__/panel-dismiss.test.d.ts +0 -1
  71. package/dist/types/app/layouts/rightbar/__tests__/panel-drag-target.test.d.ts +0 -1
  72. package/dist/types/app/layouts/rightbar/__tests__/panel-mock.test.d.ts +0 -1
  73. package/dist/types/app/layouts/rightbar/__tests__/panel-plugin-rows.test.d.ts +0 -1
  74. package/dist/types/app/layouts/rightbar/__tests__/panel-scope-ui.test.d.ts +0 -1
  75. package/dist/types/app/layouts/rightbar/__tests__/panel-write.test.d.ts +0 -1
  76. package/dist/types/app/layouts/rightbar/__tests__/suite-world.test.d.ts +0 -1
  77. package/dist/types/app/layouts/rightbar/__tests__/use-panels.test.d.ts +0 -1
  78. package/dist/types/app/layouts/rightbar/board-mock.d.ts +0 -22
  79. package/dist/types/app/layouts/rightbar/kit-preview-controls.d.ts +0 -11
  80. package/dist/types/app/layouts/rightbar/kit-preview-frame.d.ts +0 -18
  81. package/dist/types/app/layouts/rightbar/kit-preview-hash.d.ts +0 -1
  82. package/dist/types/app/layouts/rightbar/kit-preview-rows.d.ts +0 -6
  83. package/dist/types/app/layouts/rightbar/kit-preview.d.ts +0 -3
  84. package/dist/types/app/layouts/rightbar/market-installed-mock.d.ts +0 -9
  85. package/dist/types/app/layouts/rightbar/market-mock-types.d.ts +0 -58
  86. package/dist/types/app/layouts/rightbar/market-mock.d.ts +0 -4
  87. package/dist/types/app/layouts/rightbar/panel-mock.d.ts +0 -27
  88. package/dist/types/app/layouts/sidebar/__tests__/current-workspace.test.d.ts +0 -1
  89. package/dist/types/app/layouts/sidebar/__tests__/debug-ui.test.d.ts +0 -1
  90. package/dist/types/app/layouts/sidebar/__tests__/session-pick.test.d.ts +0 -1
  91. package/dist/types/app/layouts/sidebar/__tests__/session-row-ui.test.d.ts +0 -1
  92. package/dist/types/app/layouts/sidebar/__tests__/workspace-groups.test.d.ts +0 -1
  93. package/dist/types/app/layouts/sidebar/__tests__/workspace-name.test.d.ts +0 -1
  94. package/dist/types/app/units/__tests__/fixture-unit-mock.test.d.ts +0 -1
  95. package/dist/types/app/units/__tests__/manifests.test.d.ts +0 -1
  96. package/dist/types/app/units/__tests__/registry.test.d.ts +0 -1
  97. package/dist/types/app/units/fixture-unit-mock.d.ts +0 -7
  98. package/dist/types/dev/MockStrip.d.ts +0 -15
  99. package/dist/types/dev/surface-types.d.ts +0 -53
  100. package/dist/types/dev/surface.d.ts +0 -2
  101. package/dist/types/dev/surface.stub.d.ts +0 -2
  102. package/dist/types/modules/panels/__tests__/approval.test.d.ts +0 -1
  103. package/dist/types/modules/panels/__tests__/config.test.d.ts +0 -1
  104. package/dist/types/modules/panels/__tests__/diy-harness.d.ts +0 -105
  105. package/dist/types/modules/panels/__tests__/diy-report.test.d.ts +0 -1
  106. package/dist/types/modules/panels/__tests__/diy-tools-health.test.d.ts +0 -1
  107. package/dist/types/modules/panels/__tests__/diy-tools-panel.test.d.ts +0 -1
  108. package/dist/types/modules/panels/__tests__/diy-tools-status.test.d.ts +0 -1
  109. package/dist/types/modules/panels/__tests__/diy-tools.test.d.ts +0 -1
  110. package/dist/types/modules/panels/__tests__/face.test.d.ts +0 -1
  111. package/dist/types/modules/panels/__tests__/market-bundle.test.d.ts +0 -1
  112. package/dist/types/modules/panels/__tests__/market-dependency.test.d.ts +0 -1
  113. package/dist/types/modules/panels/__tests__/market-dispatch.test.d.ts +0 -1
  114. package/dist/types/modules/panels/__tests__/market-env.test.d.ts +0 -1
  115. package/dist/types/modules/panels/__tests__/market-plugin.test.d.ts +0 -1
  116. package/dist/types/modules/panels/__tests__/market-registries.test.d.ts +0 -1
  117. package/dist/types/modules/panels/__tests__/market-route.test.d.ts +0 -1
  118. package/dist/types/modules/panels/__tests__/market-tools-harness.d.ts +0 -45
  119. package/dist/types/modules/panels/__tests__/market-tools.test.d.ts +0 -1
  120. package/dist/types/modules/panels/__tests__/market-update.test.d.ts +0 -1
  121. package/dist/types/modules/panels/__tests__/market-workbench-update.test.d.ts +0 -1
  122. package/dist/types/modules/panels/__tests__/market.test.d.ts +0 -1
  123. package/dist/types/modules/panels/__tests__/plugin-actions.test.d.ts +0 -1
  124. package/dist/types/modules/panels/__tests__/plugin-ledger.test.d.ts +0 -1
  125. package/dist/types/modules/panels/__tests__/plugin-panel-market-parity.test.d.ts +0 -1
  126. package/dist/types/modules/panels/__tests__/plugin-panel.test.d.ts +0 -1
  127. package/dist/types/modules/panels/__tests__/plugin-section.test.d.ts +0 -1
  128. package/dist/types/modules/panels/__tests__/plugin-tool-units-harness.d.ts +0 -69
  129. package/dist/types/modules/panels/__tests__/plugin-tool-units.test.d.ts +0 -1
  130. package/dist/types/modules/panels/__tests__/prefs.test.d.ts +0 -1
  131. package/dist/types/modules/panels/__tests__/routes.test.d.ts +0 -1
  132. package/dist/types/modules/panels/__tests__/scope-machine.test.d.ts +0 -1
  133. package/dist/types/modules/panels/__tests__/scope-support.d.ts +0 -51
  134. package/dist/types/modules/panels/__tests__/scope.test.d.ts +0 -1
  135. package/dist/types/modules/panels/__tests__/service-release.test.d.ts +0 -1
  136. package/dist/types/modules/panels/__tests__/service.test.d.ts +0 -1
  137. package/dist/types/modules/panels/__tests__/tools.test.d.ts +0 -1
  138. package/dist/types/shared/__tests__/host-import-barrel.test.d.ts +0 -1
  139. package/dist/types/shared/__tests__/i18n-keys.test.d.ts +0 -1
  140. package/dist/types/shared/api/__tests__/context-ref.test.d.ts +0 -1
  141. package/dist/types/shared/api/host/__tests__/approval-note-injection.test.d.ts +0 -1
  142. package/dist/types/shared/api/host/__tests__/capability-force.test.d.ts +0 -1
  143. package/dist/types/shared/api/host/__tests__/cli-error.test.d.ts +0 -1
  144. package/dist/types/shared/api/host/__tests__/config-sync.test.d.ts +0 -1
  145. package/dist/types/shared/api/host/__tests__/context-inject.test.d.ts +0 -1
  146. package/dist/types/shared/api/host/__tests__/data-root.test.d.ts +0 -1
  147. package/dist/types/shared/api/host/__tests__/diy-debug-act.test.d.ts +0 -1
  148. package/dist/types/shared/api/host/__tests__/events.test.d.ts +0 -1
  149. package/dist/types/shared/api/host/__tests__/fact-writes.test.d.ts +0 -1
  150. package/dist/types/shared/api/host/__tests__/facts.test.d.ts +0 -1
  151. package/dist/types/shared/api/host/__tests__/host-args.test.d.ts +0 -1
  152. package/dist/types/shared/api/host/__tests__/long-task.test.d.ts +0 -1
  153. package/dist/types/shared/api/host/__tests__/panel-state-route.test.d.ts +0 -1
  154. package/dist/types/shared/api/host/__tests__/plugin-catalog.test.d.ts +0 -1
  155. package/dist/types/shared/api/host/__tests__/plugin-login-hint.test.d.ts +0 -1
  156. package/dist/types/shared/api/host/__tests__/plugin-source.test.d.ts +0 -1
  157. package/dist/types/shared/api/host/__tests__/plugin-tools.test.d.ts +0 -1
  158. package/dist/types/shared/api/host/__tests__/png-fixtures.d.ts +0 -17
  159. package/dist/types/shared/api/host/__tests__/post-channels.test.d.ts +0 -1
  160. package/dist/types/shared/api/host/__tests__/preflight-fixtures.d.ts +0 -19
  161. package/dist/types/shared/api/host/__tests__/preflight-warm.test.d.ts +0 -1
  162. package/dist/types/shared/api/host/__tests__/preflight.test.d.ts +0 -1
  163. package/dist/types/shared/api/host/__tests__/probe-cache.test.d.ts +0 -1
  164. package/dist/types/shared/api/host/__tests__/probe-libs.test.d.ts +0 -1
  165. package/dist/types/shared/api/host/__tests__/probe-units-cache.test.d.ts +0 -1
  166. package/dist/types/shared/api/host/__tests__/probe-units-npm-source.test.d.ts +0 -1
  167. package/dist/types/shared/api/host/__tests__/probe-units-release.test.d.ts +0 -1
  168. package/dist/types/shared/api/host/__tests__/probe-units.test.d.ts +0 -1
  169. package/dist/types/shared/api/host/__tests__/probe-verdict.test.d.ts +0 -1
  170. package/dist/types/shared/api/host/__tests__/profile-registries.test.d.ts +0 -1
  171. package/dist/types/shared/api/host/__tests__/provision-dependency.test.d.ts +0 -1
  172. package/dist/types/shared/api/host/__tests__/registry-declaration.test.d.ts +0 -1
  173. package/dist/types/shared/api/host/__tests__/release.test.d.ts +0 -1
  174. package/dist/types/shared/api/host/__tests__/self-update.test.d.ts +0 -1
  175. package/dist/types/shared/api/host/__tests__/tool-approval.test.d.ts +0 -1
  176. package/dist/types/shared/api/host/__tests__/tool-kit.test.d.ts +0 -1
  177. package/dist/types/shared/api/host/__tests__/tool-scope.test.d.ts +0 -1
  178. package/dist/types/shared/api/host/__tests__/tool-surface.test.d.ts +0 -1
  179. package/dist/types/shared/api/host/__tests__/unit-face.test.d.ts +0 -1
  180. package/dist/types/shared/api/host/__tests__/unit-readiness.test.d.ts +0 -1
  181. package/dist/types/shared/api/host/__tests__/unit-registry.test.d.ts +0 -1
  182. package/dist/types/shared/api/host/__tests__/unit-roster-facts.test.d.ts +0 -1
  183. package/dist/types/shared/api/host/__tests__/value-handoff.test.d.ts +0 -1
  184. package/dist/types/shared/api/host/__tests__/version-range.test.d.ts +0 -1
  185. package/dist/types/shared/api/host/__tests__/workspace-store.test.d.ts +0 -1
  186. package/dist/types/shared/api/host/__tests__/write-result.test.d.ts +0 -1
  187. package/dist/types/shared/hooks/__tests__/mock-mode.test.d.ts +0 -1
  188. package/dist/types/shared/hooks/__tests__/use-api-resource.test.d.ts +0 -1
  189. package/dist/types/shared/hooks/__tests__/use-capabilities.test.d.ts +0 -1
  190. package/dist/types/shared/hooks/__tests__/use-visible-busy.test.d.ts +0 -1
  191. package/dist/types/shared/hooks/mock-mode.d.ts +0 -2
  192. package/dist/types/shared/hooks/use-fixture-pick.d.ts +0 -20
  193. /package/dist/types/app/{__tests__/workbench-styles.test.d.ts → layouts/rightbar/rightbar-width.test.d.ts} +0 -0
@@ -1,58 +0,0 @@
1
- import type { InstalledWorkbenchModule } from './market-rows';
2
- import type { InstalledPlugin } from '../../../shared/api/installed-plugins';
3
- import type { UnitManifest } from '@dsh-workbench/shared';
4
- import type { MarketRowAction, ModuleUpdateMap } from './market-rows';
5
- import type { CapabilityMap } from '../../../shared/hooks/use-capabilities';
6
- import type { MarketState } from './market-rows';
7
- import type { WorkbenchVersion } from '../../../shared/api/bundle-install';
8
- export interface MarketMockExpect {
9
- readonly rows: number;
10
- readonly state?: MarketState;
11
- readonly actions?: readonly MarketRowAction[];
12
- readonly titleChars?: number;
13
- readonly shared?: number;
14
- readonly installed?: number;
15
- readonly installedState?: MarketState;
16
- readonly installedActions?: readonly MarketRowAction[];
17
- readonly installedNote?: boolean;
18
- readonly installedHint?: string;
19
- readonly sharedActions?: readonly MarketRowAction[];
20
- readonly plugins?: number;
21
- readonly pluginActions?: readonly MarketRowAction[];
22
- readonly pluginNote?: boolean;
23
- readonly pluginNoteKey?: 'panels.market.pluginBroken';
24
- readonly pluginState?: MarketState;
25
- readonly notice?: boolean;
26
- readonly local?: boolean;
27
- readonly noteKey?: 'panels.market.needCommands';
28
- readonly version?: {
29
- readonly installed?: string;
30
- readonly latest?: string;
31
- };
32
- readonly workbenchState?: MarketState;
33
- readonly workbenchActions?: readonly MarketRowAction[];
34
- readonly workbenchNoteKey?: 'panels.market.workbenchLocal';
35
- }
36
- export interface MarketMock {
37
- readonly id: string;
38
- readonly label: string;
39
- readonly manifests: readonly UnitManifest[];
40
- readonly capabilities: CapabilityMap | null;
41
- readonly pending?: {
42
- readonly id: string;
43
- readonly action: MarketRowAction;
44
- };
45
- readonly updates?: ModuleUpdateMap;
46
- readonly installed?: readonly InstalledWorkbenchModule[];
47
- readonly workbench?: WorkbenchVersion;
48
- readonly installedRead?: boolean;
49
- readonly plugins?: readonly InstalledPlugin[];
50
- readonly loaded?: boolean;
51
- readonly confirming?: string;
52
- readonly failure?: {
53
- readonly id: string;
54
- readonly message: string;
55
- };
56
- readonly notice?: string;
57
- readonly expect: MarketMockExpect;
58
- }
@@ -1,4 +0,0 @@
1
- import type { UnitManifest } from '@dsh-workbench/shared';
2
- import type { MarketMock } from './market-mock-types';
3
- export type { MarketMock, MarketMockExpect } from './market-mock-types';
4
- export declare function buildMarketMocks(roster: readonly UnitManifest[]): readonly MarketMock[];
@@ -1,27 +0,0 @@
1
- import type { UnitManifest } from '@dsh-workbench/shared';
2
- import type { CapabilityMap } from '../../../shared/hooks/use-capabilities';
3
- import type { PanelPluginUnit, PanelUnit } from './use-panels';
4
- export interface PanelMockExpect {
5
- readonly rows: number;
6
- readonly badge?: string | null;
7
- readonly on?: boolean;
8
- }
9
- export interface PanelMock {
10
- readonly id: string;
11
- readonly label: string;
12
- readonly units: readonly PanelUnit[];
13
- readonly plugins?: readonly PanelPluginUnit[];
14
- readonly capabilities: CapabilityMap | null;
15
- readonly busy?: boolean;
16
- readonly failed?: boolean;
17
- readonly drag?: {
18
- readonly from: number;
19
- readonly over: number | null;
20
- readonly at?: {
21
- readonly x: number;
22
- readonly y: number;
23
- };
24
- } | undefined;
25
- readonly expect: PanelMockExpect;
26
- }
27
- export declare function buildPanelMocks(roster: readonly UnitManifest[]): readonly PanelMock[];
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,7 +0,0 @@
1
- import type { BoardModule, UnitManifest, UnitOwnedClientFace } from '@dsh-workbench/shared';
2
- export declare const FIXTURE_UNIT_ID = "wb-fixture";
3
- export declare const CRASH_UNIT_ID = "wb-fixture-crash";
4
- export declare const FIXTURE_FACE: UnitOwnedClientFace;
5
- export declare const CRASH_FACE: UnitOwnedClientFace;
6
- export declare function fixtureRoster(roster: readonly UnitManifest[]): readonly UnitManifest[];
7
- export declare function fixtureSeed(roster: readonly UnitManifest[], all: readonly BoardModule[], crash?: boolean): readonly BoardModule[];
@@ -1,15 +0,0 @@
1
- import '@/shared/styles/mock-strip.css';
2
- export declare function MockStrip({ mocks, index, onPick, note, real, }: {
3
- readonly mocks: readonly {
4
- readonly id: string;
5
- readonly label: string;
6
- }[];
7
- readonly index: number;
8
- readonly onPick: (next: number) => void;
9
- readonly note?: string;
10
- readonly real?: {
11
- readonly label: string;
12
- readonly active: boolean;
13
- readonly onPick: () => void;
14
- } | undefined;
15
- }): JSX.Element;
@@ -1,53 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import type { BoardModule, UnitManifest } from '@dsh-workbench/shared';
3
- import type { PreflightSnapshot } from '../shared/api/host/preflight';
4
- import type { BoardShape } from '../app/layouts/rightbar/board-shape';
5
- import type { AddModuleMock } from '../app/layouts/market/add-module-mock';
6
- import type { AddModuleState } from '../app/layouts/market/use-add-module';
7
- export interface DevPickable {
8
- readonly id: string;
9
- readonly label: string;
10
- }
11
- export interface DevPickOptions<T extends DevPickable> {
12
- readonly fixtures: readonly T[];
13
- readonly selected?: string | null | undefined;
14
- readonly onSelect?: ((id: string | null) => void) | undefined;
15
- readonly enabled?: boolean | undefined;
16
- readonly initial?: string | null | undefined;
17
- }
18
- export interface DevPick<T extends DevPickable> {
19
- readonly enabled: boolean;
20
- readonly active: string | null;
21
- readonly current: T | undefined;
22
- readonly nonce: number;
23
- readonly index: number;
24
- pick(id: string | null): void;
25
- }
26
- export interface DevStrips<T extends DevPickable> {
27
- readonly pick: DevPick<T>;
28
- readonly current: T | undefined;
29
- readonly enabled: boolean;
30
- readonly strip: ReactNode;
31
- }
32
- export interface DevBoard {
33
- readonly shape: BoardShape;
34
- readonly seed: readonly BoardModule[];
35
- readonly strip: (show: boolean) => ReactNode;
36
- readonly mode: boolean;
37
- }
38
- export type DevStripSite = 'panel' | 'market' | 'addModule';
39
- export interface DevSurface {
40
- on(search: string): boolean;
41
- crash(search: string): boolean;
42
- useBoard(input: {
43
- readonly manifests: readonly UnitManifest[];
44
- readonly all: readonly BoardModule[];
45
- readonly search: string;
46
- }): DevBoard;
47
- useStrips<T extends DevPickable>(site: DevStripSite, manifests: readonly UnitManifest[]): DevStrips<T>;
48
- addModuleState(base: AddModuleState, mock: AddModuleMock): AddModuleState;
49
- gateStrip(options: {
50
- readonly onPick: (snapshot: PreflightSnapshot | null) => void;
51
- }): HTMLElement | null;
52
- readonly kitModule: BoardModule | null;
53
- }
@@ -1,2 +0,0 @@
1
- import type { DevSurface } from './surface-types';
2
- export declare const devSurface: DevSurface;
@@ -1,2 +0,0 @@
1
- import type { DevSurface } from './surface-types';
2
- export declare const devSurface: DevSurface;
@@ -1 +0,0 @@
1
- export {};
@@ -1,105 +0,0 @@
1
- import type { UnitManifest } from '@dsh-workbench/shared';
2
- import { type DebugStore, type PanelStateStore } from '@dsh-workbench/shared/host';
3
- import type { BundleInstallOutcome } from '../model/market';
4
- import { panelsUnit } from '../unit';
5
- export type Application = 'applied' | 'restart-required' | 'overridden' | 'cancelled' | 'failed';
6
- export interface ProbeStep {
7
- readonly stdout?: string;
8
- readonly stderr?: string;
9
- readonly exitCode?: number;
10
- readonly timedOut?: boolean;
11
- }
12
- export declare const demoUnit: UnitManifest;
13
- export { panelsUnit };
14
- export declare function createDiyRig(): {
15
- root: () => string;
16
- WORKSHOP: () => string;
17
- PACKAGES: () => string;
18
- PROFILE: () => string;
19
- writeManifest: (at: string, manifest: unknown) => void;
20
- scaffold: (unit: string, description?: string) => string;
21
- markInstalled: (pkg: string, at: string) => void;
22
- outcomeOf: (application: Application) => BundleInstallOutcome;
23
- diyExec: (sessionId?: string) => unknown;
24
- NORMAL_EXEC: {
25
- agent: {
26
- session: {
27
- id: string;
28
- header: {
29
- cwd: string;
30
- };
31
- };
32
- };
33
- };
34
- fakeShell: (plan: readonly ProbeStep[]) => {
35
- shell: never;
36
- commands: string[];
37
- };
38
- harness: (options?: {
39
- manifests?: UnitManifest[];
40
- outcome?: BundleInstallOutcome;
41
- withTools?: boolean;
42
- probe?: readonly ProbeStep[];
43
- mounted?: readonly string[];
44
- refused?: readonly {
45
- unit: string;
46
- reasons: readonly string[];
47
- }[];
48
- failures?: Readonly<Record<string, string>>;
49
- panelState?: PanelStateStore;
50
- debug?: DebugStore;
51
- }) => {
52
- specs: string[];
53
- registered: {
54
- name: string;
55
- parameters?: Record<string, unknown>;
56
- execute: (args: unknown, exec?: unknown) => Promise<unknown>;
57
- }[];
58
- tool: (name: string) => {
59
- name: string;
60
- parameters?: Record<string, unknown>;
61
- execute: (args: unknown, exec?: unknown) => Promise<unknown>;
62
- };
63
- ctx: {
64
- get: (key: string) => DebugStore | PanelStateStore | {
65
- all: () => {
66
- unit: string;
67
- }[];
68
- refusals: () => readonly {
69
- unit: string;
70
- reasons: readonly string[];
71
- }[];
72
- failureOf: (unit: string) => string | undefined;
73
- } | ((relative: string) => string) | {
74
- register(definition: {
75
- name: string;
76
- parameters?: Record<string, unknown>;
77
- execute: (args: unknown, exec?: unknown) => Promise<unknown>;
78
- }): () => void;
79
- dir?: undefined;
80
- } | {
81
- dir: string;
82
- register?: undefined;
83
- } | undefined;
84
- logger: {
85
- info: () => void;
86
- warn: () => void;
87
- };
88
- };
89
- panels: import("../model/service").PanelsService;
90
- panelState: PanelStateStore;
91
- debug: DebugStore;
92
- registry: {
93
- all: () => {
94
- unit: string;
95
- }[];
96
- refusals: () => readonly {
97
- unit: string;
98
- reasons: readonly string[];
99
- }[];
100
- failureOf: (unit: string) => string | undefined;
101
- };
102
- disposers: (() => void)[];
103
- commands: string[];
104
- };
105
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,45 +0,0 @@
1
- import type { UnitCapability } from '../../../shared/api/host/probe-units';
2
- import type { BundleManager } from '../../../shared/api/host/bundle-manager';
3
- import type { InstalledModule, ProfileModule, ProfilePackage } from '../../../shared/api/host/installed-module';
4
- import type { PluginSource, UnitManifest } from '@dsh-workbench/shared';
5
- import { type SelfUpdateRequest } from '../../../shared/api/host/self-update';
6
- import { type PluginLedger } from '../model/plugin-ledger';
7
- export declare function unit(id: string, plugin: string, source?: PluginSource): UnitManifest;
8
- export declare function libUnit(id: string, libName: string): UnitManifest;
9
- export declare function cleanupRoots(): void;
10
- export declare function ledgerWith(entries: readonly {
11
- pkg: string;
12
- name?: string;
13
- registry?: string;
14
- }[]): PluginLedger;
15
- export declare function harness(options: {
16
- manifests: UnitManifest[];
17
- statuses?: Readonly<Record<string, UnitCapability['status']>>;
18
- withShell?: boolean;
19
- bundles?: BundleManager;
20
- installed?: (pkg: string) => InstalledModule;
21
- modules?: () => readonly ProfileModule[];
22
- workbench?: (pkg: string) => ProfilePackage | undefined;
23
- ledger?: PluginLedger;
24
- references?: {
25
- readonly trustworthy: boolean;
26
- };
27
- npmLatest?: string;
28
- npmMissing?: readonly string[];
29
- profileName?: string | null;
30
- }): {
31
- registered: {
32
- name: string;
33
- execute: (args: unknown) => Promise<unknown>;
34
- }[];
35
- fake: {
36
- shell: import("@dsh-workbench/shared").DshShell;
37
- calls: import("@dsh-workbench/shared/testing").ShellCall[];
38
- peak: () => number;
39
- commands: () => string[];
40
- };
41
- disposers: (() => void)[];
42
- selfUpdates: SelfUpdateRequest[];
43
- };
44
- export declare function fakeBundles(over?: Partial<BundleManager>): BundleManager;
45
- export declare function call(h: ReturnType<typeof harness>, name: string, args?: unknown): Promise<Record<string, unknown>>;
@@ -1 +0,0 @@
1
- export {};
@@ -1,69 +0,0 @@
1
- import type { DshToolDefinition } from '@dsh-workbench/shared';
2
- import { type WorkspaceStore } from '@dsh-workbench/shared/host';
3
- import { createPluginUnits } from '../../../shared/api/host/plugin-units';
4
- import { type UnitRegistry } from '../../../shared/api/host/unit-registry';
5
- import type { PluginLedger } from '../model/plugin-ledger';
6
- import { type PanelsService } from '../model/service';
7
- export declare const COMMANDS: ({
8
- site: string;
9
- name: string;
10
- description: string;
11
- access: string;
12
- browser: boolean;
13
- siteSession: string;
14
- domain: string;
15
- args: {
16
- name: string;
17
- type: string;
18
- required: boolean;
19
- help: string;
20
- }[];
21
- } | {
22
- site: string;
23
- name: string;
24
- description: string;
25
- access: string;
26
- browser: boolean;
27
- args: {
28
- name: string;
29
- type: string;
30
- required: boolean;
31
- help: string;
32
- }[];
33
- siteSession?: undefined;
34
- domain?: undefined;
35
- })[];
36
- export interface Harness {
37
- readonly registry: UnitRegistry;
38
- readonly panels: PanelsService;
39
- readonly tools: Map<string, DshToolDefinition>;
40
- readonly gate: {
41
- deniedTools(workspace: string | null): readonly string[];
42
- };
43
- readonly manager: ReturnType<typeof createPluginUnits>;
44
- readonly problems: string[];
45
- readonly definitions: () => DshToolDefinition[];
46
- readonly commands: () => readonly string[];
47
- readonly opencliCalls: () => readonly {
48
- readonly args: readonly string[];
49
- readonly workdir?: string;
50
- readonly session?: string;
51
- }[];
52
- readonly toolOf: (name: string) => DshToolDefinition | undefined;
53
- readonly ownerOf: (name: string) => {
54
- readonly needsApproval?: unknown;
55
- readonly manifest: unknown;
56
- } | undefined;
57
- readonly units: () => readonly string[];
58
- }
59
- export declare function deny(h: Harness, workspace: string): string[];
60
- export declare function harnessOf(options: {
61
- readonly store: WorkspaceStore;
62
- readonly ledger: PluginLedger;
63
- readonly pluginRows: () => unknown;
64
- readonly commands?: unknown;
65
- readonly declared?: ReadonlyMap<string, ReadonlySet<string>>;
66
- readonly moduleTools?: readonly string[];
67
- readonly opencliReplies?: readonly unknown[];
68
- readonly failTools?: readonly string[];
69
- }): Harness;
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,51 +0,0 @@
1
- import type { UnitManifest, UnitTool } from '@dsh-workbench/shared';
2
- import { type WorkspaceStore } from '@dsh-workbench/shared/host';
3
- import type { PanelEntry } from '../model/config';
4
- import { type PanelsService } from '../model/service';
5
- export declare const A = "/w/a";
6
- export declare const B = "/w/b";
7
- export declare const MACHINE_BOARD: string[];
8
- export declare const WORKSPACE_BOARD: string[];
9
- export declare function tool(name: string): UnitTool;
10
- export declare function unit(id: string, order: number, tools?: readonly UnitTool[], card?: boolean): UnitManifest;
11
- export declare const MACHINE_UNIT: UnitManifest;
12
- export declare const BOARDED_UNIT: UnitManifest;
13
- export declare const PROJECT_UNIT: UnitManifest;
14
- export declare const MIXED_UNIT: UnitManifest;
15
- export declare const UNITS: UnitManifest[];
16
- export declare let root: string;
17
- export declare let store: WorkspaceStore;
18
- export declare function mount(manifests?: readonly UnitManifest[], owned?: readonly string[]): PanelsService;
19
- export declare function writeBoard(workspace: string | null, shown: readonly string[]): void;
20
- export declare function writeBoardWith(workspace: string | null, shown: readonly string[], hidden: readonly string[]): void;
21
- export declare function fakeCtx(): {
22
- get: () => undefined;
23
- provide: () => () => void;
24
- logger: {
25
- info: () => void;
26
- warn: () => void;
27
- };
28
- };
29
- export declare function gate(manifests?: readonly UnitManifest[], owned?: readonly string[], ctx?: unknown): import("@dsh-workbench/shared/host").UnitMountResult;
30
- export declare function denied(mounted: ReturnType<typeof gate>, workspace: string): string[];
31
- export declare const EXEC: {
32
- agent: {
33
- session: {
34
- header: {
35
- cwd: string;
36
- };
37
- };
38
- };
39
- };
40
- interface RanTool {
41
- readonly text: string;
42
- readonly units: PanelEntry[];
43
- }
44
- export declare function toolHarness(manifests?: readonly UnitManifest[], owned?: readonly string[]): {
45
- panels: PanelsService;
46
- run: (name: string, args: Record<string, unknown>, exec?: unknown) => Promise<RanTool>;
47
- };
48
- export declare function machineConfig(): string;
49
- export declare function workspaceConfig(workspace: string): string;
50
- export declare function readJson(file: string): unknown;
51
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};