@codetreker/daynight 0.21.13 → 0.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/README.md +141 -37
  2. package/config.example.yml +65 -0
  3. package/dist/commands/review/config.d.ts +2 -1
  4. package/dist/commands/review/config.js +24 -32
  5. package/dist/commands/review/config.js.map +1 -1
  6. package/dist/commands/review/configuration-guide.js +4 -4
  7. package/dist/commands/review/configuration-guide.js.map +1 -1
  8. package/dist/commands/review/definition.js +1 -1
  9. package/dist/commands/review/definition.js.map +1 -1
  10. package/dist/commands/review/repositories.js +10 -17
  11. package/dist/commands/review/repositories.js.map +1 -1
  12. package/dist/commands/worker/attach.d.ts +3 -0
  13. package/dist/commands/worker/attach.js +53 -0
  14. package/dist/commands/worker/attach.js.map +1 -0
  15. package/dist/commands/worker/config.d.ts +10 -0
  16. package/dist/commands/worker/config.js +36 -8
  17. package/dist/commands/worker/config.js.map +1 -1
  18. package/dist/commands/worker/configuration-guide.d.ts +19 -0
  19. package/dist/commands/worker/configuration-guide.js +86 -0
  20. package/dist/commands/worker/configuration-guide.js.map +1 -0
  21. package/dist/commands/worker/definition.js +25 -1
  22. package/dist/commands/worker/definition.js.map +1 -1
  23. package/dist/commands/worker/execution.js +1 -1
  24. package/dist/commands/worker/execution.js.map +1 -1
  25. package/dist/commands/worker/herdr/instance.d.ts +1 -0
  26. package/dist/commands/worker/herdr/instance.js +30 -5
  27. package/dist/commands/worker/herdr/instance.js.map +1 -1
  28. package/dist/commands/worker/index.d.ts +7 -0
  29. package/dist/commands/worker/index.js +15 -1
  30. package/dist/commands/worker/index.js.map +1 -1
  31. package/dist/commands/worker/repositories.d.ts +23 -0
  32. package/dist/commands/worker/repositories.js +157 -0
  33. package/dist/commands/worker/repositories.js.map +1 -0
  34. package/dist/commands/worker/runtime.d.ts +1 -0
  35. package/dist/commands/worker/runtime.js +33 -5
  36. package/dist/commands/worker/runtime.js.map +1 -1
  37. package/dist/config/document.d.ts +1 -1
  38. package/dist/config/document.js +1 -9
  39. package/dist/config/document.js.map +1 -1
  40. package/dist/config/errors.d.ts +2 -2
  41. package/dist/config/errors.js.map +1 -1
  42. package/dist/repository/location.d.ts +7 -0
  43. package/dist/repository/location.js +51 -0
  44. package/dist/repository/location.js.map +1 -0
  45. package/package.json +4 -3
package/README.md CHANGED
@@ -99,6 +99,10 @@ daynight login [--no-browser] # Authorize CLI access through the browser
99
99
  daynight logout # Revoke and remove the current CLI credential
100
100
  daynight worker # Show worker help
101
101
  daynight worker run # Run until interrupted
102
+ daynight worker attach # Open the worker Herdr session
103
+ daynight worker repo list [--json]
104
+ daynight worker repo add [--project <project-id>]
105
+ daynight worker repo remove [--project <project-id>]
102
106
  daynight worker retry <task-id> --claim-id <claim-id> [--project <project-id>]
103
107
  daynight worker release <task-id> --claim-id <claim-id> --if-version <version> [--project <project-id>]
104
108
  daynight worker resume <task-id> --claim-id <previous-claim-id> --if-version <version> [--project <project-id>]
@@ -310,6 +314,24 @@ records startup-file ownership and installation limits.
310
314
 
311
315
  ## Configuration setup
312
316
 
