harness-engineering-agent 0.3.3 → 0.3.5

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 (54) hide show
  1. package/README.md +2 -1
  2. package/dist/controller/agent-session.d.ts +2 -0
  3. package/dist/controller/agent-session.d.ts.map +1 -1
  4. package/dist/controller/agent-session.js +5 -1
  5. package/dist/controller/agent-session.js.map +1 -1
  6. package/dist/controller/run-controller.d.ts.map +1 -1
  7. package/dist/controller/run-controller.js +69 -9
  8. package/dist/controller/run-controller.js.map +1 -1
  9. package/dist/controller/run-persistence.js +11 -1
  10. package/dist/controller/run-persistence.js.map +1 -1
  11. package/dist/controller/task-executor.d.ts.map +1 -1
  12. package/dist/controller/task-executor.js +15 -11
  13. package/dist/controller/task-executor.js.map +1 -1
  14. package/dist/domain/report.d.ts +2 -0
  15. package/dist/domain/report.d.ts.map +1 -1
  16. package/dist/domain/run.d.ts +2 -0
  17. package/dist/domain/run.d.ts.map +1 -1
  18. package/dist/plugin/harness-coordinator.js +26 -6
  19. package/dist/plugin/harness-coordinator.js.map +1 -1
  20. package/dist/plugin/harness-plugin-runtime.d.ts.map +1 -1
  21. package/dist/plugin/harness-plugin-runtime.js +4 -0
  22. package/dist/plugin/harness-plugin-runtime.js.map +1 -1
  23. package/dist/session/contracts.d.ts +1 -0
  24. package/dist/session/contracts.d.ts.map +1 -1
  25. package/dist/session/opencode-session-adapter.d.ts.map +1 -1
  26. package/dist/session/opencode-session-adapter.js +35 -5
  27. package/dist/session/opencode-session-adapter.js.map +1 -1
  28. package/dist/store/run-event.d.ts +2 -0
  29. package/dist/store/run-event.d.ts.map +1 -1
  30. package/dist/workspace/discover-git-repos.d.ts +7 -0
  31. package/dist/workspace/discover-git-repos.d.ts.map +1 -1
  32. package/dist/workspace/discover-git-repos.js +52 -0
  33. package/dist/workspace/discover-git-repos.js.map +1 -1
  34. package/dist/workspace/env-preflight.d.ts +2 -1
  35. package/dist/workspace/env-preflight.d.ts.map +1 -1
  36. package/dist/workspace/env-preflight.js +12 -3
  37. package/dist/workspace/env-preflight.js.map +1 -1
  38. package/dist/workspace/git-baseline.d.ts +1 -0
  39. package/dist/workspace/git-baseline.d.ts.map +1 -1
  40. package/dist/workspace/git-baseline.js +2 -0
  41. package/dist/workspace/git-baseline.js.map +1 -1
  42. package/dist/workspace/git-workspace-adapter.d.ts +8 -3
  43. package/dist/workspace/git-workspace-adapter.d.ts.map +1 -1
  44. package/dist/workspace/git-workspace-adapter.js +123 -5
  45. package/dist/workspace/git-workspace-adapter.js.map +1 -1
  46. package/dist/workspace/index.d.ts +4 -4
  47. package/dist/workspace/index.d.ts.map +1 -1
  48. package/dist/workspace/index.js +2 -2
  49. package/dist/workspace/index.js.map +1 -1
  50. package/dist/workspace/resolve-target-repository.d.ts +7 -3
  51. package/dist/workspace/resolve-target-repository.d.ts.map +1 -1
  52. package/dist/workspace/resolve-target-repository.js +14 -4
  53. package/dist/workspace/resolve-target-repository.js.map +1 -1
  54. package/package.json +1 -1
@@ -485,6 +485,7 @@ export declare const RunEventSchema: z.ZodReadonly<z.ZodObject<{
485
485
  dirtyAllowed: z.ZodBoolean;
486
486
  harnessChangedPaths: z.ZodReadonly<z.ZodArray<z.ZodString>>;
487
487
  }, z.core.$strip>>]>;
488
+ executionRoot: z.ZodOptional<z.ZodString>;
488
489
  }, z.core.$strip>>>;
489
490
  contextPackage: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
490
491
  schemaVersion: z.ZodLiteral<"1.0.0">;
@@ -1236,6 +1237,7 @@ export declare const RunEventSchema: z.ZodReadonly<z.ZodObject<{
1236
1237
  dirtyAllowed: z.ZodBoolean;
1237
1238
  harnessChangedPaths: z.ZodReadonly<z.ZodArray<z.ZodString>>;
1238
1239
  }, z.core.$strip>>]>;
1240
+ executionRoot: z.ZodOptional<z.ZodString>;
1239
1241
  }, z.core.$strip>>>;
1240
1242
  contextPackage: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
1241
1243
  schemaVersion: z.ZodLiteral<"1.0.0">;
