@mrpatronz/nexusflow 2.14.0 → 2.15.0

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 (98) hide show
  1. package/README.md +12 -1
  2. package/dist/agent/ClaudeSdkAdapter.d.ts.map +1 -1
  3. package/dist/agent/ClaudeSdkAdapter.js +6 -1
  4. package/dist/agent/ClaudeSdkAdapter.js.map +1 -1
  5. package/dist/commands/flow.d.ts.map +1 -1
  6. package/dist/commands/flow.js +42 -40
  7. package/dist/commands/flow.js.map +1 -1
  8. package/dist/core/legacy-lifecycle.d.ts +8 -0
  9. package/dist/core/legacy-lifecycle.d.ts.map +1 -0
  10. package/dist/core/legacy-lifecycle.js +120 -0
  11. package/dist/core/legacy-lifecycle.js.map +1 -0
  12. package/dist/core/lifecycle.d.ts +18 -5
  13. package/dist/core/lifecycle.d.ts.map +1 -1
  14. package/dist/core/lifecycle.js +91 -168
  15. package/dist/core/lifecycle.js.map +1 -1
  16. package/dist/core/repository-changes.d.ts +10 -0
  17. package/dist/core/repository-changes.d.ts.map +1 -0
  18. package/dist/core/repository-changes.js +50 -0
  19. package/dist/core/repository-changes.js.map +1 -0
  20. package/dist/core/root-documents.d.ts +54 -0
  21. package/dist/core/root-documents.d.ts.map +1 -0
  22. package/dist/core/root-documents.js +70 -0
  23. package/dist/core/root-documents.js.map +1 -0
  24. package/dist/core/work-guidance.d.ts +24 -3
  25. package/dist/core/work-guidance.d.ts.map +1 -1
  26. package/dist/core/work-guidance.js +21 -8
  27. package/dist/core/work-guidance.js.map +1 -1
  28. package/dist/core/workspace-tools.d.ts +1 -0
  29. package/dist/core/workspace-tools.d.ts.map +1 -1
  30. package/dist/core/workspace-tools.js +8 -2
  31. package/dist/core/workspace-tools.js.map +1 -1
  32. package/dist/generators/base.js +1 -1
  33. package/dist/generators/plan-generator.d.ts.map +1 -1
  34. package/dist/generators/plan-generator.js +5 -2
  35. package/dist/generators/plan-generator.js.map +1 -1
  36. package/dist/gui/assets/AgentsPage-Y1c-bjuA.js +3 -0
  37. package/dist/gui/assets/DashboardPage-BsIOxFRD.js +1 -0
  38. package/dist/gui/assets/{GettingStartedPage-vdPpxxX3.js → GettingStartedPage-4aZxBNta.js} +1 -1
  39. package/dist/gui/assets/MonacoDiffAdapter-BySeTVcR.js +1 -0
  40. package/dist/gui/assets/ProjectsPage-DG2GUKNr.js +1 -0
  41. package/dist/gui/assets/ScaffoldRepoInline-Ba6O_x1U.js +1 -0
  42. package/dist/gui/assets/{SettingsPage-CjrpeCko.js → SettingsPage-Bfyjs9me.js} +1 -1
  43. package/dist/gui/assets/SkillsPage-6v38Y90n.js +7 -0
  44. package/dist/gui/assets/StartWorkPage-CWsbmJ6A.js +1 -0
  45. package/dist/gui/assets/{StrategiesPage-BYoYlyl3.js → StrategiesPage-CjbKoInX.js} +2 -2
  46. package/dist/gui/assets/WorkroomsPage-bDcLMa5h.js +4 -0
  47. package/dist/gui/assets/WorkspacesPage-ChgMem8T.js +13 -0
  48. package/dist/gui/assets/alert-dialog-7Tmml6C4.js +1 -0
  49. package/dist/gui/assets/client-B5szthbF.js +1 -0
  50. package/dist/gui/assets/index-CQHHxwAN.js +80 -0
  51. package/dist/gui/assets/index-D836ldaj.css +2 -0
  52. package/dist/gui/assets/queries-DdbBkqm6.js +3 -0
  53. package/dist/gui/assets/shield-check-FLrrAOFP.js +1 -0
  54. package/dist/gui/assets/{tabs-ClWne-mz.js → tabs-C9XODOED.js} +1 -1
  55. package/dist/gui/index.html +6 -4
  56. package/dist/http/work-guidance-routes.d.ts.map +1 -1
  57. package/dist/http/work-guidance-routes.js +24 -0
  58. package/dist/http/work-guidance-routes.js.map +1 -1
  59. package/dist/mcp/planning-tools.d.ts +3 -0
  60. package/dist/mcp/planning-tools.d.ts.map +1 -0
  61. package/dist/mcp/planning-tools.js +42 -0
  62. package/dist/mcp/planning-tools.js.map +1 -0
  63. package/dist/mcp/tools.d.ts.map +1 -1
  64. package/dist/mcp/tools.js +4 -2
  65. package/dist/mcp/tools.js.map +1 -1
  66. package/dist/server.d.ts.map +1 -1
  67. package/dist/server.js +15 -57
  68. package/dist/server.js.map +1 -1
  69. package/dist/services/image-attachment.d.ts +9 -0
  70. package/dist/services/image-attachment.d.ts.map +1 -0
  71. package/dist/services/image-attachment.js +33 -0
  72. package/dist/services/image-attachment.js.map +1 -0
  73. package/dist/static-resources/skills/nexusflow-lifecycle/SKILL.md +14 -1
  74. package/dist/terminal/manager.d.ts.map +1 -1
  75. package/dist/terminal/manager.js +11 -2
  76. package/dist/terminal/manager.js.map +1 -1
  77. package/dist/terminal/routes.js +2 -2
  78. package/dist/terminal/routes.js.map +1 -1
  79. package/dist/terminal/targets.d.ts +2 -0
  80. package/dist/terminal/targets.d.ts.map +1 -1
  81. package/dist/terminal/targets.js +16 -0
  82. package/dist/terminal/targets.js.map +1 -1
  83. package/package.json +1 -1
  84. package/resources/skills/nexusflow-lifecycle/SKILL.md +14 -1
  85. package/dist/gui/assets/AgentsPage-CJMUiowX.js +0 -3
  86. package/dist/gui/assets/DashboardPage-CPMjNCSd.js +0 -1
  87. package/dist/gui/assets/MonacoDiffAdapter-p1QUAz5J.js +0 -1
  88. package/dist/gui/assets/ProjectsPage-vy3814fL.js +0 -1
  89. package/dist/gui/assets/ScaffoldRepoInline-C0aEuaen.js +0 -1
  90. package/dist/gui/assets/SkillsPage-BRczkn37.js +0 -7
  91. package/dist/gui/assets/StartWorkPage-Bb8nNYOL.js +0 -1
  92. package/dist/gui/assets/WorkroomsPage-C2QVQ1jm.js +0 -4
  93. package/dist/gui/assets/WorkspacesPage-BuQTcejb.js +0 -16
  94. package/dist/gui/assets/alert-dialog-BQTrpDEB.js +0 -1
  95. package/dist/gui/assets/code-xml-DHWUQOSO.js +0 -1
  96. package/dist/gui/assets/index-D-sx2qJG.js +0 -78
  97. package/dist/gui/assets/index-n0pVdSJ7.css +0 -2
  98. package/dist/gui/assets/shield-check-C5I2LDCK.js +0 -1
@@ -6,6 +6,25 @@ export declare const workSizes: readonly ["small", "standard", "epic"];
6
6
  export declare const workStages: readonly ["investigate", "design", "implement", "verify", "review", "release"];
7
7
  export declare const documentRoles: readonly ["requirements", "design", "evidence", "reference"];
8
8
  export declare const documentStatuses: readonly ["draft", "approved", "superseded"];