317
+ The shared configuration file is `~/.daynight/config.yml`. The complete
318
+ [`config.example.yml`](config.example.yml) covers service access, review and worker
319
+ settings with their defaults and optional overrides. It is included at the root
320
+ of the npm package. For an npm global installation, locate it with:
321
+
322
+ ```bash
323
+ npm root --global
324
+ ```
325
+
326
+ Open `@codetreker/daynight/config.example.yml` beneath that directory. Select the
327
+ sections needed for your commands and replace the example repositories and local
328
+ paths. For a new configuration, save the selected settings to
329
+ `~/.daynight/config.yml`; for an existing file, merge them while preserving its
330
+ credential, generated `workerId` and unrelated settings. The example itself is
331
+ not loaded automatically. Repository paths resolve from the configuration
332
+ directory, with the rules in the [worker](#worker-configuration-and-startup) and
333
+ [review](#review-configuration-and-startup) guides.
334
+
313
335
  Project and task commands use `https://daynight.cc` when the configuration file or
314
336
  `serverUrl` is absent. A production connection needs no server configuration.
315
337
  Run `daynight login` to display an authorization code and open the verification
@@ -342,7 +364,8 @@ commands do not start login, follow redirects with credentials, or automatically
342
364
  repeat a write. Reconcile an unconfirmed business mutation before another one.
343
365
 
344
366
  The first `review run`, `review list` or `review ls` asks for a repository when
345
- the file or `repositories` field is absent. To configure one in advance, run:
367
+ the file, `review` section or `review.repositories` field is absent. To configure
368
+ one in advance, run:
346
369
 
347
370
  ```bash
348
371
  daynight review add-repo https://github.com/OWNER/REPO.git
@@ -774,12 +797,69 @@ integration/history instead of installing or changing global native settings.
774
797
  Git transport and tools used by the task, such as authenticated GitHub CLI for
775
798
  PR delivery, must also be ready.
776
799
 
777
- Run `daynight login` for Daynight authentication. Add the following mapping to
778
- the shared `~/.daynight/config.yml`, preserving existing connection and review
779
- settings:
800
+ Run `daynight login` for Daynight authentication, then select one or more
801
+ existing accessible Projects:
802
+
803
+ ```bash
804
+ daynight worker repo add
805
+ daynight worker repo list
806
+ daynight worker repo remove
807
+ ```
808
+
809
+ Add and remove list remote Projects for multiselection. Each choice includes its
810
+ name, UUID and repository URL. A new registration saves the selected Project ID,
811
+ original server repository URL and an absolute local path. Matching existing
812
+ registrations retain their configured transport URL, path and native settings;
813
+ a remote-only registration gains only its Project ID. Remove changes configuration
814
+ only: clones, claims, worktrees, native history and frozen execution settings
815
+ remain. A running worker reads its next selection at startup, without hot reload.
816
+ For scripts, identify one accessible existing Project explicitly:
817
+
818
+ ```bash
819
+ daynight worker repo add --project PROJECT_UUID
820
+ daynight worker repo remove --project PROJECT_UUID
821
+ daynight worker repo list --json
822
+ ```
823
+
824
+ `list` reads local registrations without remote discovery. Add and remove
825
+ operate on existing accessible remote Projects, not raw Git URLs or new Project
826
+ creation. Cancellation, empty choices, authentication or API failures, invalid
827
+ selections and save failures leave the selection unchanged.
828
+
829
+ An empty repository list makes interactive `worker run` offer the same Project
830
+ selection. Fresh startup saves the selection before creating worker identity,
831
+ SQLite, Git or Herdr resources. A restarted worker with retained state first
832
+ establishes its cleanup controller, so committed cleanup deadlines continue
833
+ while Project lookup or prompting waits. New task resources wait for successful
834
+ selection. Startup checks the service and selected worker settings from one
835
+ captured configuration source; changed service or credentials require restarting
836
+ the worker. Without terminal input and stderr, configure a Project with
837
+ `worker repo add --project PROJECT_UUID` before startup.
838
+
839
+ New paths use `worker.repositoryRoot`, defaulting to `~/daynights`, independently
840
+ of `review.repositoryRoot`. The worker root accepts the current home
841
+ shortcut (`~` or `~/`), absolute paths and paths relative to `config.yml`; Windows
842
+ also accepts `~\`. Registration resolves that root with the actual home and
843
+ saves absolute paths. Ordinary repositories use `<root>/<host>/<owner>/<repo>`;
844
+ generic transport, user, port or nested-path identities retain distinct encoded
845
+ coordinates. Existing Project paths and agent overrides survive repeat add and
846
+ root edits.
847
+
848
+ Network and interaction hold no configuration lock. The atomic writer rereads
849
+ current YAML, preserves comments and unrelated edits, and refuses changed
850
+ worker root, repository selection or service credentials. Save also rejects
851
+ shared YAML aliases that would alter unrelated effective settings; separate the
852
+ worker data from those aliases before retrying. Unaffected aliases remain valid.
853
+ Repository identities, Project IDs and logical or physical paths must remain
854
+ distinct, including the Daynight state directory. These commands do not clone
855
+ repositories, acquire tasks or start Herdr.
856
+
857
+ For explicit repository paths and runtime overrides, retain the shared
858
+ connection and review settings and configure `worker` directly:
780
859
 
781
860
  ```yaml
782
861
  worker:
862
+ repositoryRoot: ~/daynights
783
863
  maxConcurrent: 1
784
864
  pollIntervalMs: 5000
785
865
  recoveryLimit: 3
@@ -796,17 +876,25 @@ worker:
796
876
  args: []
797
877
  ```
798
878
 
799
- These are the defaults for all optional worker fields; `repositories` is
800
- required. Each entry requires `remote` and `path`, with optional `projectId`,
801
- `agent`, `model` and `args`. The service project must already exist and match the
802
- repository. Add `projectId` when more than one project matches. Missing local
803
- repositories are cloned; existing roots and origins are verified without
804
- resetting their files or branches. Use the native authentication configuration
805
- for credentials, keeping credentials out of repository URLs and argument lists.
806
-
807
- Paths are absolute or relative to the configuration file's directory, never
808
- the launch directory. Tilde expansion and drive-relative Windows paths are
809
- rejected. Repository identities, project IDs and paths cannot duplicate or
879
+ These are the defaults for the optional runtime fields. A missing configuration
880
+ file, an omitted `worker` mapping, and `worker: {}` use the same defaults.
881
+ Omitting `repositories` selects an empty acquisition list; worker repositories
882
+ are never inferred from review settings. Configuration reads do not create or
883
+ rewrite configuration files. Explicit `null` in non-nullable fields, malformed
884
+ settings, filesystem errors and cancellation remain errors; `model: null` keeps
885
+ its documented clearing semantics.
886
+
887
+ Each explicit repository entry requires `remote` and `path`, with optional
888
+ `projectId`, `agent`, `model` and `args`. The
889
+ service project must already exist and match the repository. Add `projectId`
890
+ when more than one project matches. Missing local repositories are cloned;
891
+ existing roots and origins are verified without resetting their files or
892
+ branches. Use the native authentication configuration for credentials, keeping
893
+ credentials out of repository URLs and argument lists.
894
+
895
+ Repository entry paths are absolute or relative to the configuration file's
896
+ directory, never the launch directory. They do not expand tilde and reject
897
+ drive-relative Windows paths. Repository identities, project IDs and paths cannot duplicate or
810
898
  overlap, including the fixed Daynight state directory. Unknown worker fields,
811
899
  wrong types, invalid arguments and unsupported path shapes fail visibly.
812
900
  `maxConcurrent` is a positive integer, `recoveryLimit` is nonnegative and
@@ -864,15 +952,25 @@ it is not replayed. A pause still reserves capacity. Recovering missing original
864
952
  configuration, history or stop evidence requires inspection, without creating a
865
953
  replacement conversation to conceal the loss.
866
954
 
867
- For human input, copy the safe `attach` descriptor printed after the running
868
- worker has completed inventory and private managed-instance readiness.
869
- Invoke its `executable` with its `arguments` (`herdr --session w` for the default
870
- executable), apply exactly its `environment` overrides and remove the names in
871
- `unsetEnvironment` **only for that attach client process**. The descriptor's
872
- private XDG values select the worker's exact Herdr instance; the existing task
873
- pane keeps its original native XDG and private HISTFILE. The descriptor contains
874
- routing and native-home paths, not a dump of authentication values. Continue in
875
- the original task pane so the worker can observe the same execution.
955
+ For human input, run this in another interactive terminal:
956
+
957
+ ```bash
958
+ daynight worker attach
959
+ ```
960
+
961
+ The command opens the existing private Herdr session with the correct directory
962
+ and environment. Continue in the original task pane so the worker can observe
963
+ the same execution. Detaching closes only the client connection; the worker,
964
+ original agent and task keep running. This command needs no Daynight login or
965
+ server request and does not take the worker lock. It connects only to an
966
+ existing session; if it is unavailable, start `daynight worker run` first.
967
+ Client startup and nonzero-exit errors remain visible.
968
+
969
+ The worker prints the attach command after inventory and private
970
+ managed-instance readiness. Its attachment descriptor remains the internal
971
+ source of routing, native-home and history settings. Only the client process
972
+ receives those settings and removal of inherited session identities; the
973
+ existing task pane retains its original native XDG and private HISTFILE.
876
974
 
877
975
  Native startup can be waiting at a folder-trust or authorization screen even
878
976
  when Herdr reports idle/interactiveReady. The worker checks the current Codex
@@ -1095,23 +1193,29 @@ cloning, authentication checks, GitHub calls, SQLite initialization and PR bound
1095
1193
  selection belong to review startup. An already running reviewer keeps its loaded
1096
1194
  configuration until its next startup.
1097
1195
 
1098
- The same YAML also accepts the server client's `serverUrl` and optional
1099
- `serverToken` fields. Review validates its own fields independently of server
1100
- business values. The server projection requires a valid HTTP(S) origin and
1196
+ All review settings belong under the `review` mapping. The same YAML also
1197
+ accepts the server client's `serverUrl` and optional `serverToken` fields, the
1198
+ `worker` mapping and generated `workerId`. Review validates its own fields
1199
+ independently of server business values. The server projection requires a valid HTTP(S) origin and
1101
1200
  validates any configured token and its transport. The shared parser still rejects
1102
1201
  invalid YAML, duplicate keys and unknown root fields. Registration can add the
1103
1202
  first review repository to a server-only file while preserving its server
1104
- settings and comments.
1203
+ settings and comments. Unknown fields inside `review` are rejected by review
1204
+ commands. Existing flat review settings must be moved together under `review`,
1205
+ including `repositoryRoot`, `repositories`, numeric options and Copilot options;
1206
+ remove their old root entries. The old root fields are rejected, with no automatic
1207
+ migration.
1105
1208
 
1106
1209
  A configuration with an explicit addition root is:
1107
1210
 
1108
1211
  ```yaml
1109
- repositoryRoot: ~/daynights
1110
- copilotModel: auto
1111
- copilotReasoningEffort: high
1112
- repositories:
1113
- - remote: https://github.com/OWNER/REPO.git
1114
- path: ../daynights/github.com/owner/repo
1212
+ review:
1213
+ repositoryRoot: ~/daynights
1214
+ copilotModel: auto
1215
+ copilotReasoningEffort: high
1216
+ repositories:
1217
+ - remote: https://github.com/OWNER/REPO.git
1218
+ path: ../daynights/github.com/owner/repo
1115
1219
  ```
1116
1220
 
1117
1221
  `copilotModel` and `copilotReasoningEffort` are independent optional fields for
@@ -1123,11 +1227,11 @@ effort levels and model/effort compatibility; Daynight maintains no static lists
1123
1227
  corresponding override and preserves Copilot's choice, so neither, either or both
1124
1228
  may be configured. Changes take effect on the next `review run` startup. Guided configuration
1125
1229
  and repository registration preserve both fields and YAML comments. The server
1126
- configuration projection recognizes these shared keys without validating their
1230
+ configuration projection recognizes the `review` section without validating its
1127
1231
  review-owned values.
1128
1232
 
1129
- `repositoryRoot` defaults to `~/daynights`. It is used only when `add-repo` has no
1130
- `--path`: the command derives filesystem-safe components from the normalized
1233
+ `review.repositoryRoot` defaults to `~/daynights`. It is used only when
1234
+ `add-repo` has no `--path`: the command derives filesystem-safe components from the normalized
1131
1235
  host/owner/name and saves the resulting absolute repository path. A configured
1132
1236
  root may be absolute, config-directory-relative, or begin with `~` for the current
1133
1237
  OS user's home. Other users' tilde forms are rejected. Changing the root affects
@@ -0,0 +1,65 @@
1
+ # Shared CLI configuration: ~/.daynight/config.yml.
2
+ # Select the sections needed for your commands and replace the example repositories
3
+ # and local paths. Merge settings into an existing file to retain credentials and
4
+ # other configuration; this file is a reference, not an automatically loaded config.
5
+
6
+ # Service origin only: no API path, query, credentials or fragment.
7
+ serverUrl: https://daynight.cc
8
+ # Prefer daynight login, which saves the credential for the selected service.
9
+ # For unattended provisioning, replace this placeholder with that origin's secret.
10
+ # serverToken: REPLACE_WITH_CREDENTIAL_FOR_THIS_ORIGIN
11
+ # Remove or replace an old token before changing serverUrl manually. Keep secrets
12
+ # out of repositories and logs; files containing a token need POSIX mode 0600.
13
+
14
+ # Review configuration. The numeric values below are the defaults; all are positive
15
+ # integers, and fields ending in Ms use milliseconds.
16
+ # Only repositoryRoot expands ~. It selects paths for future review add-repo calls
17
+ # without --path and does not relocate repositories already registered below.
18
+ review:
19
+ repositoryRoot: ~/daynights
20
+ pollIntervalMs: 60000
21
+ maxConcurrentWorker: 1
22
+ agentTimeoutMs: 1800000
23
+ maxAttempts: 3
24
+ retryDelayMs: 30000
25
+ # Optional review overrides, not defaults. Omission preserves Copilot's choices.
26
+ # Copilot owns supported model names, effort levels and their compatibility.
27
+ # copilotModel: auto
28
+ # copilotReasoningEffort: high
29
+ repositories:
30
+ - remote: https://github.com/OWNER/REPO.git
31
+ # Repository paths are absolute or relative to ~/.daynight/, never the launch
32
+ # directory, and do not expand ~. Keep review clones outside ~/.daynight/.
33
+ path: ../daynights/github.com/owner/repo
34
+
35
+ # Worker configuration. Omitted values use these defaults; an empty selection
36
+ # makes interactive worker run guide Project registration. The selected native
37
+ # agent and Herdr must already be configured.
38
+ worker:
39
+ # Used only for new worker repo registrations; independent of review's root.
40
+ repositoryRoot: ~/daynights
41
+ maxConcurrent: 1
42
+ pollIntervalMs: 5000
43
+ recoveryLimit: 3
44
+ agent: copilot
45
+ model: null
46
+ args: []
47
+ # maxConcurrent and pollIntervalMs are positive integers; pollIntervalMs uses
48
+ # milliseconds. recoveryLimit is nonnegative and applies to the whole worker.
49
+ repositories:
50
+ - remote: https://github.com/OWNER/REPO.git
51
+ # Paths follow the same config-directory-relative rule as review paths.
52
+ # Worker repository paths must not overlap each other or ~/.daynight/.
53
+ path: ../code/repo
54
+ # The matching Daynight project must exist. Set its actual UUID when remote
55
+ # discovery matches more than one project.
56
+ # projectId: REPLACE_WITH_MATCHING_PROJECT_UUID
57
+ # Repository overrides inherit fields independently for the same agent.
58
+ # Switching agent clears inherited model and args unless set here. Explicit
59
+ # null model or [] args clears that field; args replaces the entire list.
60
+ # agent: codex
61
+ # model: null
62
+ # args: []
63
+
64
+ # workerId is generated and saved by the CLI. Keep its existing value for this
65
+ # worker; do not copy another machine's identity into this configuration.
@@ -18,7 +18,7 @@ export type ReviewConfiguration = {
18
18
  copilotReasoningEffort?: string;
19
19
  repositories: RepositoryConfiguration[];
20
20
  };
21
- export declare const defaultRepositoryRoot = "~/daynights";
21
+ export { defaultRepositoryRoot } from "../../repository/location.js";
22
22
  export declare const configurationDefaults: {
23
23
  readonly pollIntervalMs: 60000;
24
24
  readonly maxConcurrentWorker: 1;
@@ -28,6 +28,7 @@ export declare const configurationDefaults: {
28
28
  };
29
29
  export declare const remoteIdentity: (remote: string, field: string) => Pick<RepositoryConfiguration, "coordinate" | "host" | "owner" | "name">;
30
30
  export declare const resolveRepositoryRoot: (configuredRoot: unknown, runtimePaths: ReviewPaths, homeDirectory: string, pathApi?: PathApi) => string;
31
+ export declare const reviewConfigurationMapping: (root: Record<string, unknown>) => Record<string, unknown>;
31
32
  export declare const parseConfiguration: (source: string, runtimePaths: ReviewPaths, pathApi?: PathApi) => ReviewConfiguration;
32
33
  export declare const loadConfiguration: (runtimePaths: ReviewPaths) => Promise<ReviewConfiguration>;
33
34
  export declare const validateConfigurationSource: (source: string, runtimePaths: ReviewPaths) => Promise<ReviewConfiguration>;
@@ -1,9 +1,10 @@
1
1
  import path from "node:path";
2
2
  import { parseConfigurationDocument } from "../../config/document.js";
3
3
  import { readConfigurationSource } from "../../config/files.js";
4
+ import { resolveRepositoryRoot as resolveSharedRepositoryRoot, validateRepositoryRoot } from "../../repository/location.js";
4
5
  import { MissingConfigurationFieldError } from "../../config/errors.js";
5
6
  import { ancestorIdentities, missingPathsReferToSameDirectory, pathsEqual, pathsOverlap, resolvePhysicalDirectory } from "../../platform/filesystem.js";
6
- export const defaultRepositoryRoot = "~/daynights";
7
+ export { defaultRepositoryRoot } from "../../repository/location.js";
7
8
  export const configurationDefaults = {
8
9
  pollIntervalMs: 60_000,
9
10
  maxConcurrentWorker: 1,
@@ -36,10 +37,10 @@ const positiveInteger = (mapping, field) => {
36
37
  }
37
38
  const value = mapping[field];
38
39
  if (typeof value !== "number" || !Number.isSafeInteger(value) || value <= 0) {
39
- throw new Error(`${field} must be a positive safe integer.`);
40
+ throw new Error(`review.${field} must be a positive safe integer.`);
40
41
  }
41
42
  if (field.endsWith("Ms") && value > 2_147_483_647) {
42
- throw new Error(`${field} must not exceed the supported timer limit of 2147483647 milliseconds.`);
43
+ throw new Error(`review.${field} must not exceed the supported timer limit of 2147483647 milliseconds.`);
43
44
  }
44
45
  return value;
45
46
  };
@@ -111,39 +112,30 @@ export const remoteIdentity = (remote, field) => {
111
112
  const validateRepositoryPaths = (repositories, repositoryPaths, stateDirectory, pathApi) => {
112
113
  for (const [index, repositoryPath] of repositoryPaths.entries()) {
113
114
  if (pathsOverlap(repositoryPath, stateDirectory, pathApi)) {
114
- throw new Error(`repositories[${index}].path must not overlap the state directory ${stateDirectory}.`);
115
+ throw new Error(`review.repositories[${index}].path must not overlap the state directory ${stateDirectory}.`);
115
116
  }
116
117
  const duplicate = repositoryPaths
117
118
  .slice(0, index)
118
119
  .findIndex((previous) => pathsEqual(previous, repositoryPath, pathApi));
119
120
  if (duplicate !== -1) {
120
- throw new Error(`repositories[${index}].path resolves to the same location as repositories[${duplicate}].path (${repositories[duplicate].coordinate}).`);
121
+ throw new Error(`review.repositories[${index}].path resolves to the same location as review.repositories[${duplicate}].path (${repositories[duplicate].coordinate}).`);
121
122
  }
122
123
  }
123
124
  };
124
- export const resolveRepositoryRoot = (configuredRoot, runtimePaths, homeDirectory, pathApi = path) => {
125
- const root = validateRepositoryRoot(configuredRoot, pathApi);
126
- if (!pathApi.isAbsolute(homeDirectory)) {
127
- throw new Error("The current user's home directory must be an absolute path.");
128
- }
129
- return root === "~" || root.startsWith("~/") || (pathApi.sep === "\\" && root.startsWith("~\\"))
130
- ? pathApi.resolve(pathApi.join(homeDirectory, root.slice(2)))
131
- : pathApi.resolve(pathApi.dirname(runtimePaths.configFile), root);
132
- };
133
- const validateRepositoryRoot = (value, pathApi) => {
134
- const root = nonEmptyString(value, "repositoryRoot");
135
- if (root.startsWith("~") && root !== "~" && !root.startsWith("~/") && !(pathApi.sep === "\\" && root.startsWith("~\\"))) {
136
- throw new Error("repositoryRoot supports only the current user's home directory (~ or ~/), absolute paths, or config-directory-relative paths.");
137
- }
138
- if (pathApi.sep === "\\" && /^[a-z]:(?![\\/])/i.test(root)) {
139
- throw new Error("repositoryRoot must not use a drive-relative Windows path.");
140
- }
141
- return root;
125
+ export const resolveRepositoryRoot = (configuredRoot, runtimePaths, homeDirectory, pathApi = path) => resolveSharedRepositoryRoot(configuredRoot, runtimePaths, homeDirectory, "review.repositoryRoot", pathApi);
126
+ export const reviewConfigurationMapping = (root) => {
127
+ if (!Object.hasOwn(root, "review")) {
128
+ return {};
129
+ }
130
+ const review = asMapping(root.review, "review");
131
+ validateKeys(review, ["repositoryRoot", "repositories", ...Object.keys(configurationDefaults), "copilotModel", "copilotReasoningEffort"], "review");
132
+ return review;
142
133
  };
143
134
  const parseReviewConfiguration = (source, runtimePaths, pathApi, allowMissingRepositories) => {
144
- const { mapping } = parseConfigurationDocument(source, runtimePaths);
135
+ const { mapping: root } = parseConfigurationDocument(source, runtimePaths);
136
+ const mapping = reviewConfigurationMapping(root);
145
137
  if (Object.hasOwn(mapping, "repositoryRoot")) {
146
- validateRepositoryRoot(mapping.repositoryRoot, pathApi);
138
+ validateRepositoryRoot(mapping.repositoryRoot, "review.repositoryRoot", pathApi);
147
139
  }
148
140
  const settings = {
149
141
  pollIntervalMs: positiveInteger(mapping, "pollIntervalMs"),
@@ -151,21 +143,21 @@ const parseReviewConfiguration = (source, runtimePaths, pathApi, allowMissingRep
151
143
  agentTimeoutMs: positiveInteger(mapping, "agentTimeoutMs"),
152
144
  maxAttempts: positiveInteger(mapping, "maxAttempts"),
153
145
  retryDelayMs: positiveInteger(mapping, "retryDelayMs"),
154
- ...(Object.hasOwn(mapping, "copilotModel") ? { copilotModel: nonEmptyString(mapping.copilotModel, "copilotModel") } : {}),
155
- ...(Object.hasOwn(mapping, "copilotReasoningEffort") ? { copilotReasoningEffort: nonEmptyString(mapping.copilotReasoningEffort, "copilotReasoningEffort") } : {}),
146
+ ...(Object.hasOwn(mapping, "copilotModel") ? { copilotModel: nonEmptyString(mapping.copilotModel, "review.copilotModel") } : {}),
147
+ ...(Object.hasOwn(mapping, "copilotReasoningEffort") ? { copilotReasoningEffort: nonEmptyString(mapping.copilotReasoningEffort, "review.copilotReasoningEffort") } : {}),
156
148
  };
157
149
  if (!Object.hasOwn(mapping, "repositories")) {
158
150
  if (allowMissingRepositories) {
159
151
  return { ...settings, repositories: [] };
160
152
  }
161
- throw new MissingConfigurationFieldError("repositories", "Review repositories are not configured; use daynight review add-repo <remote>.");
153
+ throw new MissingConfigurationFieldError("review.repositories", "Review repositories are not configured; use daynight review add-repo <remote>.");
162
154
  }
163
155
  if (!Array.isArray(mapping.repositories) || mapping.repositories.length === 0) {
164
- throw new Error("repositories must be a nonempty sequence.");
156
+ throw new Error("review.repositories must be a nonempty sequence.");
165
157
  }
166
158
  const identities = new Set();
167
159
  const repositories = mapping.repositories.map((value, index) => {
168
- const field = `repositories[${index}]`;
160
+ const field = `review.repositories[${index}]`;
169
161
  const repository = asMapping(value, field);
170
162
  validateKeys(repository, ["remote", "path"], field);
171
163
  const remote = nonEmptyString(repository.remote, `${field}.remote`);
@@ -216,7 +208,7 @@ const validatePhysicalRepositoryPaths = async (configuration, stateDirectory, re
216
208
  await missingPathsReferToSameDirectory(directory.ancestorPath, statePrefix, repositoryPrefix));
217
209
  if ((stateDirectory.missingComponents.length === 0 && repositoryAncestors.has(stateDirectory.ancestorIdentity)) ||
218
210
  (directory.missingComponents.length === 0 && stateAncestors.has(directory.ancestorIdentity)) || sharedMissingPrefix) {
219
- throw new Error(`repositories[${index}].path must not overlap the state directory ${statePath}.`);
211
+ throw new Error(`review.repositories[${index}].path must not overlap the state directory ${statePath}.`);
220
212
  }
221
213
  for (const [previousIndex, previous] of repositoryDirectories.slice(0, index).entries()) {
222
214
  if (directory.ancestorIdentity !== previous.ancestorIdentity) {
@@ -226,7 +218,7 @@ const validatePhysicalRepositoryPaths = async (configuration, stateDirectory, re
226
218
  const exact = sameComponents && directory.missingComponents.every((component, componentIndex) => component === previous.missingComponents[componentIndex]);
227
219
  const observedSameDirectory = !exact && sameComponents && await missingPathsReferToSameDirectory(directory.ancestorPath, previous.missingComponents, directory.missingComponents);
228
220
  if (exact || observedSameDirectory) {
229
- throw new Error(`repositories[${index}].path resolves to the same location as repositories[${previousIndex}].path (${configuration.repositories[previousIndex].coordinate}).`);
221
+ throw new Error(`review.repositories[${index}].path resolves to the same location as review.repositories[${previousIndex}].path (${configuration.repositories[previousIndex].coordinate}).`);
230
222
  }
231
223
  }
232
224
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/commands/review/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/commands/review/config.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { CliCancelledError, withCliCancellation } from "../../cli/cancellation.j
2
2
  import { parseConfigurationDocument } from "../../config/document.js";
3
3
  import { MissingConfigurationFileError, isMissingConfiguration } from "../../config/errors.js";
4
4
  import { readConfigurationSource, updateConfigurationFile } from "../../config/files.js";
5
- import { remoteIdentity, validateRegistrationConfigurationSource } from "./config.js";
5
+ import { remoteIdentity, reviewConfigurationMapping, validateRegistrationConfigurationSource } from "./config.js";
6
6
  import { resolveReviewPaths } from "./paths.js";
7
7
  import { updateRepositoryConfiguration } from "./repositories.js";
8
8
  export const configureReview = async (context, suppliedSignal) => withCliCancellation(context, async (signal) => {
@@ -16,7 +16,7 @@ export const configureReview = async (context, suppliedSignal) => withCliCancell
16
16
  if (!(cause instanceof MissingConfigurationFileError))
17
17
  throw cause;
18
18
  }
19
- const baseline = source === undefined ? {} : parseConfigurationDocument(source, paths).mapping;
19
+ const baseline = source === undefined ? {} : reviewConfigurationMapping(parseConfigurationDocument(source, paths).mapping);
20
20
  const options = { homeDirectory: context.homeDirectory(), workingDirectory: context.workingDirectory() };
21
21
  if (source !== undefined)
22
22
  await validateRegistrationConfigurationSource(source, paths);
@@ -51,7 +51,7 @@ export const configureReview = async (context, suppliedSignal) => withCliCancell
51
51
  const fingerprint = (mapping) => JSON.stringify(["repositoryRoot", "repositories"].map((field) => [field, Object.hasOwn(mapping, field), mapping[field]]));
52
52
  signal.throwIfAborted();
53
53
  await updateConfigurationFile(paths, async (currentSource) => {
54
- const current = currentSource === undefined ? {} : parseConfigurationDocument(currentSource, paths).mapping;
54
+ const current = currentSource === undefined ? {} : reviewConfigurationMapping(parseConfigurationDocument(currentSource, paths).mapping);
55
55
  if (fingerprint(current) !== fingerprint(baseline)) {
56
56
  throw new Error("Review configuration changed while prompting. Run the review command again to review the current values.");
57
57
  }
@@ -71,7 +71,7 @@ export const guideReviewConfiguration = async (context, load, signal) => {
71
71
  return await load();
72
72
  }
73
73
  catch (cause) {
74
- if (!isMissingConfiguration(cause, "repositories"))
74
+ if (!isMissingConfiguration(cause, "review.repositories"))
75
75
  throw cause;
76
76
  if (context.prompt?.isInteractive !== true) {
77
77
  throw new Error(`${cause instanceof Error ? cause.message : String(cause)} Run daynight review add-repo <remote> to configure it.`, { cause: cause instanceof MissingConfigurationFileError ? cause.cause : cause });
@@ -1 +1 @@
1
- {"version":3,"file":"configuration-guide.js","sourceRoot":"","sources":["../../../src/commands/review/configuration-guide.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configuration-guide.js","sourceRoot":"","sources":["../../../src/commands/review/configuration-guide.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export const reviewDefinition = {
24
24
  { names: ["--path"], description: "Dedicated review clone path (relative to the current directory)", value: { name: "path", kind: "directory" } },
25
25
  helpOption,
26
26
  ],
27
- details: "Without --path, repositoryRoot (default: ~/daynights) determines the clone path.\nThe resolved absolute path is saved in ~/.daynight/config.yml.\nChanges take effect the next time daynight review run starts.",
27
+ details: "Without --path, review.repositoryRoot (default: ~/daynights) determines the clone path.\nThe resolved absolute path is saved in ~/.daynight/config.yml.\nChanges take effect the next time daynight review run starts.",
28
28
  },
29
29
  ],
30
30
  options: [helpOption],
@@ -1 +1 @@
1
- {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/commands/review/definition.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAkB,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAE7G,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,mEAAmE;IAChF,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,4CAA4C;YACzD,OAAO,EAAE,CAAC,UAAU,CAAC;YACrB,OAAO,EAAE,0EAA0E;SACpF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC,IAAI,CAAC;YACf,WAAW,EAAE,qDAAqD;YAClE,OAAO,EAAE,CAAC,UAAU,CAAC;YACrB,OAAO,EAAE,wTAAwT;SAClU;QACD;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,+DAA+D;YAC5E,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE,CAAC;YACtF,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,iEAAiE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;gBACjJ,UAAU;aACX;YACD,OAAO,EAAE,iNAAiN;SAC3N;KACF;IACD,OAAO,EAAE,CAAC,UAAU,CAAC;IACrB,OAAO,EAAE,6JAA6J;CACvK,CAAC"}
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/commands/review/definition.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAkB,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAE7G,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,mEAAmE;IAChF,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,4CAA4C;YACzD,OAAO,EAAE,CAAC,UAAU,CAAC;YACrB,OAAO,EAAE,0EAA0E;SACpF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC,IAAI,CAAC;YACf,WAAW,EAAE,qDAAqD;YAClE,OAAO,EAAE,CAAC,UAAU,CAAC;YACrB,OAAO,EAAE,wTAAwT;SAClU;QACD;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,+DAA+D;YAC5E,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE,CAAC;YACtF,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,iEAAiE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;gBACjJ,UAAU;aACX;YACD,OAAO,EAAE,wNAAwN;SAClO;KACF;IACD,OAAO,EAAE,CAAC,UAAU,CAAC;IACrB,OAAO,EAAE,6JAA6J;CACvK,CAAC"}