@@ -1 +1 @@
1
- {"version":3,"file":"run-event.d.ts","sourceRoot":"","sources":["../../src/store/run-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAMhD,CAAA;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAad,CAAA;AAEb,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,SAAS,EAAE,GACpB;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAEzC,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA"}
1
+ {"version":3,"file":"run-event.d.ts","sourceRoot":"","sources":["../../src/store/run-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAMhD,CAAA;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAad,CAAA;AAEb,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,SAAS,EAAE,GACpB;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAEzC,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA"}
@@ -2,5 +2,12 @@ export type DiscoveredGitRepo = {
2
2
  readonly name: string;
3
3
  readonly relativePath: string;
4
4
  };
5
+ export type DiscoveredProjectDirectory = {
6
+ readonly name: string;
7
+ readonly relativePath: string;
8
+ readonly marker: string;
9
+ };
5
10
  export declare const discoverChildGitRepos: (projectRoot: string, maxDepth?: number) => Promise<readonly DiscoveredGitRepo[]>;
11
+ export declare const discoverChildProjectDirectories: (projectRoot: string, maxDepth?: number) => Promise<readonly DiscoveredProjectDirectory[]>;
12
+ export declare const findProjectDirectoryMarker: (directory: string) => string | undefined;
6
13
  //# sourceMappingURL=discover-git-repos.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"discover-git-repos.d.ts","sourceRoot":"","sources":["../../src/workspace/discover-git-repos.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAC9B,CAAA;AAmBD,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,EACnB,WAAU,MAA0B,KACnC,OAAO,CAAC,SAAS,iBAAiB,EAAE,CAMtC,CAAA"}
1
+ {"version":3,"file":"discover-git-repos.d.ts","sourceRoot":"","sources":["../../src/workspace/discover-git-repos.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB,CAAA;AA4BD,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,EACnB,WAAU,MAA0B,KACnC,OAAO,CAAC,SAAS,iBAAiB,EAAE,CAMtC,CAAA;AAED,eAAO,MAAM,+BAA+B,GAC1C,aAAa,MAAM,EACnB,WAAU,MAA0B,KACnC,OAAO,CAAC,SAAS,0BAA0B,EAAE,CAM/C,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,WAAW,MAAM,KAAG,MAAM,GAAG,SACK,CAAA"}
@@ -3,6 +3,14 @@ import { readdir, stat } from "node:fs/promises";
3
3
  import { join } from "node:path";
4
4
  const DEFAULT_MAX_DEPTH = 2;
5
5
  const DEFAULT_MAX_RESULTS = 10;
6
+ const PROJECT_MARKERS = [
7
+ "package.json",
8
+ "pom.xml",
9
+ "pyproject.toml",
10
+ "go.mod",
11
+ "Cargo.toml",
12
+ "README.md",
13
+ ];
6
14
  const IGNORED_DIRECTORIES = new Set([
7
15
  "node_modules",
8
16
  ".git",
@@ -23,6 +31,14 @@ export const discoverChildGitRepos = async (projectRoot, maxDepth = DEFAULT_MAX_
23
31
  .sort((left, right) => left.name.localeCompare(right.name))
24
32
  .slice(0, DEFAULT_MAX_RESULTS);
25
33
  };
34
+ export const discoverChildProjectDirectories = async (projectRoot, maxDepth = DEFAULT_MAX_DEPTH) => {
35
+ const projects = [];
36
+ await walkForProjectDirectories(projectRoot, "", 0, maxDepth, projects);
37
+ return projects
38
+ .sort((left, right) => left.relativePath.localeCompare(right.relativePath))
39
+ .slice(0, DEFAULT_MAX_RESULTS);
40
+ };
41
+ export const findProjectDirectoryMarker = (directory) => PROJECT_MARKERS.find((candidate) => existsSync(join(directory, candidate)));
26
42
  const walkForGitRepos = async (root, relativePath, depth, maxDepth, repos) => {
27
43
  if (depth > maxDepth) {
28
44
  return;
@@ -58,4 +74,40 @@ const walkForGitRepos = async (root, relativePath, depth, maxDepth, repos) => {
58
74
  await walkForGitRepos(fullPath, entryRelative, depth + 1, maxDepth, repos);
59
75
  }
60
76
  };
77
+ const walkForProjectDirectories = async (root, relativePath, depth, maxDepth, projects) => {
78
+ if (depth > maxDepth) {
79
+ return;
80
+ }
81
+ let dirEntries;
82
+ try {
83
+ dirEntries = await readdir(root);
84
+ }
85
+ catch {
86
+ return;
87
+ }
88
+ for (const entry of dirEntries) {
89
+ if (IGNORED_DIRECTORIES.has(entry)) {
90
+ continue;
91
+ }
92
+ const fullPath = join(root, entry);
93
+ const entryRelative = relativePath.length === 0 ? entry : `${relativePath}/${entry}`;
94
+ let isDirectory = false;
95
+ try {
96
+ const entryStat = await stat(fullPath);
97
+ isDirectory = entryStat.isDirectory();
98
+ }
99
+ catch {
100
+ continue;
101
+ }
102
+ if (!isDirectory || existsSync(join(fullPath, ".git"))) {
103
+ continue;
104
+ }
105
+ const marker = findProjectDirectoryMarker(fullPath);
106
+ if (marker !== undefined) {
107
+ projects.push({ name: entry, relativePath: entryRelative, marker });
108
+ continue;
109
+ }
110
+ await walkForProjectDirectories(fullPath, entryRelative, depth + 1, maxDepth, projects);
111
+ }
112
+ };
61
113
  //# sourceMappingURL=discover-git-repos.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"discover-git-repos.js","sourceRoot":"","sources":["../../src/workspace/discover-git-repos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAOhC,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAC3B,MAAM,mBAAmB,GAAG,EAAE,CAAA;AAE9B,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,cAAc;IACd,MAAM;IACN,MAAM;IACN,OAAO;IACP,UAAU;IACV,UAAU;IACV,QAAQ;IACR,OAAO;IACP,OAAO;IACP,QAAQ;IACR,oBAAoB;CACrB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EACxC,WAAmB,EACnB,WAAmB,iBAAiB,EACG,EAAE;IACzC,MAAM,KAAK,GAAwB,EAAE,CAAA;IACrC,MAAM,eAAe,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC1D,OAAO,KAAK;SACT,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC1D,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;AAClC,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,KAAK,EAC3B,IAAY,EACZ,YAAoB,EACpB,KAAa,EACb,QAAgB,EAChB,KAA0B,EACX,EAAE;IACjB,IAAI,KAAK,GAAG,QAAQ,EAAE,CAAC;QACrB,OAAM;IACR,CAAC;IAED,IAAI,UAAoB,CAAA;IACxB,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAM;IACR,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,SAAQ;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAClC,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,KAAK,EAAE,CAAA;QAEpF,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAA;YACtC,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,SAAQ;QACV,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,SAAQ;QACV,CAAC;QAED,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YACvC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAA;YACxD,SAAQ;QACV,CAAC;QAED,MAAM,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC5E,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"discover-git-repos.js","sourceRoot":"","sources":["../../src/workspace/discover-git-repos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAahC,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAC3B,MAAM,mBAAmB,GAAG,EAAE,CAAA;AAE9B,MAAM,eAAe,GAAG;IACtB,cAAc;IACd,SAAS;IACT,gBAAgB;IAChB,QAAQ;IACR,YAAY;IACZ,WAAW;CACH,CAAA;AAEV,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,cAAc;IACd,MAAM;IACN,MAAM;IACN,OAAO;IACP,UAAU;IACV,UAAU;IACV,QAAQ;IACR,OAAO;IACP,OAAO;IACP,QAAQ;IACR,oBAAoB;CACrB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EACxC,WAAmB,EACnB,WAAmB,iBAAiB,EACG,EAAE;IACzC,MAAM,KAAK,GAAwB,EAAE,CAAA;IACrC,MAAM,eAAe,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC1D,OAAO,KAAK;SACT,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC1D,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;AAClC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG,KAAK,EAClD,WAAmB,EACnB,WAAmB,iBAAiB,EACY,EAAE;IAClD,MAAM,QAAQ,GAAiC,EAAE,CAAA;IACjD,MAAM,yBAAyB,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACvE,OAAO,QAAQ;SACZ,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SAC1E,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;AAClC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,SAAiB,EAAsB,EAAE,CAClF,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;AAE7E,MAAM,eAAe,GAAG,KAAK,EAC3B,IAAY,EACZ,YAAoB,EACpB,KAAa,EACb,QAAgB,EAChB,KAA0B,EACX,EAAE;IACjB,IAAI,KAAK,GAAG,QAAQ,EAAE,CAAC;QACrB,OAAM;IACR,CAAC;IAED,IAAI,UAAoB,CAAA;IACxB,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAM;IACR,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,SAAQ;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAClC,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,KAAK,EAAE,CAAA;QAEpF,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAA;YACtC,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,SAAQ;QACV,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,SAAQ;QACV,CAAC;QAED,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YACvC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAA;YACxD,SAAQ;QACV,CAAC;QAED,MAAM,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC5E,CAAC;AACH,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,KAAK,EACrC,IAAY,EACZ,YAAoB,EACpB,KAAa,EACb,QAAgB,EAChB,QAAsC,EACvB,EAAE;IACjB,IAAI,KAAK,GAAG,QAAQ,EAAE,CAAC;QACrB,OAAM;IACR,CAAC;IAED,IAAI,UAAoB,CAAA;IACxB,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAM;IACR,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,SAAQ;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAClC,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,KAAK,EAAE,CAAA;QAEpF,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAA;YACtC,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,SAAQ;QACV,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YACvD,SAAQ;QACV,CAAC;QAED,MAAM,MAAM,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAA;QACnD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAA;YACnE,SAAQ;QACV,CAAC;QAED,MAAM,yBAAyB,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACzF,CAAC;AACH,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { DiscoveredGitRepo } from "./discover-git-repos.js";
1
+ import type { DiscoveredGitRepo, DiscoveredProjectDirectory } from "./discover-git-repos.js";
2
2
  export type PreflightPolicy = {
3
3
  readonly allowDirty: boolean;
4
4
  readonly allowNonGit: boolean;
@@ -8,6 +8,7 @@ export type PreflightResult = {
8
8
  } | {
9
9
  readonly status: "non_git";
10
10
  readonly detectedRepos: readonly DiscoveredGitRepo[];
11
+ readonly detectedProjectDirectories: readonly DiscoveredProjectDirectory[];
11
12
  } | {
12
13
  readonly status: "dirty";
13
14
  readonly dirtyPaths: readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"env-preflight.d.ts","sourceRoot":"","sources":["../../src/workspace/env-preflight.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAGhE,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,eAAe,GACvB;IAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;CAAE,GACzB;IACE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,aAAa,EAAE,SAAS,iBAAiB,EAAE,CAAA;CACrD,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;CACvC,CAAA;AAQL,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,EACnB,QAAQ,eAAe,KACtB,OAAO,CAAC,eAAe,CAoBzB,CAAA"}
1
+ {"version":3,"file":"env-preflight.d.ts","sourceRoot":"","sources":["../../src/workspace/env-preflight.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAO5F,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,eAAe,GACvB;IAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;CAAE,GACzB;IACE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,aAAa,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACpD,QAAQ,CAAC,0BAA0B,EAAE,SAAS,0BAA0B,EAAE,CAAA;CAC3E,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;CACvC,CAAA;AAQL,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,EACnB,QAAQ,eAAe,KACtB,OAAO,CAAC,eAAe,CA6BzB,CAAA"}
@@ -1,13 +1,22 @@
1
1
  import { spawn } from "node:child_process";
2
- import { discoverChildGitRepos } from "./discover-git-repos.js";
2
+ import { discoverChildGitRepos, discoverChildProjectDirectories, findProjectDirectoryMarker, } from "./discover-git-repos.js";
3
3
  export const runWorkspacePreflight = async (projectRoot, policy) => {
4
4
  const repoRoot = await resolveRepoRoot(projectRoot);
5
5
  if (repoRoot === null) {
6
- if (policy.allowNonGit) {
6
+ if (policy.allowNonGit && findProjectDirectoryMarker(projectRoot) !== undefined) {
7
+ return { status: "ok" };
8
+ }
9
+ const detectedProjectDirectories = policy.allowNonGit
10
+ ? await discoverChildProjectDirectories(projectRoot)
11
+ : [];
12
+ if (policy.allowNonGit && detectedProjectDirectories.length === 0) {
7
13
  return { status: "ok" };
8
14
  }
9
15
  const detectedRepos = await discoverChildGitRepos(projectRoot);
10
- return { status: "non_git", detectedRepos };
16
+ if (policy.allowNonGit) {
17
+ return { status: "non_git", detectedRepos, detectedProjectDirectories };
18
+ }
19
+ return { status: "non_git", detectedRepos, detectedProjectDirectories };
11
20
  }
12
21
  if (policy.allowDirty) {
13
22
  return { status: "ok" };
@@ -1 +1 @@
1
- {"version":3,"file":"env-preflight.js","sourceRoot":"","sources":["../../src/workspace/env-preflight.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-preflight.js","sourceRoot":"","sources":["../../src/workspace/env-preflight.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,7 @@ export declare const RunWorkspaceSchema: z.ZodReadonly<z.ZodObject<{
52
52
  dirtyAllowed: z.ZodBoolean;
53
53
  harnessChangedPaths: z.ZodReadonly<z.ZodArray<z.ZodString>>;
54
54
  }, z.core.$strip>>]>;
55
+ executionRoot: z.ZodOptional<z.ZodString>;
55
56
  }, z.core.$strip>>;
56
57
  export type GitWorkspaceState = z.infer<typeof GitWorkspaceStateSchema>;
57
58
  export type NonGitWorkspaceState = z.infer<typeof NonGitWorkspaceStateSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"git-baseline.d.ts","sourceRoot":"","sources":["../../src/workspace/git-baseline.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAQvB,eAAO,MAAM,uBAAuB;;;;;;;;kBAavB,CAAA;AAEb,eAAO,MAAM,0BAA0B;;;;;;;;kBAU1B,CAAA;AAEb,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;oBAGlC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;kBAIlB,CAAA;AAEb,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM,KAAG,MACgB,CAAA;AAEtE,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,KAAG,MACW,CAAA;AAE9D,eAAO,MAAM,yBAAyB,QAAO,YAU3C,CAAA"}
1
+ {"version":3,"file":"git-baseline.d.ts","sourceRoot":"","sources":["../../src/workspace/git-baseline.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AASvB,eAAO,MAAM,uBAAuB;;;;;;;;kBAavB,CAAA;AAEb,eAAO,MAAM,0BAA0B;;;;;;;;kBAU1B,CAAA;AAEb,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;oBAGlC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;kBAKlB,CAAA;AAEb,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM,KAAG,MACgB,CAAA;AAEtE,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,KAAG,MACW,CAAA;AAE9D,eAAO,MAAM,yBAAyB,QAAO,YAU3C,CAAA"}
@@ -2,6 +2,7 @@ import { createHash } from "node:crypto";
2
2
  import { z } from "zod";
3
3
  import { WorkspaceRelativePathSchema } from "../path/workspace-path.js";
4
4
  const Sha256DigestSchema = z.string().regex(/^sha256:[a-f0-9]{64}$/);
5
+ const ExecutionRootSchema = z.string().trim().min(1);
5
6
  const ManagedFileHashesSchema = z.record(WorkspaceRelativePathSchema, Sha256DigestSchema).readonly();
6
7
  export const GitWorkspaceStateSchema = z
7
8
  .object({
@@ -35,6 +36,7 @@ export const WorkspaceGitStateSchema = z.union([
35
36
  export const RunWorkspaceSchema = z
36
37
  .object({
37
38
  git: WorkspaceGitStateSchema,
39
+ executionRoot: ExecutionRootSchema.optional(),
38
40
  })
39
41
  .readonly();
40
42
  export const createWorkspaceDigest = (value) => `sha256:${createHash("sha256").update(value, "utf8").digest("hex")}`;
@@ -1 +1 @@
1
- {"version":3,"file":"git-baseline.js","sourceRoot":"","sources":["../../src/workspace/git-baseline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AAEvE,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;AAEpE,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,2BAA2B,EAAE,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAA;AAEpG,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC;KACrC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtB,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,KAAK,CAAC,gBAAgB,CAAC;SACvB,QAAQ,EAAE;IACb,kBAAkB,EAAE,kBAAkB;IACtC,iBAAiB,EAAE,uBAAuB;IAC1C,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;IAClE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;CACrE,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE;IACjB,kBAAkB,EAAE,kBAAkB;IACtC,iBAAiB,EAAE,uBAAuB;IAC1C,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;IAClE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;CACrE,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC7C,uBAAuB;IACvB,0BAA0B;CAC3B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,GAAG,EAAE,uBAAuB;CAC7B,CAAC;KACD,QAAQ,EAAE,CAAA;AAOb,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAU,EAAE,CAC7D,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;AAEtE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAU,EAAE,CAC1D,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;AAE9D,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAiB,EAAE,CAAC,CAAC;IAC5D,GAAG,EAAE;QACH,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;QACb,kBAAkB,EAAE,qBAAqB,CAAC,EAAE,CAAC;QAC7C,iBAAiB,EAAE,EAAE;QACrB,iBAAiB,EAAE,EAAE;QACrB,YAAY,EAAE,KAAK;QACnB,mBAAmB,EAAE,EAAE;KACxB;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"git-baseline.js","sourceRoot":"","sources":["../../src/workspace/git-baseline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AAEvE,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;AACpE,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAEpD,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,2BAA2B,EAAE,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAA;AAEpG,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC;KACrC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtB,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,KAAK,CAAC,gBAAgB,CAAC;SACvB,QAAQ,EAAE;IACb,kBAAkB,EAAE,kBAAkB;IACtC,iBAAiB,EAAE,uBAAuB;IAC1C,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;IAClE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;CACrE,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE;IACjB,kBAAkB,EAAE,kBAAkB;IACtC,iBAAiB,EAAE,uBAAuB;IAC1C,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;IAClE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;CACrE,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC7C,uBAAuB;IACvB,0BAA0B;CAC3B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,GAAG,EAAE,uBAAuB;IAC5B,aAAa,EAAE,mBAAmB,CAAC,QAAQ,EAAE;CAC9C,CAAC;KACD,QAAQ,EAAE,CAAA;AAOb,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAU,EAAE,CAC7D,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;AAEtE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAU,EAAE,CAC1D,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;AAE9D,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAiB,EAAE,CAAC,CAAC;IAC5D,GAAG,EAAE;QACH,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;QACb,kBAAkB,EAAE,qBAAqB,CAAC,EAAE,CAAC;QAC7C,iBAAiB,EAAE,EAAE;QACrB,iBAAiB,EAAE,EAAE;QACrB,YAAY,EAAE,KAAK;QACnB,mBAAmB,EAAE,EAAE;KACxB;CACF,CAAC,CAAA"}
@@ -1,4 +1,9 @@
1
- import { type GitWorkspaceState, type WorkspaceGitState } from "./git-baseline.js";
1
+ import { type WorkspaceGitState } from "./git-baseline.js";
2
+ export declare class NonGitWorkspaceScanLimitError extends Error {
3
+ readonly detail: string;
4
+ readonly name = "NonGitWorkspaceScanLimitError";
5
+ constructor(detail: string);
6
+ }
2
7
  export type WorkspacePolicy = {
3
8
  readonly allowDirty: boolean;
4
9
  readonly allowNonGit?: boolean;
@@ -20,7 +25,7 @@ type RepositoryState = GitRepositoryState | NonGitRepositoryState;
20
25
  export type WorkspaceChangeAssessment = {
21
26
  readonly status: "ok";
22
27
  readonly actualChangedPaths: readonly string[];
23
- readonly nextWorkspace: GitWorkspaceState;
28
+ readonly nextWorkspace: WorkspaceGitState;
24
29
  } | {
25
30
  readonly status: "paused";
26
31
  readonly actualChangedPaths: readonly string[];
@@ -31,7 +36,7 @@ export interface WorkspaceAdapter {
31
36
  captureBaseline(policy: WorkspacePolicy): Promise<WorkspaceGitState>;
32
37
  captureCurrentState(): Promise<RepositoryState>;
33
38
  assessTaskChanges(input: {
34
- readonly baseline: GitWorkspaceState;
39
+ readonly baseline: WorkspaceGitState;
35
40
  readonly before: RepositoryState;
36
41
  readonly afterWorker: RepositoryState;
37
42
  readonly afterVerification: RepositoryState;
@@ -1 +1 @@
1
- {"version":3,"file":"git-workspace-adapter.d.ts","sourceRoot":"","sources":["../../src/workspace/git-workspace-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAQD,KAAK,kBAAkB,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAC7D,CAAA;AAED,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAC7D,CAAA;AAED,KAAK,eAAe,GAAG,kBAAkB,GAAG,qBAAqB,CAAA;AAEjE,MAAM,MAAM,yBAAyB,GACjC;IACE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;IACrB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9C,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAA;CAC1C,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;IACzB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CACzC,CAAA;AAEL,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IACpE,mBAAmB,IAAI,OAAO,CAAC,eAAe,CAAC,CAAA;IAC/C,iBAAiB,CAAC,KAAK,EAAE;QACvB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;QACpC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;QAChC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAA;QACrC,QAAQ,CAAC,iBAAiB,EAAE,eAAe,CAAA;QAC3C,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAA;QAC/C,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;KACzC,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAA;CACvC;AAED,eAAO,MAAM,yBAAyB,GACpC,aAAa,MAAM,EACnB,SAAS,eAAe,KACvB,gBAwID,CAAA"}
1
+ {"version":3,"file":"git-workspace-adapter.d.ts","sourceRoot":"","sources":["../../src/workspace/git-workspace-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,iBAAiB,EACvB,MAAM,mBAAmB,CAAA;AAK1B,qBAAa,6BAA8B,SAAQ,KAAK;IAG1C,QAAQ,CAAC,MAAM,EAAE,MAAM;IAFnC,QAAQ,CAAC,IAAI,mCAAkC;gBAE1B,MAAM,EAAE,MAAM;CAGpC;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAQD,KAAK,kBAAkB,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAC7D,CAAA;AAED,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAC7D,CAAA;AAED,KAAK,eAAe,GAAG,kBAAkB,GAAG,qBAAqB,CAAA;AAEjE,MAAM,MAAM,yBAAyB,GACjC;IACE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;IACrB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9C,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAA;CAC1C,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;IACzB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CACzC,CAAA;AAEL,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IACpE,mBAAmB,IAAI,OAAO,CAAC,eAAe,CAAC,CAAA;IAC/C,iBAAiB,CAAC,KAAK,EAAE;QACvB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;QACpC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;QAChC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAA;QACrC,QAAQ,CAAC,iBAAiB,EAAE,eAAe,CAAA;QAC3C,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAA;QAC/C,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;KACzC,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAA;CACvC;AAED,eAAO,MAAM,yBAAyB,GACpC,aAAa,MAAM,EACnB,SAAS,eAAe,KACvB,gBA+JD,CAAA"}
@@ -1,8 +1,18 @@
1
1
  import { spawn } from "node:child_process";
2
- import { readFile } from "node:fs/promises";
3
- import { resolve } from "node:path";
2
+ import { readdir, readFile, stat } from "node:fs/promises";
3
+ import { join, resolve } from "node:path";
4
4
  import { normalizeWorkspaceRelativePath, toWorkspaceRelativePath } from "../path/workspace-path.js";
5
5
  import { createBufferDigest, createWorkspaceDigest, } from "./git-baseline.js";
6
+ const MAX_NON_GIT_MANAGED_FILES = 10_000;
7
+ const MAX_NON_GIT_MANAGED_BYTES = 64 * 1024 * 1024;
8
+ export class NonGitWorkspaceScanLimitError extends Error {
9
+ detail;
10
+ name = "NonGitWorkspaceScanLimitError";
11
+ constructor(detail) {
12
+ super(`non-git workspace scan limit exceeded: ${detail}`);
13
+ this.detail = detail;
14
+ }
15
+ }
6
16
  export const createGitWorkspaceAdapter = (projectRoot, policy) => ({
7
17
  async captureBaseline(capturePolicy) {
8
18
  const current = await captureRepositoryState(projectRoot);
@@ -33,10 +43,29 @@ export const createGitWorkspaceAdapter = (projectRoot, policy) => ({
33
43
  input.afterWorker.mode === "non-git" ||
34
44
  input.afterVerification.mode === "non-git") {
35
45
  if (policy?.allowNonGit) {
46
+ const claimedChangedPaths = normalizePaths(input.claimedChangedPaths);
36
47
  const actualWorkerChangedPaths = input.before.mode === "non-git" && input.afterWorker.mode === "non-git"
37
48
  ? diffManagedFileHashes(input.before.managedFileHashes, input.afterWorker.managedFileHashes)
38
49
  : [];
39
- const actualChangedPaths = normalizePaths(actualWorkerChangedPaths);
50
+ const externalVerificationPaths = input.afterWorker.mode === "non-git" && input.afterVerification.mode === "non-git"
51
+ ? diffManagedFileHashes(input.afterWorker.managedFileHashes, input.afterVerification.managedFileHashes)
52
+ : [];
53
+ const actualChangedPaths = normalizePaths([
54
+ ...actualWorkerChangedPaths,
55
+ ...externalVerificationPaths,
56
+ ]);
57
+ const outOfScopePaths = normalizePaths([
58
+ ...findDisallowedPaths(claimedChangedPaths, input.allowedPaths),
59
+ ...findDisallowedPaths(actualChangedPaths, input.allowedPaths),
60
+ ]);
61
+ if (outOfScopePaths.length > 0) {
62
+ return {
63
+ status: "paused",
64
+ actualChangedPaths,
65
+ detail: `non-git workspace changes escaped task scope: ${outOfScopePaths.join(", ")}`,
66
+ driftedPaths: outOfScopePaths,
67
+ };
68
+ }
40
69
  return {
41
70
  status: "ok",
42
71
  actualChangedPaths,
@@ -126,7 +155,7 @@ const captureRepositoryState = async (projectRoot) => {
126
155
  if (repoRoot === null) {
127
156
  return {
128
157
  mode: "non-git",
129
- managedFileHashes: {},
158
+ managedFileHashes: await collectNonGitManagedFileHashes(projectRoot),
130
159
  };
131
160
  }
132
161
  const [headRef, dirtyPaths, managedFileHashes] = await Promise.all([
@@ -144,6 +173,78 @@ const captureRepositoryState = async (projectRoot) => {
144
173
  managedFileHashes,
145
174
  };
146
175
  };
176
+ const collectNonGitManagedFileHashes = async (projectRoot) => {
177
+ const paths = [];
178
+ await collectNonGitPaths(projectRoot, "", paths, { bytes: 0 });
179
+ const hashEntries = await Promise.all(paths.map(async (workspacePath) => {
180
+ try {
181
+ const content = await readFile(resolve(projectRoot, workspacePath));
182
+ return [workspacePath, createBufferDigest(content)];
183
+ }
184
+ catch {
185
+ return undefined;
186
+ }
187
+ }));
188
+ const hashes = new Map();
189
+ for (const entry of hashEntries) {
190
+ if (entry !== undefined) {
191
+ hashes.set(entry[0], entry[1]);
192
+ }
193
+ }
194
+ return Object.fromEntries([...hashes.entries()].sort(([left], [right]) => left.localeCompare(right)));
195
+ };
196
+ const collectNonGitPaths = async (root, relativePath, paths, totals) => {
197
+ let entries;
198
+ try {
199
+ entries = await readdir(root);
200
+ }
201
+ catch {
202
+ return;
203
+ }
204
+ for (const entry of entries) {
205
+ const workspacePath = relativePath.length === 0 ? entry : `${relativePath}/${entry}`;
206
+ if (shouldIgnoreWorkspacePath(workspacePath) || shouldIgnoreWorkspaceEntry(entry)) {
207
+ continue;
208
+ }
209
+ const absolutePath = join(root, entry);
210
+ let isDirectory = false;
211
+ let isFile = false;
212
+ try {
213
+ const entryStat = await stat(absolutePath);
214
+ isDirectory = entryStat.isDirectory();
215
+ isFile = entryStat.isFile();
216
+ }
217
+ catch {
218
+ continue;
219
+ }
220
+ if (isDirectory) {
221
+ await collectNonGitPaths(absolutePath, workspacePath, paths, totals);
222
+ continue;
223
+ }
224
+ if (isFile) {
225
+ const normalized = normalizeWorkspaceRelativePath(workspacePath);
226
+ if (normalized !== undefined) {
227
+ if (paths.length >= MAX_NON_GIT_MANAGED_FILES) {
228
+ throw new NonGitWorkspaceScanLimitError(`file count exceeded ${MAX_NON_GIT_MANAGED_FILES}`);
229
+ }
230
+ const fileSize = await readFileSize(absolutePath);
231
+ if (totals.bytes + fileSize > MAX_NON_GIT_MANAGED_BYTES) {
232
+ throw new NonGitWorkspaceScanLimitError(`managed bytes exceeded ${MAX_NON_GIT_MANAGED_BYTES}`);
233
+ }
234
+ totals.bytes += fileSize;
235
+ paths.push(normalized);
236
+ }
237
+ }
238
+ }
239
+ };
240
+ const readFileSize = async (absolutePath) => {
241
+ try {
242
+ return (await stat(absolutePath)).size;
243
+ }
244
+ catch {
245
+ return 0;
246
+ }
247
+ };
147
248
  const resolveRepoRoot = async (cwd) => {
148
249
  const result = await runGitCommand(cwd, ["rev-parse", "--show-toplevel"]);
149
250
  if (result.exitCode !== 0) {
@@ -309,5 +410,22 @@ const formatPathSet = (paths) => {
309
410
  }
310
411
  return `[${normalizePaths(paths).join(", ")}]`;
311
412
  };
312
- const shouldIgnoreWorkspacePath = (workspacePath) => workspacePath === ".harness" || workspacePath.startsWith(".harness/");
413
+ const shouldIgnoreWorkspacePath = (workspacePath) => workspacePath === ".harness" ||
414
+ workspacePath.startsWith(".harness/") ||
415
+ workspacePath.endsWith("/www/logs") ||
416
+ workspacePath.includes("/www/logs/");
417
+ const shouldIgnoreWorkspaceEntry = (entry) => entry === ".git" ||
418
+ entry === "node_modules" ||
419
+ entry === ".harness" ||
420
+ entry === ".codegraph" ||
421
+ entry === ".m2-opencode" ||
422
+ entry === "dist" ||
423
+ entry === "build" ||
424
+ entry === "coverage" ||
425
+ entry === "target" ||
426
+ entry === "logs" ||
427
+ entry === ".next" ||
428
+ entry === ".nuxt" ||
429
+ entry === ".cache" ||
430
+ entry === ".harness-worktrees";
313
431
  //# sourceMappingURL=git-workspace-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-workspace-adapter.js","sourceRoot":"","sources":["../../src/workspace/git-workspace-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-workspace-adapter.js","sourceRoot":"","sources":["../../src/workspace/git-workspace-adapter.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  export { collectProjectContext } from "./collect-project-context.js";
2
- export type { DiscoveredGitRepo } from "./discover-git-repos.js";
3
- export { discoverChildGitRepos } from "./discover-git-repos.js";
2
+ export type { DiscoveredGitRepo, DiscoveredProjectDirectory } from "./discover-git-repos.js";
3
+ export { discoverChildGitRepos, discoverChildProjectDirectories, findProjectDirectoryMarker, } from "./discover-git-repos.js";
4
4
  export type { PreflightPolicy, PreflightResult } from "./env-preflight.js";
5
5
  export { runWorkspacePreflight } from "./env-preflight.js";
6
6
  export type { GitWorkspaceState, NonGitWorkspaceState, RunWorkspace, WorkspaceGitState, } from "./git-baseline.js";
7
7
  export { createBufferDigest, createDefaultRunWorkspace, createWorkspaceDigest, GitWorkspaceStateSchema, NonGitWorkspaceStateSchema, RunWorkspaceSchema, WorkspaceGitStateSchema, } from "./git-baseline.js";
8
8
  export type { WorkspaceAdapter, WorkspaceChangeAssessment, WorkspacePolicy, } from "./git-workspace-adapter.js";
9
- export { createGitWorkspaceAdapter } from "./git-workspace-adapter.js";
9
+ export { createGitWorkspaceAdapter, NonGitWorkspaceScanLimitError, } from "./git-workspace-adapter.js";
10
10
  export type { GitWorktreeAdapter, WorktreeCreateResult, WorktreeLease, WorktreeMergeAbortResult, WorktreeMergeResult, } from "./git-worktree-adapter.js";
11
11
  export { createGitWorktreeAdapter, GitWorktreeCommandError } from "./git-worktree-adapter.js";
12
- export type { ResolvedTargetRepository } from "./resolve-target-repository.js";
12
+ export type { ResolvedTargetRepository, ResolveTargetRepositoryOptions, } from "./resolve-target-repository.js";
13
13
  export { resolveTargetRepository, TargetRepositoryError } from "./resolve-target-repository.js";
14
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,GAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AACtE,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAC7F,YAAY,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAA;AAC9E,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,YAAY,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAC5F,OAAO,EACL,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,GAC3B,MAAM,yBAAyB,CAAA;AAChC,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,GAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,4BAA4B,CAAA;AACnC,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAC7F,YAAY,EACV,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA"}
@@ -1,8 +1,8 @@
1
1
  export { collectProjectContext } from "./collect-project-context.js";
2
- export { discoverChildGitRepos } from "./discover-git-repos.js";
2
+ export { discoverChildGitRepos, discoverChildProjectDirectories, findProjectDirectoryMarker, } from "./discover-git-repos.js";
3
3
  export { runWorkspacePreflight } from "./env-preflight.js";
4
4
  export { createBufferDigest, createDefaultRunWorkspace, createWorkspaceDigest, GitWorkspaceStateSchema, NonGitWorkspaceStateSchema, RunWorkspaceSchema, WorkspaceGitStateSchema, } from "./git-baseline.js";
5
- export { createGitWorkspaceAdapter } from "./git-workspace-adapter.js";
5
+ export { createGitWorkspaceAdapter, NonGitWorkspaceScanLimitError, } from "./git-workspace-adapter.js";
6
6
  export { createGitWorktreeAdapter, GitWorktreeCommandError } from "./git-worktree-adapter.js";
7
7
  export { resolveTargetRepository, TargetRepositoryError } from "./resolve-target-repository.js";
8
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AAEpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAO1D,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAM1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAQtE,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAE7F,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AAEpE,OAAO,EACL,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,GAC3B,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAO1D,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,mBAAmB,CAAA;AAM1B,OAAO,EACL,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,4BAA4B,CAAA;AAQnC,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAK7F,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA"}
@@ -1,12 +1,16 @@
1
1
  export declare class TargetRepositoryError extends Error {
2
- readonly reason: "path_traversal" | "not_found" | "not_git" | "outside_workspace";
2
+ readonly reason: "path_traversal" | "not_found" | "not_directory" | "not_git" | "outside_workspace";
3
3
  readonly detail: string;
4
4
  readonly name = "TargetRepositoryError";
5
- constructor(reason: "path_traversal" | "not_found" | "not_git" | "outside_workspace", detail: string);
5
+ constructor(reason: "path_traversal" | "not_found" | "not_directory" | "not_git" | "outside_workspace", detail: string);
6
6
  }
7
7
  export type ResolvedTargetRepository = {
8
8
  readonly absolutePath: string;
9
9
  readonly relativePath: string;
10
+ readonly mode: "git" | "non-git";
10
11
  };
11
- export declare const resolveTargetRepository: (targetRepository: string, projectRoot: string) => Promise<ResolvedTargetRepository>;
12
+ export type ResolveTargetRepositoryOptions = {
13
+ readonly allowNonGit?: boolean;
14
+ };
15
+ export declare const resolveTargetRepository: (targetRepository: string, projectRoot: string, options?: ResolveTargetRepositoryOptions) => Promise<ResolvedTargetRepository>;
12
16
  //# sourceMappingURL=resolve-target-repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-target-repository.d.ts","sourceRoot":"","sources":["../../src/workspace/resolve-target-repository.ts"],"names":[],"mappings":"AAIA,qBAAa,qBAAsB,SAAQ,KAAK;IAI5C,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,mBAAmB;IACjF,QAAQ,CAAC,MAAM,EAAE,MAAM;IAJzB,QAAQ,CAAC,IAAI,2BAA0B;gBAG5B,MAAM,EAAE,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,mBAAmB,EACxE,MAAM,EAAE,MAAM;CAI1B;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,uBAAuB,GAClC,kBAAkB,MAAM,EACxB,aAAa,MAAM,KAClB,OAAO,CAAC,wBAAwB,CAuClC,CAAA"}
1
+ {"version":3,"file":"resolve-target-repository.d.ts","sourceRoot":"","sources":["../../src/workspace/resolve-target-repository.ts"],"names":[],"mappings":"AAIA,qBAAa,qBAAsB,SAAQ,KAAK;IAI5C,QAAQ,CAAC,MAAM,EACX,gBAAgB,GAChB,WAAW,GACX,eAAe,GACf,SAAS,GACT,mBAAmB;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM;IATzB,QAAQ,CAAC,IAAI,2BAA0B;gBAG5B,MAAM,EACX,gBAAgB,GAChB,WAAW,GACX,eAAe,GACf,SAAS,GACT,mBAAmB,EACd,MAAM,EAAE,MAAM;CAI1B;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,SAAS,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,uBAAuB,GAClC,kBAAkB,MAAM,EACxB,aAAa,MAAM,EACnB,UAAS,8BAAmC,KAC3C,OAAO,CAAC,wBAAwB,CAoDlC,CAAA"}