9
+ export declare const documentMetadataSchema: z.ZodObject<{
10
+ title: z.ZodString;
11
+ role: z.ZodEnum<{
12
+ reference: "reference";
13
+ design: "design";
14
+ requirements: "requirements";
15
+ evidence: "evidence";
16
+ }>;
17
+ status: z.ZodDefault<z.ZodEnum<{
18
+ draft: "draft";
19
+ approved: "approved";
20
+ superseded: "superseded";
21
+ }>>;
22
+ scope: z.ZodDefault<z.ZodObject<{
23
+ milestoneId: z.ZodOptional<z.ZodString>;
24
+ project: z.ZodOptional<z.ZodBoolean>;
25
+ }, z.core.$strip>>;
26
+ summary: z.ZodDefault<z.ZodString>;
27
+ }, z.core.$strip>;
9
28
  declare const documentSchema: z.ZodObject<{
10
29
  title: z.ZodString;
11
30
  role: z.ZodEnum<{
@@ -41,8 +60,8 @@ declare const guidanceSchema: z.ZodObject<{
41
60
  rewrite: "rewrite";
42
61
  }>;
43
62
  size: z.ZodEnum<{
44
- epic: "epic";
45
63
  small: "small";
64
+ epic: "epic";
46
65
  standard: "standard";
47
66
  }>;
48
67
  assignment: z.ZodObject<{
@@ -110,8 +129,8 @@ export declare const guidanceUpdateSchema: z.ZodObject<{
110
129
  rewrite: "rewrite";
111
130
  }>;
112
131
  size: z.ZodEnum<{
113
- epic: "epic";
114
132
  small: "small";
133
+ epic: "epic";
115
134
  standard: "standard";
116
135
  }>;
117
136
  }, z.core.$strip>;
@@ -139,6 +158,8 @@ export declare const documentInputSchema: z.ZodObject<{
139
158
  }, z.core.$strip>;
140
159
  export declare function loadWorkGuidance(workspacePath: string): Promise<WorkGuidance>;
141
160
  export declare function ensureWorkGuidance(workspacePath: string): Promise<void>;
161
+ /** Shared with plan edits so removing a milestone cannot race a new document scope. */
162
+ export declare function lockWorkGuidance(workspacePath: string): Promise<import("./locks.js").ReleaseLock>;
142
163
  export declare function updateWorkGuidance(workspacePath: string, input: unknown): Promise<WorkGuidance>;
143
164
  export declare function addWorkDocument(workspacePath: string, revision: number, input: unknown): Promise<WorkGuidance>;
144
165
  export declare function updateWorkDocument(workspacePath: string, id: string, revision: number, input: unknown): Promise<WorkGuidance>;
@@ -154,7 +175,7 @@ export declare function getWorkContext(workspacePath: string): Promise<{
154
175
  version: 1;
155
176
  revision: number;
156
177
  workType: "bug" | "feature" | "performance" | "refactor" | "rewrite";
157
- size: "epic" | "small" | "standard";
178
+ size: "small" | "epic" | "standard";
158
179
  assignment: {
159
180
  stage: "investigate" | "design" | "implement" | "verify" | "review" | "release";
160
181
  objective: string;
@@ -1 +1 @@
1
- {"version":3,"file":"work-guidance.d.ts","sourceRoot":"","sources":["../../src/core/work-guidance.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,kBAAkB,2BAA2B,CAAC;AAC3D,eAAO,MAAM,oBAAoB,+BAA+B,CAAC;AACjE,eAAO,MAAM,SAAS,mEAAoE,CAAC;AAC3F,eAAO,MAAM,SAAS,wCAAyC,CAAC;AAChE,eAAO,MAAM,UAAU,gFAAiF,CAAC;AACzG,eAAO,MAAM,aAAa,8DAA+D,CAAC;AAC1F,eAAO,MAAM,gBAAgB,8CAA+C,CAAC;AAQ7E,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;iBAIqG,CAAC;AAQ1H,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKlB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAwF,CAAC;AAC1H,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;iBAIuF,CAAC;AASxH,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAcnF;AASD,wBAAsB,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AA6BD,wBAAsB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAOrG;AAED,wBAAsB,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAmBpH;AAED,wBAAsB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CASnI;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,CAEpG;AAED,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAajJ;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,GAAE,CAAC,GAAG,EAAE,YAAY,KAAK,MAAmD,GAAG,MAAM,CAqBzJ;AAiBD,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAWzD"}
1
+ {"version":3,"file":"work-guidance.d.ts","sourceRoot":"","sources":["../../src/core/work-guidance.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,kBAAkB,2BAA2B,CAAC;AAC3D,eAAO,MAAM,oBAAoB,+BAA+B,CAAC;AACjE,eAAO,MAAM,SAAS,mEAAoE,CAAC;AAC3F,eAAO,MAAM,SAAS,wCAAyC,CAAC;AAChE,eAAO,MAAM,UAAU,gFAAiF,CAAC;AACzG,eAAO,MAAM,aAAa,8DAA+D,CAAC;AAC1F,eAAO,MAAM,gBAAgB,8CAA+C,CAAC;AAG7E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;iBAIjC,CAAC;AAEH,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;iBAIqG,CAAC;AAQ1H,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKlB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAwF,CAAC;AAC1H,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;iBAIuF,CAAC;AASxH,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAcnF;AASD,wBAAsB,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,uFAAuF;AACvF,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,MAAM,6CAK3D;AA2BD,wBAAsB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAOrG;AAED,wBAAsB,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAmBpH;AAED,wBAAsB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CASnI;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,CAEpG;AAED,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAajJ;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,GAAE,CAAC,GAAG,EAAE,YAAY,KAAK,MAAmD,GAAG,MAAM,CAqBzJ;AAiBD,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiBzD"}
@@ -9,6 +9,7 @@ import { loadFeatureConfig, listWorkspaces } from './workspace.js';
9
9
  import { readWorkspaceFile, writeWorkspaceFile, resolveWorkspaceFileUrl, workspaceFileExists } from './storage.js';
10
10
  import { assertNoLinkedPathComponents } from '../resources/fs-safety.js';
11
11
  import { loadWorkspaceState } from './workspace-state.js';
12
+ import { isUnusedLegacyPlan } from './legacy-lifecycle.js';
12
13
  export const WORK_GUIDANCE_FILE = 'contextspace-work.json';
13
14
  export const WORK_ASSIGNMENT_FILE = 'contextspace-assignment.md';
14
15
  export const workTypes = ['bug', 'feature', 'performance', 'refactor', 'rewrite'];
@@ -18,11 +19,12 @@ export const documentRoles = ['requirements', 'design', 'evidence', 'reference']
18
19
  export const documentStatuses = ['draft', 'approved', 'superseded'];
19
20
  const scopeSchema = z.object({ milestoneId: z.string().min(1).optional(), project: z.boolean().optional() })
20
21
  .refine((scope) => !scope.project || !scope.milestoneId, 'Choose project or milestone scope, not both.');
21
- const metadataSchema = z.object({
22
+ export const documentMetadataSchema = z.object({
22
23
  title: z.string().trim().min(1).max(200).regex(/^[^\r\n]+$/),
23
24
  role: z.enum(documentRoles), status: z.enum(documentStatuses).default('draft'),
24
25
  scope: scopeSchema.default({}), summary: z.string().trim().max(4000).default(''),
25
26
  });
27
+ const metadataSchema = documentMetadataSchema;
26
28
  const documentSchema = metadataSchema.extend({
27
29
  id: z.string().uuid(), filename: z.string().regex(/^contextspace-document-[a-f0-9-]+\.md$/).optional(),
28
30
  url: z.string().url().refine((url) => ['http:', 'https:'].includes(new URL(url).protocol)).optional(),
@@ -83,14 +85,19 @@ async function checkScope(workspacePath, milestoneId, project) {
83
85
  export async function ensureWorkGuidance(workspacePath) {
84
86
  await mutateGuidance(workspacePath, undefined, async () => undefined);
85
87
  }
88
+ /** Shared with plan edits so removing a milestone cannot race a new document scope. */
89
+ export async function lockWorkGuidance(workspacePath) {
90
+ const root = await fs.realpath(workspacePath);
91
+ return acquireLock(path.join(root, '.contextspace-work.lock'), {
92
+ staleMs: 60_000, timeoutMs: 10_000, timeoutMessage: 'Workspace brief is busy. Retry the operation.',
93
+ });
94
+ }
86
95
  async function mutateGuidance(workspacePath, revision, change) {
87
96
  return runMutation(async () => {
88
97
  const root = await fs.realpath(workspacePath);
89
98
  await assertNoLinkedPathComponents(root, path.join(root, WORK_GUIDANCE_FILE));
90
99
  await assertNoLinkedPathComponents(root, path.join(root, WORK_ASSIGNMENT_FILE));
91
- const release = await acquireLock(path.join(root, '.contextspace-work.lock'), {
92
- staleMs: 60_000, timeoutMs: 10_000, timeoutMessage: 'Workspace brief is busy. Retry the operation.',
93
- });
100
+ const release = await lockWorkGuidance(root);
94
101
  try {
95
102
  const feature = await requireFeature(root);
96
103
  const guidance = await loadWorkGuidance(root);
@@ -117,8 +124,8 @@ async function mutateGuidance(workspacePath, revision, change) {
117
124
  }
118
125
  export async function updateWorkGuidance(workspacePath, input) {
119
126
  const update = guidanceUpdateSchema.parse(input);
120
- await checkScope(workspacePath, update.assignment.milestoneId);
121
127
  const { guidance } = await mutateGuidance(workspacePath, update.revision, async (current) => {
128
+ await checkScope(workspacePath, update.assignment.milestoneId);
122
129
  current.workType = update.workType;
123
130
  current.size = update.size;
124
131
  current.assignment = update.assignment;
@@ -127,10 +134,10 @@ export async function updateWorkGuidance(workspacePath, input) {
127
134
  }
128
135
  export async function addWorkDocument(workspacePath, revision, input) {
129
136
  const doc = documentInputSchema.parse(input);
130
- await checkScope(workspacePath, doc.scope.milestoneId, doc.scope.project);
131
137
  if (doc.url && !['http:', 'https:'].includes(new URL(doc.url).protocol))
132
138
  throw new Error('Document links must use HTTP or HTTPS.');
133
139
  const { guidance } = await mutateGuidance(workspacePath, revision, async (current) => {
140
+ await checkScope(workspacePath, doc.scope.milestoneId, doc.scope.project);
134
141
  if (current.documents.length >= 100)
135
142
  throw new Error('This workspace already has 100 documents.');
136
143
  const id = randomUUID();
@@ -150,8 +157,8 @@ export async function addWorkDocument(workspacePath, revision, input) {
150
157
  }
151
158
  export async function updateWorkDocument(workspacePath, id, revision, input) {
152
159
  const update = metadataSchema.parse(input);
153
- await checkScope(workspacePath, update.scope.milestoneId, update.scope.project);
154
160
  const { guidance } = await mutateGuidance(workspacePath, revision, async (current) => {
161
+ await checkScope(workspacePath, update.scope.milestoneId, update.scope.project);
155
162
  const doc = current.documents.find((item) => item.id === id);
156
163
  if (!doc)
157
164
  throw new Error('Document not found.');
@@ -221,9 +228,15 @@ export async function getWorkContext(workspacePath) {
221
228
  const feature = await requireFeature(workspacePath);
222
229
  const guidance = await loadWorkGuidance(workspacePath);
223
230
  const state = await loadWorkspaceState(workspacePath);
231
+ // Read-only consumers must not receive obsolete template steps while waiting
232
+ // for the lifecycle loader to persist the migration.
233
+ const lifecycle = state.lifecycle && isUnusedLegacyPlan(state.lifecycle)
234
+ && !guidance.assignment.milestoneId && !guidance.documents.some((doc) => doc.scope.milestoneId)
235
+ ? { ...state.lifecycle, steps: [], currentStepId: undefined }
236
+ : state.lifecycle;
224
237
  const shared = await sharedProjectDocuments(workspacePath);
225
238
  const sources = new Map(shared.map((item) => [item.document.id, documentLocation(item.workspacePath, item.workspaceId, item.document)]));
226
- return { guidance, projectId: feature.projectId, lifecycle: state.lifecycle ?? null,
239
+ return { guidance, projectId: feature.projectId, lifecycle: lifecycle ?? null,
227
240
  sharedDocuments: shared.map((item) => ({ ...item.document, workspaceId: item.workspaceId })),
228
241
  assignment: renderWorkAssignment({ ...guidance, documents: [...guidance.documents, ...shared.map((item) => item.document)] }, (doc) => sources.get(doc.id) ?? documentLocation(workspacePath, feature.id, doc)),
229
242
  };
@@ -1 +1 @@
1
- {"version":3,"file":"work-guidance.js","sourceRoot":"","sources":["../../src/core/work-guidance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"work-guidance.js","sourceRoot":"","sources":["../../src/core/work-guidance.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnH,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AAC3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,4BAA4B,CAAC;AACjE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;AAC3F,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAU,CAAC;AAChE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AACzG,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAU,CAAC;AAC1F,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,YAAY,CAAU,CAAC;AAC7E,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;KACzG,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,8CAA8C,CAAC,CAAC;AAC3G,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;IAC5D,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9E,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CACjF,CAAC,CAAC;AACH,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAC9C,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC;IAC3C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC,QAAQ,EAAE;IACtG,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CAC7C,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,yDAAyD,CAAC,CAAC;AAC1H,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAClD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACvD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC;AACH,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC/D,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IACpD,UAAU,EAAE,gBAAgB;IAC5B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;CAC5C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1H,MAAM,CAAC,MAAM,mBAAmB,GAAG,cAAc,CAAC,MAAM,CAAC;IACvD,2EAA2E;IAC3E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACrF,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,EAAE,oCAAoC,CAAC,CAAC;AACxH,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAC;AAE1C,KAAK,UAAU,cAAc,CAAC,aAAqB;IACjD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACvD,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACtD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,aAAqB;IAC1D,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,4BAA4B,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAChG,IAAI,CAAC;QACH,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,iBAAiB,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAClH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAC;QACpE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC;QACnG,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACjG,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU;YAChF,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,cAAc,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE;SAC3H,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,aAAqB,EAAE,WAAoB,EAAE,OAAiB;IACtF,IAAI,OAAO,IAAI,CAAC,CAAC,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC3I,IAAI,CAAC,WAAW;QAAE,OAAO;IACzB,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;AACxH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,aAAqB;IAC5D,MAAM,cAAc,CAAC,aAAa,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC;AACxE,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,aAAqB;IAC1D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC9C,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,yBAAyB,CAAC,EAAE;QAC7D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,+CAA+C;KACpG,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,cAAc,CAAI,aAAqB,EAAE,QAA4B,EAAE,MAA8C;IAClI,OAAO,WAAW,CAAC,KAAK,IAAI,EAAE;QAC5B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAC9E,MAAM,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAChF,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,kBAAkB,CAAC;gBAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAc,EAAE,CAAC;YAC3I,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;YAC7I,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACtC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/H,6EAA6E;YAC7E,IAAI,CAAC;gBACH,MAAM,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,oBAAoB,EAAE,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC5G,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,sIAAsI,CAAC,CAAC;YAC1J,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC9B,CAAC;gBAAS,CAAC;YAAC,MAAM,OAAO,EAAE,CAAC;QAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,aAAqB,EAAE,KAAc;IAC5E,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAC1F,MAAM,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC/D,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAAC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACzG,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,aAAqB,EAAE,QAAgB,EAAE,KAAc;IAC3F,MAAM,GAAG,GAAG,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACnI,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACnF,MAAM,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1E,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,IAAI,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAClG,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,KAAK,GAAiB,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QACjG,IAAI,GAAG,CAAC,GAAG;YAAE,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;aAC5B,CAAC;YACJ,KAAK,CAAC,QAAQ,GAAG,yBAAyB,EAAE,KAAK,CAAC;YAClD,MAAM,4BAA4B,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5F,MAAM,kBAAkB,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAQ,CAAC,CAAC;QACpF,CAAC;QACD,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,aAAqB,EAAE,EAAU,EAAE,QAAgB,EAAE,KAAc;IAC1G,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACnF,MAAM,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAChF,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,aAAqB,EAAE,SAAiB,EAAE,GAAiB;IAC1F,OAAO,GAAG,CAAC,GAAG,IAAI,uBAAuB,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC,QAAS,CAAC,CAAC;AACrF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,aAAqB,EAAE,EAAU;IACtE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACvD,IAAI,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,CAAC,MAAM,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACrG,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACpD,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;QACtB,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IACvC,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;IACpD,IAAI,GAAG,CAAC,QAAQ;QAAE,MAAM,4BAA4B,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5G,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,gBAAgB,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC;QAChF,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC7G,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAsB,EAAE,WAA0C,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,EAAE;IAC/I,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;IAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;IACjK,MAAM,KAAK,GAAG;QACZ,yBAAyB,EAAE,EAAE,EAAE,SAAS,QAAQ,CAAC,QAAQ,YAAY,QAAQ,CAAC,IAAI,aAAa,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE;QACrH,cAAc,UAAU,CAAC,SAAS,IAAI,gDAAgD,EAAE;QACxF,oBAAoB,UAAU,CAAC,cAAc,IAAI,4CAA4C,EAAE;QAC/F,cAAc,UAAU,CAAC,aAAa,IAAI,4EAA4E,EAAE,EAAE,EAAE;QAC5H,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,UAAU,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,UAAU,CAAC,KAAK,KAAK,aAAa,IAAI,UAAU,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,yHAAyH,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/M,0KAA0K;QAC1K,0JAA0J;QAC1J,0GAA0G,EAAE,EAAE,EAAE,uBAAuB,EAAE,EAAE;QAC3I,0KAA0K;KAC3K,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,MAAM,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,GAAG,EAAE,aAAa,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxG,IAAI,GAAG,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;IACpF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,aAAqB;IACzD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;IACpD,IAAI,CAAC,OAAO,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,CAAC,MAAM,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;IACzL,MAAM,MAAM,GAAkF,EAAE,CAAC;IACjG,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/D,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7E,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,aAAqB;IACxD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACtD,6EAA6E;IAC7E,qDAAqD;IACrD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;WACnE,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC;QAC/F,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE;QAC7D,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;IACpB,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,aAAa,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACzI,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,IAAI,IAAI;QAC3E,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC5F,UAAU,EAAE,oBAAoB,CAAC,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,EAC1H,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,gBAAgB,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;KACpF,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { AIAssistant } from '../types.js';
2
2
  export declare const CLI_LAUNCHER = ".contextspace/bin/ctxspace";
3
+ export declare const CLI_ALIAS_LAUNCHER = ".contextspace/bin/contextspace";
3
4
  export interface CliRuntime {
4
5
  command: string;
5
6
  entry: string;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-tools.d.ts","sourceRoot":"","sources":["../../src/core/workspace-tools.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,eAAO,MAAM,YAAY,+BAA+B,CAAC;AACzD,MAAM,WAAW,UAAU;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE;AAClF,wBAAgB,iBAAiB,IAAI,UAAU,CAE9C;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,OAAO,aAAsB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA4EtI"}
1
+ {"version":3,"file":"workspace-tools.d.ts","sourceRoot":"","sources":["../../src/core/workspace-tools.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,eAAO,MAAM,YAAY,+BAA+B,CAAC;AACzD,eAAO,MAAM,kBAAkB,mCAAmC,CAAC;AACnE,MAAM,WAAW,UAAU;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE;AAClF,wBAAgB,iBAAiB,IAAI,UAAU,CAE9C;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,OAAO,aAAsB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAiFtI"}
@@ -6,6 +6,7 @@ import { parse, stringify } from 'smol-toml';
6
6
  import { BRAND_CONFIG } from './constants.js';
7
7
  import { assertNoLinkedPathComponents, atomicWriteFile } from '../resources/fs-safety.js';
8
8
  export const CLI_LAUNCHER = '.contextspace/bin/ctxspace';
9
+ export const CLI_ALIAS_LAUNCHER = '.contextspace/bin/contextspace';
9
10
  export function currentCliRuntime() {
10
11
  return { command: process.execPath, entry: fileURLToPath(new URL('../index.js', import.meta.url)), electron: Boolean(process.versions.electron) };
11
12
  }
@@ -34,9 +35,13 @@ export async function generateWorkspaceTools(root, assistants, runtime = current
34
35
  throw new Error('The CLI runtime path cannot be represented in a Windows launcher.');
35
36
  return `"${value.replaceAll('%', '%%')}"`;
36
37
  };
38
+ const shellLauncher = `#!/bin/sh\n# ${marker}\n${runtime.electron ? 'export ELECTRON_RUN_AS_NODE=1\n' : ''}exec ${shellQuote(runtime.command.replaceAll('\\', '/'))} ${shellQuote(runtime.entry.replaceAll('\\', '/'))} "$@"\n`;
39
+ const cmdLauncher = `@echo off\r\nrem ${marker}\r\nsetlocal DisableDelayedExpansion\r\n${runtime.electron ? 'set "ELECTRON_RUN_AS_NODE=1"\r\n' : ''}${cmdQuote(runtime.command)} ${cmdQuote(runtime.entry)} %*\r\nexit /b %errorlevel%\r\n`;
37
40
  const launchers = [
38
- [CLI_LAUNCHER, `#!/bin/sh\n# ${marker}\n${runtime.electron ? 'export ELECTRON_RUN_AS_NODE=1\n' : ''}exec ${shellQuote(runtime.command.replaceAll('\\', '/'))} ${shellQuote(runtime.entry.replaceAll('\\', '/'))} "$@"\n`],
39
- [`${CLI_LAUNCHER}.cmd`, `@echo off\r\nrem ${marker}\r\nsetlocal DisableDelayedExpansion\r\n${runtime.electron ? 'set "ELECTRON_RUN_AS_NODE=1"\r\n' : ''}${cmdQuote(runtime.command)} ${cmdQuote(runtime.entry)} %*\r\nexit /b %errorlevel%\r\n`],
41
+ [CLI_LAUNCHER, shellLauncher],
42
+ [`${CLI_LAUNCHER}.cmd`, cmdLauncher],
43
+ [CLI_ALIAS_LAUNCHER, shellLauncher],
44
+ [`${CLI_ALIAS_LAUNCHER}.cmd`, cmdLauncher],
40
45
  ];
41
46
  for (const [relative, content] of launchers) {
42
47
  await assertNoLinkedPathComponents(root, path.join(root, relative));
@@ -51,6 +56,7 @@ export async function generateWorkspaceTools(root, assistants, runtime = current
51
56
  await write(relative, content);
52
57
  }
53
58
  await fs.chmod(path.join(root, CLI_LAUNCHER), 0o755);
59
+ await fs.chmod(path.join(root, CLI_ALIAS_LAUNCHER), 0o755);
54
60
  const server = { command: runtime.command, args: [runtime.entry, 'mcp', 'run', root, '--role', 'interactive'],
55
61
  ...(runtime.electron ? { env: { ELECTRON_RUN_AS_NODE: '1' } } : {}) };
56
62
  const configs = [];
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-tools.js","sourceRoot":"","sources":["../../src/core/workspace-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-tools.js","sourceRoot":"","sources":["../../src/core/workspace-tools.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAkB,MAAM,WAAW,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE1F,MAAM,CAAC,MAAM,YAAY,GAAG,4BAA4B,CAAC;AACzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,gCAAgC,CAAC;AAEnE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;AACpJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,IAAY,EAAE,UAAyB,EAAE,OAAO,GAAG,iBAAiB,EAAE;IACjH,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,0CAA0C,CAAC;IAC1D,MAAM,KAAK,GAAG,KAAK,EAAE,QAAgB,EAAE,OAAe,EAAE,EAAE;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACzC,MAAM,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,IAAI,QAA4B,CAAC;QACjC,IAAI,CAAC;YAAC,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,CAAC;QACrD,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;QACtF,IAAI,QAAQ,KAAK,OAAO;YAAE,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;IAC5E,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QACjC,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QAChH,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;IAC5C,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,gBAAgB,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,EAAE,QAAQ,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC;IAChO,MAAM,WAAW,GAAG,oBAAoB,MAAM,2CAA2C,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC;IAC5O,MAAM,SAAS,GAAG;QAChB,CAAC,YAAY,EAAE,aAAa,CAAC;QAC7B,CAAC,GAAG,YAAY,MAAM,EAAE,WAAW,CAAC;QACpC,CAAC,kBAAkB,EAAE,aAAa,CAAC;QACnC,CAAC,GAAG,kBAAkB,MAAM,EAAE,WAAW,CAAC;KAC3C,CAAC;IACF,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;QAC5C,MAAM,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,QAAQ,EAAE,CAAC,CAAC;QACxJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;QACxF,MAAM,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;IACrD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,EAAE,KAAK,CAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC;QAC3G,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,oBAAoB,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACxE,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAC/G,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAC;IACpF,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC,CAAC;IAClF,8FAA8F;IAC9F,KAAK,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;QACtC,MAAM,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QACpE,IAAI,MAAM,GAAwB,EAAE,CAAC;QACrC,IAAI,CAAC;YAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAAC,CAAC;QAClF,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;QACtF,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;QAClN,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;QAChI,MAAM,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAChE,CAAC;IACD,iFAAiF;IACjF,4EAA4E;IAC5E,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QACnD,MAAM,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,GAAoC,CAAC;QACzC,IAAI,CAAC;YAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAAC,CAAC;QAC5D,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,CAAC,KAAK,YAAY,WAAW,CAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;QACzH,MAAM,KAAK,GAAG,GAAG,EAAE,UAAU,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,KAAK,EAAE,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;YAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YACtG,OAAO,GAAI,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACpD,IAAI,MAAM,CAAC,IAAI,CAAC,GAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,GAAI,CAAC,UAAU,CAAC;YACtE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;;gBACvD,MAAM,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,oBAAoB,CAAC;QACtC,MAAM,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QACpE,IAAI,MAAM,GAAc,EAAE,CAAC;QAC3B,IAAI,CAAC;YAAC,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAAC,CAAC;QAC7E,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;QACtF,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC;QACpC,IAAI,QAAQ,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC/H,MAAM,CAAC,WAAW,GAAG,EAAE,GAAI,QAAgC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACrG,MAAM,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -246,7 +246,7 @@ If \`ctxspace\` is not on PATH, use \`./.contextspace/bin/ctxspace\` (bash) or \
246
246
 
247
247
  - \`${PRIMARY_KNOWLEDGE_FILE}\` — decisions and gotchas, one per \`###\` heading. Use MCP \`search_knowledge\`; if the MCP server is not connected, inspect headings, not the whole file. Add via \`${CLI_NAME} knowledge add -t decision|gotcha --title "..." -m "..."\`; without CLI, append a \`### <YYYY-MM-DD> — <Title>\` heading directly. Record a rule and reason that cannot be recovered from the code or git history. Avoid restating structure the code already shows.
248
248
  - \`contextspace-milestones.md\` — authored delivery order, questions with owners/status, existing work and deferred decisions; refresh preserves it.
249
- - \`${PRIMARY_PLAN_FILE}\` — generated milestone definitions and package dependencies; use Plan to edit gates.
249
+ - \`${PRIMARY_PLAN_FILE}\` — generated milestones and dependencies; use Plan or MCP \`update_milestone_plan\`.
250
250
  - \`contextspace-work.json\` — assignment and sources. Read live guidance with \`ctxspace flow --assignment\` or MCP \`get_work_context\`.
251
251
  - \`.agents/skills/\` — enabled playbooks; Claude copies: \`.claude/skills/\`.
252
252
  ${ownInstructions}${customCommands}${teamwork}${enterpriseSection}`;
@@ -1 +1 @@
1
- {"version":3,"file":"plan-generator.d.ts","sourceRoot":"","sources":["../../src/generators/plan-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,QAAQ,EAER,eAAe,EAChB,MAAM,aAAa,CAAC;AAMrB;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EACtC,KAAK,EAAE,QAAQ,EAAE,GAChB,eAAe,CAsCjB;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,EAAE,EAAE,CA4ClE;AAID;;;;;;;;;;;;GAYG;AACH,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,gBAAgB,EACrB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CAkSf"}
1
+ {"version":3,"file":"plan-generator.d.ts","sourceRoot":"","sources":["../../src/generators/plan-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,QAAQ,EAER,eAAe,EAChB,MAAM,aAAa,CAAC;AAMrB;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EACtC,KAAK,EAAE,QAAQ,EAAE,GAChB,eAAe,CAsCjB;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,EAAE,EAAE,CA4ClE;AAID;;;;;;;;;;;;GAYG;AACH,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,gBAAgB,EACrB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CAoSf"}
@@ -5,7 +5,8 @@
5
5
  */
6
6
  import chalk from 'chalk';
7
7
  import { loadWorkspaceState } from '../core/workspace-state.js';
8
- import { renderLifecyclePlan } from '../core/lifecycle.js';
8
+ import { loadWorkspaceLifecycle, renderLifecyclePlan } from '../core/lifecycle.js';
9
+ import { isUnusedLegacyPlan } from '../core/legacy-lifecycle.js';
9
10
  import { writeWorkspaceFile } from '../core/storage.js';
10
11
  import { findInterRepoDependencies } from '../analyzers/detect-deps.js';
11
12
  import { GENERATED_SNAPSHOT_HEADER, renderFreshnessBanner } from '../core/generation-lock.js';
@@ -120,7 +121,9 @@ export async function generateImplementationPlan(ctx, workspacePath) {
120
121
  try {
121
122
  const { feature, repos, analysis } = ctx;
122
123
  const state = await loadWorkspaceState(workspacePath);
123
- const milestonePlan = state.lifecycle ? renderLifecyclePlan(state.lifecycle, false) : '';
124
+ const lifecycle = state.lifecycle && isUnusedLegacyPlan(state.lifecycle)
125
+ ? await loadWorkspaceLifecycle(workspacePath) : state.lifecycle;
126
+ const milestonePlan = lifecycle ? renderLifecyclePlan(lifecycle, false) : '';
124
127
  // ── Fallback: no analysis available ─────────────────────────────────
125
128
  if (!analysis || analysis.size === 0) {
126
129
  const lines = [
@@ -1 +1 @@
1
- {"version":3,"file":"plan-generator.js","sourceRoot":"","sources":["../../src/generators/plan-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-generator.js","sourceRoot":"","sources":["../../src/generators/plan-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./jsx-runtime-DE3RlOCf.js";import{n as r,t as i}from"./badge-BObbahyU.js";import{$ as ee,B as te,G as ne,T as re,et as ie,g as ae,l as oe,r as a,t as se,z as ce}from"./queries-DdbBkqm6.js";import{h as o,m as s,t as c}from"./button-BrcP8Wxx.js";import{t as le}from"./trash-2-BrrLX4tD.js";import{A as l,D as ue,Mt as u,N as d,O as f,P as p,Pt as de,Qt as fe,a as m,en as h,i as pe,j as g,k as _,n as v,o as y,r as b,t as x}from"./index-CQHHxwAN.js";import{a as me,i as he,n as S,o as ge,r as _e,s as ve,t as ye}from"./alert-dialog-7Tmml6C4.js";import{t as be}from"./card-BMggHY3n.js";import{t as C}from"./label-C610MHwq.js";var xe=o(`file-up`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M12 12v6`,key:`3ahymv`}],[`path`,{d:`m15 15-3-3-3 3`,key:`15xj92`}]]),w=e(t(),1),T=n(),E={id:``,name:``,category:`general`,description:``,developerInstructions:``};function D(e){return e.toLowerCase().trim().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)}function O({showToast:e}){let[t,n]=(0,w.useState)(`global`),[o,O]=(0,w.useState)(``),[Se,k]=(0,w.useState)(!1),[A,j]=(0,w.useState)(!1),[M,N]=(0,w.useState)(null),[P,F]=(0,w.useState)(E),[I,L]=(0,w.useState)(``),[R,z]=(0,w.useState)(null),[B,V]=(0,w.useState)(null),{data:H=[],isLoading:Ce,isError:we}=se(),{data:U=[]}=te(),W=ce(t===`global`?``:t),G=re(),K=ae(),q=oe(),J=a(),Y=t!==`global`,Te=U.find(e=>e.id===t),X=!Y||Te?.assistants?.includes(`codex`),Z=Y&&X&&!W.isLoading&&!W.isError&&!!W.data;(0,w.useEffect)(()=>{if(!Y){z(null);return}W.data&&z([...W.data.enabledAgents??[]])},[Y,t,W.data]);let Q=(0,w.useMemo)(()=>{let e=o.trim().toLowerCase();return e?H.filter(t=>[t.name,t.description,t.category].some(t=>t.toLowerCase().includes(e))):H},[H,o]),Ee=new Set(R??W.data?.enabledAgents??[]);function $(){N(null),F(E),k(!0)}function De(e){N(e.id),F({id:e.id,name:e.name,category:e.category,description:e.description,developerInstructions:e.developerInstructions,model:e.model,modelReasoningEffort:e.modelReasoningEffort,sandboxMode:e.sandboxMode}),k(!0)}async function Oe(){try{let t=M??D(P.name);await G.mutateAsync({...P,id:t,name:t}),k(!1),e?.(`Codex agent saved`,`success`)}catch(t){e?.(t instanceof Error?t.message:`Failed to save agent`,`error`)}}async function ke(){try{await K.mutateAsync({toml:I,category:`general`}),j(!1),L(``),e?.(`Codex agent imported`,`success`)}catch(t){e?.(t instanceof Error?t.message:`Failed to import agent`,`error`)}}async function Ae(){if(B)try{await q.mutateAsync(B.id),V(null),e?.(`Agent deleted from the personal catalog`,`info`)}catch(t){e?.(t instanceof Error?t.message:`Failed to delete agent`,`error`)}}function je(e){if(!Z||R===null)return;let t=new Set(R);t.has(e)?t.delete(e):t.add(e),z([...t])}async function Me(){if(!(!W.data||R===null))try{await J.mutateAsync({workspaceId:t,expectedRevision:W.data.revision??0,enabledSkills:W.data.enabledSkills,enabledAgents:R,enabledCategories:W.data.enabledCategories??[]}),e?.(`Agent selection saved. Refresh the workspace to apply it.`,`success`)}catch(t){e?.(t instanceof Error?t.message:`Failed to save agent selection`,`error`)}}return(0,T.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[(0,T.jsxs)(`header`,{className:`flex flex-wrap items-center justify-between gap-4 border-b border-border px-6 py-5`,children:[(0,T.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,T.jsx)(`div`,{className:`rounded-lg bg-primary/10 p-2 text-primary`,children:(0,T.jsx)(h,{className:`h-5 w-5`})}),(0,T.jsxs)(`div`,{children:[(0,T.jsx)(`h1`,{className:`text-xl font-bold tracking-tight`,children:`Codex Agent Library`}),(0,T.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Create and reuse project-scoped Codex custom agents.`})]})]}),(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,T.jsx)(c,{render:(0,T.jsx)(ne,{to:`/skills`}),variant:`outline`,size:`sm`,children:`Skills`}),(0,T.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-border bg-muted/50 px-3 py-1.5`,children:[(0,T.jsx)(ie,{className:`h-4 w-4 text-muted-foreground`}),(0,T.jsx)(C,{htmlFor:`agent-scope`,className:`text-xs text-muted-foreground`,children:`Scope`}),(0,T.jsxs)(`select`,{id:`agent-scope`,value:t,onChange:e=>n(e.target.value),className:`cursor-pointer bg-transparent text-xs font-semibold text-foreground focus:outline-none`,children:[(0,T.jsx)(`option`,{value:`global`,children:`Personal catalog`}),U.map(e=>(0,T.jsx)(`option`,{value:e.id,children:e.id},e.id))]})]}),Y?(0,T.jsx)(c,{size:`sm`,onClick:Me,disabled:!Z||J.isPending,children:J.isPending?`Saving…`:`Save selection`}):(0,T.jsxs)(T.Fragment,{children:[(0,T.jsxs)(c,{variant:`outline`,size:`sm`,onClick:()=>j(!0),children:[(0,T.jsx)(xe,{className:`mr-1.5 h-4 w-4`}),`Import TOML`]}),(0,T.jsxs)(c,{size:`sm`,onClick:$,children:[(0,T.jsx)(u,{className:`mr-1.5 h-4 w-4`}),`New agent`]})]})]})]}),(0,T.jsx)(`div`,{className:`border-b border-border/60 bg-muted/20 px-6 py-3`,children:(0,T.jsxs)(`div`,{className:`relative max-w-md`,children:[(0,T.jsx)(ee,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground`}),(0,T.jsx)(r,{value:o,onChange:e=>O(e.target.value),placeholder:`Search agents…`,className:`pl-9`})]})}),(0,T.jsx)(`main`,{className:`min-h-0 flex-1 overflow-auto p-6`,children:Ce||Y&&W.isLoading?(0,T.jsx)(`div`,{className:`flex justify-center p-12`,children:(0,T.jsx)(ue,{})}):we||Y&&W.isError?(0,T.jsx)(x,{className:`border border-dashed py-12`,children:(0,T.jsxs)(b,{children:[(0,T.jsx)(m,{children:`Resources could not be loaded`}),(0,T.jsx)(v,{children:`Assignment controls remain disabled to protect the saved selection.`})]})}):Y&&!X?(0,T.jsx)(x,{className:`border border-dashed py-12`,children:(0,T.jsxs)(b,{children:[(0,T.jsx)(m,{children:`Codex is not enabled for this workspace`}),(0,T.jsx)(v,{children:`Add Codex to the workspace before assigning Codex-native agents.`})]})}):Q.length===0?(0,T.jsxs)(x,{className:`border border-dashed py-12`,children:[(0,T.jsx)(pe,{children:(0,T.jsx)(h,{className:`h-8 w-8 text-muted-foreground`})}),(0,T.jsxs)(b,{children:[(0,T.jsx)(m,{children:`No Codex agents found`}),(0,T.jsx)(v,{children:`Create an agent or import a native TOML definition.`})]}),!Y&&(0,T.jsxs)(c,{size:`sm`,onClick:$,children:[(0,T.jsx)(u,{className:`mr-1.5 h-4 w-4`}),`New agent`]})]}):(0,T.jsx)(`div`,{className:`mx-auto grid max-w-6xl grid-cols-1 gap-4 md:grid-cols-2 xl:grid-cols-3`,children:Q.map(e=>{let t=Ee.has(e.id);return(0,T.jsxs)(be,{className:s(`flex flex-col gap-4 p-4`,Y&&!t&&`opacity-60`),children:[(0,T.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,T.jsxs)(`div`,{children:[(0,T.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,T.jsx)(`h2`,{className:`font-semibold`,children:e.name}),(0,T.jsx)(i,{variant:`outline`,children:`Codex`})]}),(0,T.jsx)(`p`,{className:`mt-2 text-sm text-muted-foreground`,children:e.description})]}),Y?(0,T.jsxs)(c,{variant:t?`default`:`outline`,size:`sm`,onClick:()=>je(e.id),disabled:!Z,children:[(0,T.jsx)(fe,{className:s(`mr-1 h-3.5 w-3.5`,!t&&`opacity-0`)}),t?`Enabled`:`Disabled`]}):(0,T.jsxs)(`div`,{className:`flex gap-1`,children:[(0,T.jsx)(c,{variant:`ghost`,size:`icon`,"aria-label":`Edit ${e.name}`,onClick:()=>De(e),children:(0,T.jsx)(de,{className:`h-4 w-4`})}),(0,T.jsx)(c,{variant:`ghost`,size:`icon`,"aria-label":`Delete ${e.name}`,onClick:()=>V(e),children:(0,T.jsx)(le,{className:`h-4 w-4`})})]})]}),(0,T.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-xs text-muted-foreground`,children:[e.sandboxMode&&(0,T.jsx)(i,{variant:`secondary`,children:e.sandboxMode}),e.modelReasoningEffort&&(0,T.jsx)(i,{variant:`secondary`,children:e.modelReasoningEffort}),e.model&&(0,T.jsx)(i,{variant:`secondary`,children:e.model})]})]},e.id)})})}),(0,T.jsx)(f,{open:Se,onOpenChange:k,children:(0,T.jsxs)(d,{className:`max-w-2xl`,children:[(0,T.jsxs)(g,{children:[(0,T.jsx)(p,{children:M?`Edit Codex agent`:`Create Codex agent`}),(0,T.jsx)(_,{children:`Only the current stable native fields are managed. Omitted settings inherit from Codex.`})]}),(0,T.jsxs)(`div`,{className:`grid gap-4 py-2`,children:[(0,T.jsxs)(`div`,{className:`grid gap-2`,children:[(0,T.jsx)(C,{htmlFor:`agent-name`,children:`Name`}),(0,T.jsx)(r,{id:`agent-name`,value:P.name,disabled:!!M,onChange:e=>F({...P,name:D(e.target.value)}),placeholder:`code-reviewer`})]}),(0,T.jsxs)(`div`,{className:`grid gap-2`,children:[(0,T.jsx)(C,{htmlFor:`agent-description`,children:`Description`}),(0,T.jsx)(r,{id:`agent-description`,value:P.description,onChange:e=>F({...P,description:e.target.value}),placeholder:`Use when reviewing a fixed diff for correctness and security.`})]}),(0,T.jsxs)(`div`,{className:`grid gap-2`,children:[(0,T.jsx)(C,{htmlFor:`agent-instructions`,children:`Developer instructions`}),(0,T.jsx)(y,{id:`agent-instructions`,value:P.developerInstructions,onChange:e=>F({...P,developerInstructions:e.target.value}),className:`min-h-48 font-mono`})]}),(0,T.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,T.jsxs)(`div`,{className:`grid gap-2`,children:[(0,T.jsx)(C,{htmlFor:`agent-model`,children:`Model override`}),(0,T.jsx)(r,{id:`agent-model`,value:P.model??``,onChange:e=>F({...P,model:e.target.value||void 0}),placeholder:`Inherit`})]}),(0,T.jsxs)(`div`,{className:`grid gap-2`,children:[(0,T.jsx)(C,{htmlFor:`agent-effort`,children:`Reasoning`}),(0,T.jsxs)(`select`,{id:`agent-effort`,value:P.modelReasoningEffort??``,onChange:e=>F({...P,modelReasoningEffort:e.target.value||void 0}),className:`h-9 rounded-md border border-input bg-background px-3 text-sm`,children:[(0,T.jsx)(`option`,{value:``,children:`Inherit`}),(0,T.jsx)(`option`,{value:`low`,children:`Low`}),(0,T.jsx)(`option`,{value:`medium`,children:`Medium`}),(0,T.jsx)(`option`,{value:`high`,children:`High`}),(0,T.jsx)(`option`,{value:`xhigh`,children:`XHigh`}),(0,T.jsx)(`option`,{value:`max`,children:`Max`}),(0,T.jsx)(`option`,{value:`ultra`,children:`Ultra`})]})]}),(0,T.jsxs)(`div`,{className:`grid gap-2`,children:[(0,T.jsx)(C,{htmlFor:`agent-sandbox`,children:`Sandbox`}),(0,T.jsxs)(`select`,{id:`agent-sandbox`,value:P.sandboxMode??``,onChange:e=>F({...P,sandboxMode:e.target.value||void 0}),className:`h-9 rounded-md border border-input bg-background px-3 text-sm`,children:[(0,T.jsx)(`option`,{value:``,children:`Inherit`}),(0,T.jsx)(`option`,{value:`read-only`,children:`Read only`}),(0,T.jsx)(`option`,{value:`workspace-write`,children:`Workspace write`})]})]})]})]}),(0,T.jsxs)(l,{children:[(0,T.jsx)(c,{variant:`outline`,onClick:()=>k(!1),children:`Cancel`}),(0,T.jsx)(c,{onClick:Oe,disabled:G.isPending||!P.name||!P.description||!P.developerInstructions,children:G.isPending?`Saving…`:`Save agent`})]})]})}),(0,T.jsx)(f,{open:A,onOpenChange:j,children:(0,T.jsxs)(d,{className:`max-w-2xl`,children:[(0,T.jsxs)(g,{children:[(0,T.jsx)(p,{children:`Import Codex agent TOML`}),(0,T.jsx)(_,{children:`The import accepts the required native fields and supported model, reasoning, and sandbox overrides.`})]}),(0,T.jsx)(y,{value:I,onChange:e=>L(e.target.value),className:`min-h-72 font-mono`,placeholder:`name = "reviewer"
2
+ description = "Use for code review."
3
+ developer_instructions = "Review the fixed diff."`}),(0,T.jsxs)(l,{children:[(0,T.jsx)(c,{variant:`outline`,onClick:()=>j(!1),children:`Cancel`}),(0,T.jsx)(c,{onClick:ke,disabled:K.isPending||!I.trim(),children:K.isPending?`Importing…`:`Import agent`})]})]})}),(0,T.jsx)(ye,{open:B!==null,onOpenChange:e=>!e&&V(null),children:(0,T.jsxs)(ge,{children:[(0,T.jsxs)(me,{children:[(0,T.jsxs)(ve,{children:[`Delete “`,B?.name,`”?`]}),(0,T.jsx)(_e,{children:`This removes the agent from the personal catalog. Existing workspace copies remain until the workspace is refreshed.`})]}),(0,T.jsxs)(he,{children:[(0,T.jsx)(S,{render:(0,T.jsx)(c,{variant:`outline`,children:`Cancel`})}),(0,T.jsx)(c,{variant:`destructive`,onClick:Ae,disabled:q.isPending,children:q.isPending?`Deleting…`:`Delete agent`})]})]})})]})}export{O as AgentsPage};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./jsx-runtime-DE3RlOCf.js";import{$ as r,F as i,Z as a,_ as o,et as s,n as c}from"./queries-DdbBkqm6.js";import{h as l,m as u,t as d}from"./button-BrcP8Wxx.js";import{a as f,g as p,i as m,m as h,n as g,r as _,s as v}from"./status-CKOvrZ16.js";import{t as ee}from"./brand-hHByyyzq.js";import{n as te}from"./client-B5szthbF.js";import{$t as y,D as b,Dt as x,E as S,G as C,Ht as w,Mt as T,a as ne,an as E,i as D,n as re,qt as O,r as ie,rn as k,t as A,wt as j}from"./index-CQHHxwAN.js";import{t as M}from"./card-BMggHY3n.js";var N=l(`file-diff`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M9 10h6`,key:`9gxzsh`}],[`path`,{d:`M12 13V7`,key:`h0r20n`}],[`path`,{d:`M9 17h6`,key:`r8uit2`}]]),P=e(t(),1),F=n(),ae=[{id:`antigravity`,name:`Google Antigravity`,shortName:`Antigravity`,cliCommand:`agy`,icon:(0,F.jsx)(m,{className:`size-4`}),getOptions:({aiDetected:e,launchTargets:t})=>[{id:`antigravity-cli`,label:`CLI in Terminal`,shortLabel:`CLI`,type:`cli`,command:`agy`,isAvailable:e.antigravity??!1,unavailableReason:`CLI "agy" not found on PATH`,icon:(0,F.jsx)(j,{size:12})},{id:`antigravity-ide`,label:`Antigravity IDE Workspace`,shortLabel:`IDE`,type:`editor`,targetId:`antigravity`,isAvailable:t.find(e=>e.id===`antigravity`)?.available??!1,unavailableReason:`Antigravity IDE not installed`,icon:(0,F.jsx)(O,{size:12})}]},{id:`claude`,name:`Claude Code`,shortName:`Claude`,cliCommand:`claude`,icon:(0,F.jsx)(`span`,{className:`grid size-5 place-items-center rounded bg-[#D97757] text-white shadow-2xs`,children:(0,F.jsx)(f,{className:`size-3`})}),getOptions:({aiDetected:e,launchTargets:t})=>[{id:`claude-cli`,label:`CLI in Terminal`,shortLabel:`CLI`,type:`cli`,command:`claude`,isAvailable:e.claude??!1,unavailableReason:`CLI "claude" not found on PATH`,icon:(0,F.jsx)(j,{size:12})},{id:`claude-desktop`,label:`Claude Desktop App`,shortLabel:`App`,type:`app`,targetId:`claude-desktop`,isAvailable:t.find(e=>e.id===`claude-desktop`)?.available??!1,unavailableReason:`Claude Desktop not detected`,icon:(0,F.jsx)(p,{size:12})}]},{id:`codex`,name:`OpenAI Codex`,shortName:`Codex`,cliCommand:`codex`,icon:(0,F.jsx)(`span`,{className:`grid size-5 place-items-center rounded bg-foreground text-background shadow-2xs`,children:(0,F.jsx)(h,{className:`size-3`})}),getOptions:({aiDetected:e,launchTargets:t})=>[{id:`codex-cli`,label:`CLI in Terminal`,shortLabel:`CLI`,type:`cli`,command:`codex`,isAvailable:e.codex??!1,unavailableReason:`CLI "codex" not found on PATH`,icon:(0,F.jsx)(j,{size:12})},{id:`codex-desktop`,label:`Codex Desktop App`,shortLabel:`App`,type:`app`,targetId:`codex-desktop`,isAvailable:t.find(e=>e.id===`codex-desktop`)?.available??!1,unavailableReason:`Codex Desktop not detected`,icon:(0,F.jsx)(p,{size:12})}]},{id:`copilot`,name:`GitHub Copilot`,shortName:`Copilot`,cliCommand:`copilot`,icon:(0,F.jsx)(`span`,{className:`grid size-5 place-items-center rounded bg-gradient-to-tr from-purple-600 via-indigo-500 to-blue-600 text-white shadow-2xs`,children:(0,F.jsx)(v,{className:`size-3`})}),getOptions:({aiDetected:e,launchTargets:t})=>[{id:`copilot-cli`,label:`Copilot CLI in Terminal`,shortLabel:`CLI`,type:`cli`,command:`copilot`,isAvailable:e.copilot??!1,icon:(0,F.jsx)(j,{size:12})},{id:`copilot-vscode`,label:`VS Code with Copilot`,shortLabel:`VS Code`,type:`editor`,targetId:`vscode`,isAvailable:t.find(e=>e.id===`vscode`)?.available??!1,unavailableReason:`VS Code not detected`,icon:(0,F.jsx)(O,{size:12})}]}];function I({workspaces:e,workspaceStatuses:t,workspacesLoading:n=!1,onOpenWorkspace:l,onNewWorkspace:f,showToast:p}){let m=c(),h=i(),v=o(),[O,j]=(0,P.useState)(``),[I,L]=(0,P.useState)(!1),[R,z]=(0,P.useState)(``),B=e.find(e=>e.branchName===R)??e[0],V=e.filter(e=>`${e.branchName} ${e.description??``} ${e.repos.join(` `)}`.toLowerCase().includes(O.trim().toLowerCase())&&(!I||(t[e.branchName]?.changedFiles??0)>0)),[H,U]=(0,P.useState)(null),W=e.flatMap(e=>t[e.branchName]?[t[e.branchName]]:[]),G=W.reduce((e,t)=>e+(t.changedFiles||0),0),K=W.filter(e=>e.changedFiles>0).length,q=e.filter(e=>(e.mode??`worktree`)===`worktree`).length,oe=e.filter(e=>e.mode===`in-place`).length,J=(0,P.useMemo)(()=>{let t=new Map;return e.forEach(e=>{(e.repos||[]).forEach(e=>{let n=g(e),r=t.get(e);r?r.count+=1:t.set(e,{name:n,path:e,count:1})})}),Array.from(t.values())},[e]),Y=(0,P.useMemo)(()=>{let e={};return(m.data??[]).forEach(t=>{e[t.name]=t.detected}),e},[m.data]),X=(0,P.useMemo)(()=>h.data??[],[h.data]),Z=(0,P.useMemo)(()=>ae.map(e=>{let t=e.getOptions({aiDetected:Y,launchTargets:X}),n=t.filter(e=>e.isAvailable),r=n[0]||t[0],i=n.length>0,a=`Not found`,o=`neutral`;return n.length>1?(a=`${n.map(e=>e.shortLabel).join(` & `)} Ready`,o=`success`):n.length===1&&(a=`${n[0].shortLabel} Ready`,o=`success`),{harness:e,allOptions:t,availableOptions:n,primaryOption:r,isAnyAvailable:i,statusLabel:a,statusTone:o}}),[Y,X]),se=async(e,t)=>{if(H)return;let n=B;if(!n){p?.(`No active workspace available to launch harness in.`,`error`);return}let r=`${e.id}:${t.id}`;U(r);try{t.type===`cli`?(await v.mutateAsync({workspaceId:n.branchName,assistant:e.id,command:t.command}),p?.(`Opened ${e.name} inside ContextSpace for ${n.branchName}`,`success`)):t.targetId&&(await te(`/api/workspace/${encodeURIComponent(n.branchName)}/launch`,{method:`POST`,body:JSON.stringify({targetId:t.targetId})}),p?.(`Opened ${n.branchName} in ${e.name} (${t.label})`,`success`))}catch(t){p?.(`Failed to launch ${e.name}: ${t instanceof Error?t.message:String(t)}`,`error`)}finally{U(null)}},Q=a(),{customTitles:$}=C();return(0,F.jsxs)(`div`,{className:`mx-auto max-w-7xl space-y-6 pb-12 animate-fade-in`,children:[(0,F.jsxs)(`header`,{className:`flex flex-col sm:flex-row sm:items-center justify-between gap-4 border-b border-border/80 pb-4`,children:[(0,F.jsxs)(`div`,{children:[(0,F.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-mono text-muted-foreground mb-1`,children:[(0,F.jsx)(E,{size:14,className:`text-primary`}),(0,F.jsx)(`span`,{children:ee}),(0,F.jsx)(`span`,{className:`opacity-40`,children:`/`}),(0,F.jsx)(`span`,{className:`text-foreground font-semibold`,children:`Cockpit Overview`})]}),(0,F.jsx)(`h1`,{className:`text-xl font-bold tracking-tight text-foreground`,children:`Multi-Worktree Process & Review Station`})]}),(0,F.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,F.jsxs)(d,{onClick:f,size:`sm`,className:`h-8 gap-1.5 px-3.5 bg-primary text-primary-foreground font-semibold hover:bg-primary/90 shadow-xs cursor-pointer text-xs`,children:[(0,F.jsx)(T,{size:14}),` New Worktree`]})})]}),(0,F.jsx)(`div`,{className:`grid grid-cols-2 gap-3 lg:grid-cols-4`,children:[{label:`Active Worktrees`,value:n?`—`:e.length,detail:`${q} isolated · ${oe} host`,icon:s},{label:`Review Queue`,value:W.length?G:`—`,detail:`${K} worktrees with diffs`,icon:w,isDirty:G>0},{label:`Tracked Repos`,value:n?`—`:J.length,detail:`Connected on local host`,icon:y},{label:`AI Assistants`,value:m.isLoading||h.isLoading?`—`:Z.filter(e=>e.isAnyAvailable).length,detail:`Antigravity, Claude, Codex`,icon:x}].map(({label:e,value:t,detail:n,icon:r,isDirty:i})=>(0,F.jsxs)(M,{className:`bg-card border border-border p-3.5 rounded-xl shadow-xs transition-colors hover:border-border/80`,children:[(0,F.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-xs text-muted-foreground`,children:[(0,F.jsx)(`span`,{className:`font-medium`,children:e}),(0,F.jsx)(r,{size:14,className:i?`text-amber-400`:`text-primary`})]}),(0,F.jsx)(`div`,{className:u(`my-1.5 text-2xl font-bold tracking-tight tabular-nums`,i?`text-amber-400`:`text-foreground`),children:t}),(0,F.jsx)(`p`,{className:`text-[11px] text-muted-foreground font-mono`,children:n})]},e))}),(0,F.jsxs)(`div`,{className:`grid items-start gap-6 xl:grid-cols-[minmax(0,1fr)_320px]`,children:[(0,F.jsxs)(`section`,{className:`min-w-0`,"aria-labelledby":`workspaces-heading`,children:[(0,F.jsxs)(`div`,{className:`mb-4 flex flex-wrap items-center justify-between gap-3`,children:[(0,F.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,F.jsxs)(`span`,{id:`workspaces-heading`,className:`text-sm font-bold text-foreground`,children:[`Workspaces (`,V.length,`)`]})}),(0,F.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,F.jsxs)(`div`,{className:`relative`,children:[(0,F.jsx)(r,{size:13,className:`absolute left-2.5 top-2.5 text-muted-foreground pointer-events-none`}),(0,F.jsx)(`input`,{"aria-label":`Search workspaces`,value:O,onChange:e=>j(e.target.value),placeholder:`Filter worktrees or repos…`,className:`h-8 w-48 sm:w-64 rounded-lg border border-input bg-card pl-8 pr-3 text-xs outline-none focus:border-primary transition-colors text-foreground`})]}),(0,F.jsxs)(d,{variant:I?`secondary`:`outline`,size:`xs`,className:`h-8 rounded-lg text-xs font-medium cursor-pointer`,"aria-pressed":I,onClick:()=>L(!I),children:[(0,F.jsx)(w,{size:13}),` Diffs only`]})]})]}),n?(0,F.jsx)(M,{className:`p-10 border border-border bg-card`,children:(0,F.jsx)(b,{"aria-label":`Loading workspaces`,className:`mx-auto size-5 text-primary`})}):e.length?V.length?(0,F.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:V.map(e=>{let n=t[e.branchName],r=e.mode===`in-place`||!n?null:_(n.syncStatus),i=(n?.changedFiles??0)>0,a=$[e.branchName]?.title||e.description||e.branchName,o=!!$[e.branchName]?.title;return(0,F.jsxs)(`div`,{className:`group rounded-xl border border-border bg-card p-4 transition-all hover:border-primary/50 flex flex-col justify-between gap-3 shadow-xs`,children:[(0,F.jsxs)(`div`,{children:[(0,F.jsxs)(`div`,{className:`flex items-start justify-between gap-2 mb-1.5`,children:[(0,F.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,F.jsx)(`h3`,{className:`font-bold text-sm text-foreground truncate cursor-pointer hover:text-primary transition-colors`,onClick:()=>l(e.branchName),title:a,children:a})}),(0,F.jsx)(`span`,{className:u(`shrink-0 px-2 py-0.5 rounded text-[10px] font-mono font-semibold uppercase tracking-wider border`,e.mode===`in-place`?`border-border bg-secondary text-muted-foreground`:`border-emerald-500/25 bg-emerald-500/10 text-emerald-400`),children:e.mode===`in-place`?`in-place`:`isolated`})]}),(0,F.jsxs)(`div`,{className:`flex items-center gap-1.5 font-mono text-[11px] text-muted-foreground truncate mb-2`,children:[(0,F.jsx)(w,{size:12,className:`text-primary shrink-0`}),(0,F.jsx)(`span`,{className:`truncate font-semibold text-foreground/80`,children:e.branchName}),o&&e.description&&(0,F.jsxs)(`span`,{className:`text-[10px] text-muted-foreground/70 truncate`,children:[`(`,e.description,`)`]})]}),(0,F.jsx)(`div`,{className:`flex flex-wrap items-center gap-1.5 mb-2.5`,children:e.repos.map(e=>(0,F.jsx)(`span`,{className:`rounded border border-border/60 bg-secondary/60 px-1.5 py-0.5 font-mono text-[10px] text-muted-foreground`,children:g(e)},e))}),(0,F.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-mono`,children:[i?(0,F.jsxs)(`span`,{className:`flex items-center gap-1.5 text-amber-400 font-semibold`,children:[(0,F.jsx)(`span`,{className:`size-2 rounded-full bg-amber-400 animate-pulse shrink-0`}),n?.changedFiles,` modified files`]}):(0,F.jsxs)(`span`,{className:`flex items-center gap-1.5 text-emerald-400 font-medium`,children:[(0,F.jsx)(`span`,{className:`size-1.5 rounded-full bg-emerald-400 shrink-0`}),`Clean worktree`]}),r&&(0,F.jsxs)(`span`,{className:`text-muted-foreground text-[10px]`,children:[`• `,r.label]})]})]}),(0,F.jsxs)(`div`,{className:`border-t border-border/70 pt-3 flex items-center justify-between gap-2`,children:[(0,F.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[i&&(0,F.jsxs)(d,{size:`xs`,onClick:()=>Q(`/workspaces/${encodeURIComponent(e.branchName)}/changes`),className:`h-7 gap-1 px-2.5 bg-primary text-primary-foreground font-semibold text-xs hover:bg-primary/90 cursor-pointer`,title:`Open Monaco Diff Review`,children:[(0,F.jsx)(N,{size:12}),` Review Diffs`]}),(0,F.jsx)(d,{size:`xs`,variant:`outline`,onClick:()=>l(e.branchName),className:`h-7 text-xs border-border hover:bg-accent cursor-pointer`,children:`Cockpit`})]}),(0,F.jsxs)(`button`,{type:`button`,onClick:()=>Q(`/workspaces/${encodeURIComponent(e.branchName)}/plan`),className:`text-[11px] text-muted-foreground hover:text-primary transition-colors flex items-center gap-1 cursor-pointer`,children:[`Plan `,(0,F.jsx)(k,{size:11})]})]})]},e.id)})}):(0,F.jsxs)(M,{className:`rounded-xl border border-border bg-card p-8 text-center`,children:[(0,F.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No worktrees match your filter.`}),(0,F.jsx)(d,{variant:`ghost`,size:`xs`,className:`mt-2`,onClick:()=>{j(``),L(!1)},children:`Clear filter`})]}):(0,F.jsx)(M,{className:`rounded-xl border border-dashed border-border bg-card/50 p-8`,children:(0,F.jsxs)(A,{children:[(0,F.jsxs)(ie,{children:[(0,F.jsx)(D,{variant:`icon`,children:(0,F.jsx)(s,{})}),(0,F.jsx)(ne,{children:`No active worktrees`}),(0,F.jsx)(re,{children:`Create a worktree to start working on isolated features with dynamic plan steps.`})]}),(0,F.jsxs)(d,{onClick:f,className:`mt-4 bg-primary text-primary-foreground`,children:[(0,F.jsx)(T,{size:14}),` Create First Worktree`]})]})})]}),(0,F.jsxs)(`aside`,{className:`rounded-xl border border-border bg-card p-4 shadow-xs`,"aria-labelledby":`assistants-heading`,children:[(0,F.jsxs)(`div`,{className:`mb-4`,children:[(0,F.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[10px] font-mono font-bold uppercase tracking-wider text-primary mb-1`,children:[(0,F.jsx)(x,{size:12}),` AI Launch Station`]}),(0,F.jsx)(`h2`,{id:`assistants-heading`,className:`text-sm font-bold tracking-tight text-foreground`,children:`External Coding Harnesses`}),(0,F.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:`Launch agents directly into the target worktree.`})]}),(0,F.jsx)(`label`,{className:`block text-[10px] font-mono uppercase font-bold text-muted-foreground mb-1.5`,htmlFor:`launch-workspace`,children:`Target Worktree`}),(0,F.jsxs)(`select`,{id:`launch-workspace`,value:B?.branchName??``,onChange:e=>z(e.target.value),disabled:!e.length||!!H,className:`mb-4 h-8 w-full rounded-md border border-input bg-secondary px-2 font-mono text-xs text-foreground focus-visible:outline-ring`,children:[!e.length&&(0,F.jsx)(`option`,{value:``,children:`Create a workspace first`}),e.map(e=>(0,F.jsx)(`option`,{value:e.branchName,children:$[e.branchName]?.title?`${$[e.branchName]?.title} (${e.branchName})`:e.branchName},e.id))]}),(0,F.jsx)(`div`,{className:`divide-y divide-border/60`,children:Z.map(({harness:e,availableOptions:t,isAnyAvailable:n,statusTone:r})=>(0,F.jsxs)(`div`,{className:`py-3 first:pt-0 last:pb-0`,children:[(0,F.jsxs)(`div`,{className:`flex items-center justify-between gap-2 mb-2`,children:[(0,F.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e.icon,(0,F.jsx)(`h3`,{className:`text-xs font-semibold text-foreground`,children:e.name})]}),(0,F.jsx)(S,{tone:r,children:m.isLoading||h.isLoading?`Checking`:m.isError||h.isError?`Check failed`:n?`Ready`:`Not detected`})]}),(0,F.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.map(t=>(0,F.jsxs)(d,{variant:`outline`,size:`xs`,disabled:!!H||!B,onClick:()=>void se(e,t),title:`Launch ${e.name} in ${B?.branchName??`workspace`}`,className:`h-7 text-xs border-border hover:bg-accent cursor-pointer`,children:[H===`${e.id}:${t.id}`?(0,F.jsx)(b,{className:`size-3`}):t.icon,t.shortLabel,(0,F.jsx)(k,{size:10})]},t.id))})]},e.id))})]})]}),J.length>0&&(0,F.jsxs)(`section`,{className:`border-t border-border pt-4`,children:[(0,F.jsxs)(`div`,{className:`mb-2.5 flex items-center gap-2 text-xs font-mono font-medium text-muted-foreground`,children:[(0,F.jsx)(y,{size:13,className:`text-primary`}),` Tracked Repositories`]}),(0,F.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:J.map(e=>(0,F.jsxs)(`button`,{type:`button`,onClick:()=>{j(e.path),L(!1)},title:e.path,className:`flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-1.5 font-mono text-xs transition-colors hover:border-primary/50 text-foreground cursor-pointer`,children:[(0,F.jsx)(s,{size:12,className:`text-primary`}),(0,F.jsx)(`span`,{children:e.name}),(0,F.jsxs)(`span`,{className:`rounded bg-secondary px-1.5 py-0.2 text-[10px] text-muted-foreground`,children:[e.count,` `,e.count===1?`worktree`:`worktrees`]})]},e.path))})]})]})}export{I as DashboardPage};
@@ -1 +1 @@
1
- import{t as e}from"./jsx-runtime-DE3RlOCf.js";import{t}from"./button-BrcP8Wxx.js";import{t as n}from"./circle-plus-D0tjHKM4.js";import{t as r}from"./brand-hHByyyzq.js";import{on as i}from"./index-D-sx2qJG.js";var a=e();function o({config:e,onCreateWorkspace:o,onModifySettings:s}){return(0,a.jsxs)(`div`,{className:`max-w-4xl mx-auto animate-fade-in`,children:[(0,a.jsxs)(`header`,{className:`mb-10`,children:[(0,a.jsx)(`div`,{className:`inline-flex items-center gap-1.5 px-3 py-1 rounded-full bg-primary/10 text-primary border border-primary/20 text-xs font-semibold uppercase tracking-wider mb-4`,children:`Getting Started Guide`}),(0,a.jsxs)(`h1`,{className:`text-3xl font-bold tracking-tight text-foreground mb-2`,children:[`Welcome to `,r]}),(0,a.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[r,` orchestrates multi-repository developer environments. It combines isolated Git worktrees, automatic code analyzer sweeps, and background process running into a single dashboard.`]})]}),(0,a.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-8 mb-10`,children:[(0,a.jsxs)(`div`,{className:`bg-card border border-border rounded-xl p-6 shadow-sm space-y-6`,children:[(0,a.jsxs)(`h2`,{className:`text-lg font-semibold text-foreground mb-4`,children:[r,` Workflows`]}),(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-primary/10 border border-primary/20 text-primary font-bold text-sm`,children:`1`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`Configure Folders`}),(0,a.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[`Specify your Development folder (where repositories live) and Workspaces folder. These are currently set to:`,(0,a.jsx)(`code`,{className:`block mt-1 text-[10px] text-primary break-all`,children:e.devDir||`Not Configured`})]})]})]}),(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-primary/10 border border-primary/20 text-primary font-bold text-sm`,children:`2`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`Build Workspaces`}),(0,a.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[`Choose repositories and feature branch. `,r,` checks out dependencies under a unified workspace directory using Git Worktrees, keeping original projects clean.`]})]})]}),(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-primary/10 border border-primary/20 text-primary font-bold text-sm`,children:`3`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`Align AI Context`}),(0,a.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[r,` writes files like `,(0,a.jsx)(`code`,{children:`CLAUDE.md`}),`, `,(0,a.jsx)(`code`,{children:`.cursorrules`}),`, `,(0,a.jsx)(`code`,{children:`AGENTS.md`}),` prompting the LLM to inspect project relations and list key assumptions and questions before coding.`]})]})]})]}),(0,a.jsxs)(`div`,{className:`bg-card border border-border rounded-xl p-6 shadow-sm flex flex-col justify-between`,children:[(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h2`,{className:`text-lg font-semibold text-foreground mb-4`,children:`Current Configuration`}),(0,a.jsxs)(`div`,{className:`space-y-3 text-xs`,children:[(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5 border-b border-border`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Dev Folder:`}),(0,a.jsx)(`span`,{className:`text-foreground font-mono text-[10px] truncate max-w-[200px]`,children:e.devDir})]}),(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5 border-b border-border`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Workspaces Folder:`}),(0,a.jsx)(`span`,{className:`text-foreground font-mono text-[10px] truncate max-w-[200px]`,children:e.workspacesDir})]}),(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5 border-b border-border`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Preferred AI:`}),(0,a.jsx)(`span`,{className:`text-primary font-semibold uppercase`,children:e.defaultAssistant||`None`})]}),(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Scan Depth:`}),(0,a.jsxs)(`span`,{className:`text-foreground font-semibold`,children:[e.scanDepth,` levels`]})]})]})]}),(0,a.jsxs)(`div`,{className:`pt-6 border-t border-border flex flex-col gap-2`,children:[(0,a.jsxs)(t,{className:`w-full gap-2`,onClick:o,children:[(0,a.jsx)(n,{size:14}),` Create a Workspace`]}),(0,a.jsxs)(t,{variant:`outline`,className:`w-full gap-2`,onClick:s,children:[(0,a.jsx)(i,{size:14,className:`text-muted-foreground`}),` Modify Settings`]})]})]})]})]})}export{o as GettingStartedPage};
1
+ import{t as e}from"./jsx-runtime-DE3RlOCf.js";import{t}from"./button-BrcP8Wxx.js";import{t as n}from"./circle-plus-D0tjHKM4.js";import{t as r}from"./brand-hHByyyzq.js";import{Ot as i}from"./index-CQHHxwAN.js";var a=e();function o({config:e,onCreateWorkspace:o,onModifySettings:s}){return(0,a.jsxs)(`div`,{className:`max-w-4xl mx-auto animate-fade-in`,children:[(0,a.jsxs)(`header`,{className:`mb-10`,children:[(0,a.jsx)(`div`,{className:`inline-flex items-center gap-1.5 px-3 py-1 rounded-full bg-primary/10 text-primary border border-primary/20 text-xs font-semibold uppercase tracking-wider mb-4`,children:`Getting Started Guide`}),(0,a.jsxs)(`h1`,{className:`text-3xl font-bold tracking-tight text-foreground mb-2`,children:[`Welcome to `,r]}),(0,a.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[r,` orchestrates multi-repository developer environments. It combines isolated Git worktrees, automatic code analyzer sweeps, and background process running into a single dashboard.`]})]}),(0,a.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-8 mb-10`,children:[(0,a.jsxs)(`div`,{className:`bg-card border border-border rounded-xl p-6 shadow-sm space-y-6`,children:[(0,a.jsxs)(`h2`,{className:`text-lg font-semibold text-foreground mb-4`,children:[r,` Workflows`]}),(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-primary/10 border border-primary/20 text-primary font-bold text-sm`,children:`1`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`Configure Folders`}),(0,a.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[`Specify your Development folder (where repositories live) and Workspaces folder. These are currently set to:`,(0,a.jsx)(`code`,{className:`block mt-1 text-[10px] text-primary break-all`,children:e.devDir||`Not Configured`})]})]})]}),(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-primary/10 border border-primary/20 text-primary font-bold text-sm`,children:`2`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`Build Workspaces`}),(0,a.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[`Choose repositories and feature branch. `,r,` checks out dependencies under a unified workspace directory using Git Worktrees, keeping original projects clean.`]})]})]}),(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-primary/10 border border-primary/20 text-primary font-bold text-sm`,children:`3`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`Align AI Context`}),(0,a.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[r,` writes files like `,(0,a.jsx)(`code`,{children:`CLAUDE.md`}),`, `,(0,a.jsx)(`code`,{children:`.cursorrules`}),`, `,(0,a.jsx)(`code`,{children:`AGENTS.md`}),` prompting the LLM to inspect project relations and list key assumptions and questions before coding.`]})]})]})]}),(0,a.jsxs)(`div`,{className:`bg-card border border-border rounded-xl p-6 shadow-sm flex flex-col justify-between`,children:[(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`h2`,{className:`text-lg font-semibold text-foreground mb-4`,children:`Current Configuration`}),(0,a.jsxs)(`div`,{className:`space-y-3 text-xs`,children:[(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5 border-b border-border`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Dev Folder:`}),(0,a.jsx)(`span`,{className:`text-foreground font-mono text-[10px] truncate max-w-[200px]`,children:e.devDir})]}),(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5 border-b border-border`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Workspaces Folder:`}),(0,a.jsx)(`span`,{className:`text-foreground font-mono text-[10px] truncate max-w-[200px]`,children:e.workspacesDir})]}),(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5 border-b border-border`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Preferred AI:`}),(0,a.jsx)(`span`,{className:`text-primary font-semibold uppercase`,children:e.defaultAssistant||`None`})]}),(0,a.jsxs)(`div`,{className:`flex justify-between py-1.5`,children:[(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:`Scan Depth:`}),(0,a.jsxs)(`span`,{className:`text-foreground font-semibold`,children:[e.scanDepth,` levels`]})]})]})]}),(0,a.jsxs)(`div`,{className:`pt-6 border-t border-border flex flex-col gap-2`,children:[(0,a.jsxs)(t,{className:`w-full gap-2`,onClick:o,children:[(0,a.jsx)(n,{size:14}),` Create a Workspace`]}),(0,a.jsxs)(t,{variant:`outline`,className:`w-full gap-2`,onClick:s,children:[(0,a.jsx)(i,{size:14,className:`text-muted-foreground`}),` Modify Settings`]})]})]})]})]})}export{o as GettingStartedPage};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./jsx-runtime-DE3RlOCf.js";import{a as r,i,n as a,r as o,t as s}from"./monaco-DLwhzYMT.js";import{_ as c,g as l,m as u,v as d,y as f}from"./index-CQHHxwAN.js";var p=e(t(),1);a({id:`json`,extensions:[`.json`,`.bowerrc`,`.jshintrc`,`.jscsrc`,`.eslintrc`,`.babelrc`],aliases:[`JSON`,`json`],mimetypes:[`application/json`],loader:()=>Promise.resolve({conf:{comments:!1,brackets:[[`{`,`}`],[`[`,`]`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`"`,close:`"`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`"`,close:`"`}]},language:{defaultToken:``,tokenPostfix:`.json`,tokenizer:{root:[[/"([^"\\]|\\.)*"\s*(?=:)/,`type.identifier`],[/"([^"\\]|\\.)*"/,`string`],[/-?\d+(\.\d+)?([eE][+-]?\d+)?/,`number`],[/\b(true|false|null)\b/,`keyword`],[/[{}[\],]/,`delimiter`],{include:`@whitespace`}],whitespace:[[/\s+/,`white`]]}}})});var m={ts:`typescript`,tsx:`typescript`,js:`javascript`,jsx:`javascript`,mjs:`javascript`,cjs:`javascript`,json:`json`,html:`html`,htm:`html`,css:`css`,scss:`scss`,less:`less`,md:`markdown`,markdown:`markdown`,py:`python`,rs:`rust`,go:`go`,sh:`shell`,bash:`shell`,zsh:`shell`,ps1:`powershell`,yml:`yaml`,yaml:`yaml`,sql:`sql`,xml:`xml`,svg:`xml`,diff:`diff`,patch:`diff`,dockerfile:`dockerfile`,toml:`ini`,java:`java`,c:`c`,cpp:`cpp`,cs:`csharp`,rb:`ruby`,php:`php`};function h(e){if(!e)return`plaintext`;let t=e.split(`?`)[0].split(`#`)[0].split(/[/\\]/).pop()?.toLowerCase()||``;return t===`dockerfile`?`dockerfile`:t===`package.json`||t===`tsconfig.json`?`json`:m[t.split(`.`).pop()||``]||`plaintext`}var g=!1;function _(){g||typeof window>`u`||(window.MonacoEnvironment={getWorker(){return new s}},g=!0)}var v={ES3:0,ES5:1,ES2015:2,ES2016:3,ES2017:4,ES2018:5,ES2019:6,ES2020:7,ESNext:99,JSON:100,Latest:99},y={None:0,CommonJS:1,AMD:2,UMD:3,System:4,ES2015:5,ESNext:99},b={Classic:1,NodeJs:2},x={None:0,Preserve:1,React:2,ReactNative:3,ReactJSX:4,ReactJSXDev:5},S=class{_compilerOptions;_diagnosticsOptions;_modeConfiguration;constructor(e={},t={},n={}){this._compilerOptions=e,this._diagnosticsOptions=t,this._modeConfiguration=n}getCompilerOptions(){return this._compilerOptions}setCompilerOptions(e){this._compilerOptions={...this._compilerOptions,...e||{}}}getDiagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(e){this._diagnosticsOptions={...this._diagnosticsOptions,...e||{}}}getModeConfiguration(){return this._modeConfiguration}setModeConfiguration(e){this._modeConfiguration={...this._modeConfiguration,...e||{}}}},C=new S({allowNonTsExtensions:!0,target:v.ESNext},{noSemanticValidation:!0,noSyntaxValidation:!0},{}),w=new S({allowNonTsExtensions:!0,allowJs:!0,target:v.ESNext},{noSemanticValidation:!0,noSyntaxValidation:!0},{}),T=!1;function E(){if(T)return;let e={target:v.ESNext,moduleResolution:b.NodeJs,module:y.ESNext,jsx:x.ReactJSX,allowNonTsExtensions:!0,allowJs:!0,noEmit:!0};C.setCompilerOptions(e),w.setCompilerOptions(e);let t={completionItems:!1,hovers:!1,documentSymbols:!1,definitions:!1,references:!1,documentHighlights:!1,rename:!1,diagnostics:!1,documentRangeFormattingEdits:!1,signatureHelp:!1,onTypeFormattingEdits:!1,codeActions:!1,inlayHints:!1};if(C.setModeConfiguration(t),w.setModeConfiguration(t),C.setDiagnosticsOptions({noSemanticValidation:!0,noSyntaxValidation:!0}),w.setDiagnosticsOptions({noSemanticValidation:!0,noSyntaxValidation:!0}),typeof window<`u`){let e=window;e.monaco=e.monaco||{},e.monaco.languages=e.monaco.languages||{},e.monaco.languages.typescript={typescriptDefaults:C,javascriptDefaults:w,ScriptTarget:v,ModuleResolutionKind:b,ModuleKind:y,JsxEmit:x}}T=!0}var D=n();_(),E(),u(r);var O=({filePath:e,repoName:t=`workspace`,originalContent:n,modifiedContent:a,viewMode:s,ignoreWhitespace:u,height:m=480,targetLine:g,jumpNonce:_,onOpenFile:v,onLineSelect:y})=>{let b=(0,p.useRef)(null),x=(0,p.useRef)(null),S=(0,p.useRef)(null),C=(0,p.useRef)({original:null,modified:null});return(0,p.useEffect)(()=>{if(!x.current||!g||g<=0)return;let e=x.current.getModifiedEditor();e.revealLineInCenter(g),e.setPosition({lineNumber:g,column:1}),e.focus(),S.current||=e.createDecorationsCollection(),S.current.set([{range:new o(g,1,g,1),options:{isWholeLine:!0,className:`bg-primary/20 border-l-2 border-primary`}}])},[g,_]),(0,p.useEffect)(()=>{if(!b.current)return;let o=h(e),p=d(t,e,r),m=l(t,e,r),_=c(p,n,o,r)||i.createModel(n,o),S=c(m,a,o,r)||i.createModel(a,o);C.current={original:_,modified:S};let w=null;v&&(w=f(v,r));let T=document.documentElement.classList.contains(`dark`)||document.documentElement.getAttribute(`data-theme`)!==`light`,E=null,D=null,O=null;try{E=i.createDiffEditor(b.current,{readOnly:!0,renderSideBySide:s===`side-by-side`,ignoreTrimWhitespace:u,hideUnchangedRegions:{enabled:!1},renderIndicators:!0,originalEditable:!1,automaticLayout:!0,scrollBeyondLastLine:!1,minimap:{enabled:!0,maxColumn:60},scrollbar:{verticalScrollbarSize:8,horizontalScrollbarSize:8,alwaysConsumeMouseWheel:!1},lineNumbersMinChars:3,fontSize:12,fontFamily:`'JetBrains Mono', Consolas, Menlo, monospace`,theme:T?`vs-dark`:`vs`,contextmenu:!0}),E.setModel({original:_,modified:S}),x.current=E;let e=E.getModifiedEditor();D=e.onDidChangeCursorPosition(e=>{y?.(e.position.lineNumber)}),O=E.onDidUpdateDiff(()=>{g&&g>0&&(e.revealLineInCenter(g),e.setPosition({lineNumber:g,column:1}))}),g&&g>0&&(e.revealLineInCenter(g),e.setPosition({lineNumber:g,column:1}))}catch(e){console.error(`[MonacoDiffAdapter] Error initializing diff editor:`,e)}return()=>{O?.dispose(),D?.dispose(),w?.dispose(),E?.dispose(),x.current=null}},[e,t,n,a,s,u,v,y,g]),(0,D.jsx)(`div`,{ref:b,style:{height:typeof m==`number`?`${m}px`:m},className:`w-full rounded-lg overflow-hidden border border-border/70 bg-background`})};export{O as MonacoDiffAdapter};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./jsx-runtime-DE3RlOCf.js";import{n as r,t as i}from"./badge-BObbahyU.js";import{B as a,C as o,N as s,Z as c,d as l,et as u,o as d,y as f}from"./queries-DdbBkqm6.js";import{t as p}from"./button-BrcP8Wxx.js";import{n as m,t as h}from"./ScaffoldRepoInline-Ba6O_x1U.js";import{t as g}from"./trash-2-BrrLX4tD.js";import{A as _,D as v,M as y,Mt as b,N as x,Nt as S,O as ee,P as C,Pt as w,a as T,i as E,j as D,k as O,n as k,r as A,t as j}from"./index-CQHHxwAN.js";import{a as M,i as N,n as P,o as F,r as I,s as L,t as te}from"./alert-dialog-7Tmml6C4.js";var R=e(t(),1),z=n(),B={editingId:null,name:``,description:``,repoPaths:[]};function V(){let e=c(),t=f(),n=o(),V=a(),H=d(),U=s(),W=l(),[G,K]=(0,R.useState)(null),[q,J]=(0,R.useState)(null),[Y,X]=(0,R.useState)(null),Z=(0,R.useMemo)(()=>{let e={};for(let t of V.data??[])t.projectId&&(e[t.projectId]=(e[t.projectId]??0)+1);return e},[V.data]),Q=()=>{J(null),K(B)},ne=e=>{J(null),K({editingId:e.id,name:e.name,description:e.description??``,repoPaths:e.repos.map(e=>e.path)})},re=e=>{K(t=>t&&{...t,repoPaths:t.repoPaths.includes(e.path)?t.repoPaths.filter(t=>t!==e.path):[...t.repoPaths,e.path]})},ie=async()=>{if(G){J(null);try{G.editingId?await U.mutateAsync({id:G.editingId,name:G.name,description:G.description||null,repos:G.repoPaths}):await H.mutateAsync({name:G.name,description:G.description||void 0,repos:G.repoPaths}),K(null)}catch(e){J(e instanceof Error?e.message:String(e))}}},ae=async()=>{if(Y)try{await W.mutateAsync(Y.id)}finally{X(null)}},oe=!!(G&&G.name.trim()&&G.repoPaths.length>0),$=H.isPending||U.isPending;return(0,z.jsxs)(`div`,{className:`mx-auto max-w-4xl animate-fade-in`,children:[(0,z.jsxs)(`header`,{className:`mb-6 flex flex-col sm:flex-row sm:items-center justify-between gap-4 border-b border-border/70 pb-4`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h1`,{className:`text-xl font-bold tracking-tight text-foreground`,children:`Projects`}),(0,z.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:`Named groups of repositories you start work from. Registered once, reused for every feature workspace.`})]}),(0,z.jsxs)(p,{onClick:Q,className:`gap-1.5 shadow-sm`,children:[(0,z.jsx)(b,{size:15}),` New project`]})]}),t.isLoading?(0,z.jsx)(`div`,{className:`flex justify-center py-20`,children:(0,z.jsx)(v,{className:`size-6`})}):(t.data??[]).length===0?(0,z.jsxs)(j,{className:`border border-border border-dashed`,children:[(0,z.jsxs)(A,{children:[(0,z.jsx)(E,{variant:`icon`,children:(0,z.jsx)(u,{})}),(0,z.jsx)(T,{children:`No projects yet`}),(0,z.jsx)(k,{children:`Register your first project to start work without re-picking repositories every time.`})]}),(0,z.jsxs)(p,{onClick:Q,children:[(0,z.jsx)(b,{}),` New project`]})]}):(0,z.jsx)(`ul`,{className:`flex flex-col gap-3`,children:(t.data??[]).map(t=>(0,z.jsx)(`li`,{className:`rounded-xl border border-border/80 bg-card/70 backdrop-blur-md p-4 transition-all duration-200 hover:border-primary/40 hover:shadow-xs`,children:(0,z.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,z.jsxs)(`div`,{className:`min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(`h2`,{className:`truncate text-sm font-semibold`,children:t.name}),(Z[t.id]??0)>0&&(0,z.jsxs)(i,{variant:`secondary`,children:[Z[t.id],` workspace`,Z[t.id]===1?``:`s`]})]}),t.description&&(0,z.jsx)(`p`,{className:`mt-0.5 truncate text-sm text-muted-foreground`,children:t.description}),(0,z.jsx)(`ul`,{className:`mt-2 flex flex-col gap-0.5`,children:t.repos.map(e=>(0,z.jsxs)(`li`,{className:`truncate font-mono text-xs text-muted-foreground`,children:[e.path,(0,z.jsxs)(`span`,{className:`ml-2 text-muted-foreground/60`,children:[`[`,e.defaultBranch,`]`]})]},e.path))})]}),(0,z.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[(0,z.jsxs)(p,{size:`sm`,onClick:()=>e(`/new?project=${encodeURIComponent(t.id)}`),children:[(0,z.jsx)(S,{}),` Start work`]}),(0,z.jsx)(p,{size:`icon-sm`,variant:`ghost`,"aria-label":`Edit ${t.name}`,onClick:()=>ne(t),children:(0,z.jsx)(w,{})}),(0,z.jsx)(p,{size:`icon-sm`,variant:`ghost`,"aria-label":`Remove ${t.name}`,onClick:()=>X(t),children:(0,z.jsx)(g,{})})]})]})},t.id))}),(0,z.jsx)(ee,{open:G!==null,onOpenChange:e=>!e&&K(null),children:(0,z.jsxs)(x,{className:`max-w-lg`,children:[(0,z.jsxs)(D,{children:[(0,z.jsx)(C,{children:G?.editingId?`Edit project`:`New project`}),(0,z.jsx)(O,{children:`A project is a reusable group of source repositories. Removing one later never touches disk.`})]}),(0,z.jsxs)(y,{className:`space-y-4`,children:[(0,z.jsxs)(`label`,{className:`block`,children:[(0,z.jsx)(`span`,{className:`mb-1 block text-sm font-medium`,children:`Name`}),(0,z.jsx)(r,{value:G?.name??``,onChange:e=>K(t=>t&&{...t,name:e.target.value}),placeholder:`e.g. Acme Billing`,autoFocus:!0})]}),(0,z.jsxs)(`label`,{className:`block`,children:[(0,z.jsxs)(`span`,{className:`mb-1 block text-sm font-medium`,children:[`Description `,(0,z.jsx)(`span`,{className:`font-normal text-muted-foreground`,children:`(optional)`})]}),(0,z.jsx)(r,{value:G?.description??``,onChange:e=>K(t=>t&&{...t,description:e.target.value}),placeholder:`What this group of repos is for`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mb-1 block text-sm font-medium`,children:`Repositories`}),(0,z.jsx)(m,{repos:n.data??[],selectedPaths:G?.repoPaths??[],onToggle:re,loading:n.isLoading,emptyHint:`No repositories found in your dev directory.`}),(0,z.jsx)(h,{onCreated:e=>K(t=>t&&{...t,repoPaths:[...t.repoPaths,e.path]})})]}),q&&(0,z.jsx)(`p`,{className:`text-sm text-destructive-foreground`,children:q})]}),(0,z.jsxs)(_,{children:[(0,z.jsx)(p,{variant:`outline`,onClick:()=>K(null),children:`Cancel`}),(0,z.jsxs)(p,{onClick:ie,disabled:!oe||$,children:[$?(0,z.jsx)(v,{}):null,G?.editingId?`Save changes`:`Create project`]})]})]})}),(0,z.jsx)(te,{open:Y!==null,onOpenChange:e=>!e&&X(null),children:(0,z.jsxs)(F,{children:[(0,z.jsxs)(M,{children:[(0,z.jsxs)(L,{children:[`Remove “`,Y?.name,`”?`]}),(0,z.jsx)(I,{children:`This only removes the project from the registry — repositories and workspaces on disk are not touched.`})]}),(0,z.jsxs)(N,{children:[(0,z.jsx)(P,{render:(0,z.jsx)(p,{variant:`outline`,children:`Cancel`})}),(0,z.jsxs)(p,{variant:`destructive`,onClick:ae,disabled:W.isPending,children:[W.isPending?(0,z.jsx)(v,{}):null,`Remove project`]})]})]})})]})}export{V as ProjectsPage};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,t as n}from"./jsx-runtime-DE3RlOCf.js";import{En as r,Jn as i,Kt as a,Ln as o,Wt as s,Xt as c,Yt as l,_n as u,bt as d,c as ee,i as te,l as f,n as p,nn as ne,o as re,rn as m,s as h,sn as g,xt as ie}from"./badge-BObbahyU.js";import{$ as _,s as v}from"./queries-DdbBkqm6.js";import{c as ae,d as oe,f as se,h as ce,i as le,l as ue,m as y,o as de,p as b,t as x}from"./button-BrcP8Wxx.js";import{t as fe}from"./useValueChanged-DfJmRF2P.js";import{t as pe}from"./useAriaLabelledBy-DAWGcnTk.js";import{D as S,E as me}from"./index-CQHHxwAN.js";var C=ce(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),w=e(t(),1),T=w.createContext({disabled:!1});function he(){return w.useContext(T)}function ge(e){if(!e)return null;for(let t of e.elements){let e=t.tagName;if(e===`BUTTON`||e===`INPUT`){let e=t;if(e.type===`submit`)return e}}return null}function E(e){return{checked(t){return e.indeterminate?{}:t?{"data-checked":``}:{"data-unchecked":``}},...f}}var D=w.createContext(void 0);function _e(){return w.useContext(D)}var ve=w.createContext(void 0);function O(){let e=w.useContext(ve);if(e===void 0)throw Error(b(14));return e}var k=n(),ye=`data-parent`,be=w.forwardRef(function(e,t){let{checked:n,className:i,defaultChecked:a=!1,"aria-labelledby":s,disabled:f=!1,form:p,id:_,indeterminate:v=!1,inputRef:ce,name:y,onCheckedChange:b,parent:x=!1,readOnly:S=!1,render:me,required:C=!1,uncheckedValue:T,value:D,nativeButton:O=!1,style:be,...xe}=e,{clearErrors:A}=h(),{disabled:Se,name:Ce,setDirty:we,setFilled:j,setFocused:M,setTouched:Te,state:N,validationMode:Ee,validityData:De,validation:Oe}=ee(),ke=he(),{labelId:Ae,controlId:je,registerControlId:P,getDescriptionProps:F}=re(),I=_e(),L=I?.allValues===void 0?void 0:I.parent,R=L!==void 0,z=Se||ke.disabled||I?.disabled||f,B=Ce??y,V=D??B,Me=c(),Ne=c(),H=_||je;R&&(x?H=Ne:V===void 0?H||=Ne:H=`${L.id}-${V}`);let U={};R&&(x?U=L.getParentProps():V!==void 0&&(U=L.getChildProps(V)));let{checked:Pe=n,indeterminate:Fe=v,onCheckedChange:Ie,...Le}=U,W=I?.value,G=w.useRef(null),K=se(()=>Symbol()),q=w.useRef(!1),{getButtonProps:Re,buttonRef:ze}=ne({disabled:z,native:O}),J=I?.validation??Oe,[Y,Be]=r({controlled:V!==void 0&&W!==void 0&&!x?W.includes(V):Pe,default:a,name:`Checkbox`,state:`checked`}),X=R?!!Pe:Y,Z=R&&Fe||v;g(()=>{P!==ue&&(q.current=!0,P(K.current,H))},[H,P,K]),w.useEffect(()=>{let e=K.current;return()=>{!q.current||P===ue||(q.current=!1,P(e,void 0))}},[P,K]),te(G,Me,Y,void 0,!I&&!z,y);let Q=w.useRef(null),Ve=J.registerInput,He=I?V:void 0,Ue=w.useCallback(e=>Ve(e,{controlRef:G,value:He}),[Ve,He]),We=oe(ce,Q,x?void 0:Ue),Ge=pe(s,Ae,Q,!O,H??void 0);g(()=>{Q.current&&(Q.current.indeterminate=Z,Y&&j(!0))},[Y,Z,j]),fe(Y,()=>{I||(A(B),j(Y),we(Y!==De.initialValue),J.change(Y))});let Ke=de({checked:Y,disabled:z,form:p,name:x?void 0:B,id:O?void 0:H??void 0,required:C,ref:We,style:B?ie:d,tabIndex:-1,type:`checkbox`,"aria-hidden":!0,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(S){e.preventDefault();return}let t=e.currentTarget.checked,n=l(o,e.nativeEvent);if(b?.(t,n),!n.isCanceled&&(Ie?.(t,n),!n.isCanceled&&(Be(t),V!==void 0&&I!==void 0&&!x&&!R))){let e=t?[...I.value,V]:I.value.filter(e=>e!==V);I.setValue(e,n)}},onClick(e){e.stopPropagation()},onFocus(){G.current?.focus()}},D===void 0?ae:{value:(I?Y&&D:D)||``},F,e=>J.getValidationProps(z,e));w.useEffect(()=>{if(!L||V===void 0)return;let e=L.disabledStatesRef.current;return e.set(V,z),()=>{e.delete(V)}},[L,z,V]);let $=w.useMemo(()=>({...N,checked:X,disabled:z,readOnly:S,required:C,indeterminate:Z}),[N,X,z,S,C,Z]),qe=E($),Je=le(`span`,e,{state:$,ref:[ze,G,t],props:[{id:O?H??void 0:Me,role:`checkbox`,"aria-checked":Z?`mixed`:X,"aria-readonly":S||void 0,"aria-required":C||void 0,"aria-labelledby":Ge,[ye]:x?``:void 0,onFocus(){z||M(!0)},onBlur(){let e=Q.current;e&&(Te(!0),M(!1),Ee===`onBlur`&&J.commit(I?W:e.checked))},onKeyDown(e){if(e.key!==`Enter`||(e.preventBaseUIHandler(),e.defaultPrevented))return;let t=Q.current?.form??null,n=e.currentTarget,r=e.nativeEvent,i=e.preventDefault,a=r.preventDefault,o=!1;e.preventDefault=()=>{o=!0,i.call(e)},r.preventDefault=()=>{o=!0,a.call(r)},a.call(r),u(n).queueMicrotask(()=>{e.preventDefault=i,r.preventDefault=a,o||ge(t)?.click()})},onClick(e){if(S||z)return;e.preventDefault();let t=Q.current;t&&m(t,e)}},xe,Le,Re,F,e=>J.getValidationProps(z,e)],stateAttributesMapping:qe});return(0,k.jsxs)(ve.Provider,{value:$,children:[Je,!Y&&!I&&B&&!x&&T!==void 0&&(0,k.jsx)(`input`,{type:`hidden`,form:p,name:B,value:T,disabled:z}),(0,k.jsx)(`input`,{...Ke,suppressHydrationWarning:!0})]})}),xe=w.forwardRef(function(e,t){let{render:n,className:r,style:o,keepMounted:c=!1,...l}=e,u=O(),d=u.checked||u.indeterminate,{mounted:ee,transitionStatus:te,setMounted:f}=a(d),p=w.useRef(null),ne={...u,transitionStatus:te};s({open:d,ref:p,onComplete(){d||f(!1)}});let re={...E(u),...i},m=c||ee,h=le(`span`,e,{ref:[t,p],state:ne,stateAttributesMapping:re,props:l});return m?h:null});function A({className:e,...t}){return(0,k.jsx)(be,{className:y(`relative inline-flex size-4.5 shrink-0 items-center justify-center rounded-[.25rem] border border-input bg-background not-dark:bg-clip-padding shadow-xs/5 outline-none ring-ring transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[3px] not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-offset-background aria-invalid:border-destructive/36 focus-visible:aria-invalid:border-destructive/64 focus-visible:aria-invalid:ring-destructive/48 data-disabled:opacity-64 sm:size-4 dark:not-data-checked:bg-input/32 dark:aria-invalid:ring-destructive/24 dark:not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)] [[data-disabled],[data-checked],[aria-invalid]]:shadow-none`,e),"data-slot":`checkbox`,...t,children:(0,k.jsx)(xe,{className:`-inset-px absolute flex items-center justify-center rounded-[.25rem] text-primary-foreground data-unchecked:hidden data-checked:bg-primary data-indeterminate:text-foreground`,"data-slot":`checkbox-indicator`,render:(e,t)=>(0,k.jsx)(`span`,{...e,children:t.indeterminate?(0,k.jsx)(`svg`,{className:`size-3.5 sm:size-3`,fill:`none`,height:`24`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`3`,viewBox:`0 0 24 24`,width:`24`,xmlns:`http://www.w3.org/2000/svg`,children:(0,k.jsx)(`path`,{d:`M5.252 12h13.496`})}):(0,k.jsx)(`svg`,{className:`size-3.5 sm:size-3`,fill:`none`,height:`24`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`3`,viewBox:`0 0 24 24`,width:`24`,xmlns:`http://www.w3.org/2000/svg`,children:(0,k.jsx)(`path`,{d:`M5.252 12.7 10.2 18.63 18.748 5.37`})})})})})}function Se({repos:e,selectedPaths:t,onToggle:n,loading:r,emptyHint:i,className:a,freshnessMap:o}){let[s,c]=(0,w.useState)(``),l=(0,w.useMemo)(()=>{let t=s.trim().toLowerCase();return t?e.filter(e=>e.name.toLowerCase().includes(t)||e.path.toLowerCase().includes(t)):e},[e,s]);return(0,k.jsxs)(`div`,{className:y(`flex flex-col gap-2`,a),children:[(0,k.jsxs)(`div`,{className:`relative`,children:[(0,k.jsx)(_,{className:`absolute top-1/2 left-2.5 size-4 -translate-y-1/2 text-muted-foreground`}),(0,k.jsx)(p,{value:s,onChange:e=>c(e.target.value),placeholder:`Filter repositories…`,className:`pl-8`,"aria-label":`Filter repositories`})]}),(0,k.jsx)(`div`,{className:`max-h-56 overflow-y-auto rounded-lg border border-border`,children:r?(0,k.jsx)(`p`,{className:`p-3 text-sm text-muted-foreground`,children:`Scanning for repositories…`}):l.length===0?(0,k.jsx)(`p`,{className:`p-3 text-sm text-muted-foreground`,children:i??`No repositories found.`}):(0,k.jsx)(`ul`,{className:`divide-y divide-border`,children:l.map(e=>{let r=t.includes(e.path),i=o?.[e.path];return(0,k.jsx)(`li`,{children:(0,k.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-3 px-3 py-2 hover:bg-accent`,children:[(0,k.jsx)(A,{checked:r,onCheckedChange:()=>n(e),"aria-label":e.name}),(0,k.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,k.jsx)(`span`,{className:`block truncate text-sm font-medium`,children:e.name}),(0,k.jsx)(`span`,{className:`block truncate font-mono text-xs text-muted-foreground`,children:e.path})]}),(0,k.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[i&&(0,k.jsx)(me,{tone:i.status===`up-to-date`?`success`:i.status===`behind`?`warning`:i.status===`diverged`?`danger`:i.status===`ahead`?`info`:`neutral`,title:i.message,children:i.status===`behind`?`↓ ${i.behind} behind`:i.status===`up-to-date`?`Up to date`:i.status===`diverged`?`Diverged`:i.status===`ahead`?`↑ ${i.ahead} ahead`:`Local`}),(0,k.jsx)(`span`,{className:`font-mono text-xs text-muted-foreground`,children:e.defaultBranch})]})]})},e.path)})})})]})}function Ce({onCreated:e}){let[t,n]=(0,w.useState)(!1),[r,i]=(0,w.useState)(``),[a,o]=(0,w.useState)(null),s=v(),c=async()=>{o(null);try{let{repo:t}=await s.mutateAsync(r.trim());i(``),n(!1),e(t)}catch(e){o(e instanceof Error?e.message:String(e))}};return t?(0,k.jsxs)(`div`,{className:`mt-1.5 flex flex-col gap-1.5`,children:[(0,k.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,k.jsx)(p,{value:r,onChange:e=>i(e.target.value),onKeyDown:e=>e.key===`Enter`&&r.trim()&&c(),placeholder:`new-repo-name`,className:`h-7 font-mono text-xs`,"aria-label":`New repository name`,autoFocus:!0}),(0,k.jsxs)(x,{size:`xs`,onClick:c,disabled:!r.trim()||s.isPending,children:[s.isPending?(0,k.jsx)(S,{}):null,`Create`]}),(0,k.jsx)(x,{size:`xs`,variant:`ghost`,onClick:()=>{n(!1),o(null)},children:`Cancel`})]}),a&&(0,k.jsx)(`p`,{className:`text-xs text-destructive-foreground`,children:a})]}):(0,k.jsxs)(`button`,{type:`button`,onClick:()=>n(!0),className:`mt-1.5 inline-flex cursor-pointer items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground`,children:[(0,k.jsx)(C,{className:`size-3.5`}),` Scaffold a brand-new repository`]})}export{Se as n,A as r,Ce as t};