gaunt-sloth 2.0.0-beta.8 → 2.0.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 (106) hide show
  1. package/.gsloth.review-discovery.md +19 -0
  2. package/cli.js +49 -0
  3. package/dist/cli.js +37 -3
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/adkEvalRunner.d.ts +7 -6
  6. package/dist/commands/adkEvalRunner.js +3 -3
  7. package/dist/commands/adkEvalRunner.js.map +1 -1
  8. package/dist/commands/agUiEvalRunner.d.ts +4 -4
  9. package/dist/commands/agUiEvalRunner.js +8 -7
  10. package/dist/commands/agUiEvalRunner.js.map +1 -1
  11. package/dist/commands/askCommand.js +9 -1
  12. package/dist/commands/askCommand.js.map +1 -1
  13. package/dist/commands/batchCommand.d.ts +2 -2
  14. package/dist/commands/batchCommand.js +10 -5
  15. package/dist/commands/batchCommand.js.map +1 -1
  16. package/dist/commands/commandIntrospection.d.ts +1 -1
  17. package/dist/commands/commandIntrospection.js +6 -3
  18. package/dist/commands/commandIntrospection.js.map +1 -1
  19. package/dist/commands/configCommand.d.ts +1 -1
  20. package/dist/commands/configCommand.js +1 -1
  21. package/dist/commands/configSetup.d.ts +1 -1
  22. package/dist/commands/discoveryConfigSchemaAgreement.d.ts +45 -0
  23. package/dist/commands/discoveryConfigSchemaAgreement.js +2 -0
  24. package/dist/commands/discoveryConfigSchemaAgreement.js.map +1 -0
  25. package/dist/commands/evalCommand.d.ts +27 -1
  26. package/dist/commands/evalCommand.js +155 -13
  27. package/dist/commands/evalCommand.js.map +1 -1
  28. package/dist/commands/execCommand.d.ts +1 -1
  29. package/dist/commands/execCommand.js +9 -2
  30. package/dist/commands/execCommand.js.map +1 -1
  31. package/dist/commands/firstRunDialog.d.ts +3 -3
  32. package/dist/commands/firstRunDialog.js +2 -2
  33. package/dist/commands/getCommand.js +10 -1
  34. package/dist/commands/getCommand.js.map +1 -1
  35. package/dist/commands/historyCommand.d.ts +1 -1
  36. package/dist/commands/historyCommand.js +16 -4
  37. package/dist/commands/historyCommand.js.map +1 -1
  38. package/dist/commands/prCommand.js +45 -16
  39. package/dist/commands/prCommand.js.map +1 -1
  40. package/dist/commands/prDiscovery.d.ts +24 -25
  41. package/dist/commands/prDiscovery.js +55 -132
  42. package/dist/commands/prDiscovery.js.map +1 -1
  43. package/dist/commands/requirementsDiscovery.d.ts +82 -0
  44. package/dist/commands/requirementsDiscovery.js +127 -0
  45. package/dist/commands/requirementsDiscovery.js.map +1 -0
  46. package/dist/commands/reviewCommand.js +75 -8
  47. package/dist/commands/reviewCommand.js.map +1 -1
  48. package/dist/commands/reviewDiscovery.d.ts +96 -0
  49. package/dist/commands/reviewDiscovery.js +180 -0
  50. package/dist/commands/reviewDiscovery.js.map +1 -0
  51. package/dist/tui/approvalBridges.d.ts +86 -0
  52. package/dist/tui/approvalBridges.js +147 -0
  53. package/dist/tui/approvalBridges.js.map +1 -0
  54. package/dist/tui/components/App.js +272 -27
  55. package/dist/tui/components/App.js.map +1 -1
  56. package/dist/tui/components/DebugPanel.d.ts +6 -3
  57. package/dist/tui/components/DebugPanel.js +32 -10
  58. package/dist/tui/components/DebugPanel.js.map +1 -1
  59. package/dist/tui/components/FetchProgress.d.ts +1 -1
  60. package/dist/tui/components/LaunchBanner.d.ts +4 -3
  61. package/dist/tui/components/LaunchBanner.js +8 -6
  62. package/dist/tui/components/LaunchBanner.js.map +1 -1
  63. package/dist/tui/components/LiveTurn.d.ts +15 -9
  64. package/dist/tui/components/LiveTurn.js +15 -14
  65. package/dist/tui/components/LiveTurn.js.map +1 -1
  66. package/dist/tui/components/PromptInput.d.ts +2 -2
  67. package/dist/tui/components/PromptInput.js +11 -6
  68. package/dist/tui/components/PromptInput.js.map +1 -1
  69. package/dist/tui/components/ResumePicker.d.ts +69 -0
  70. package/dist/tui/components/ResumePicker.js +93 -0
  71. package/dist/tui/components/ResumePicker.js.map +1 -0
  72. package/dist/tui/components/SelectList.d.ts +1 -1
  73. package/dist/tui/components/SelectList.js +1 -1
  74. package/dist/tui/components/SlashCommandMenu.d.ts +1 -1
  75. package/dist/tui/components/SlashCommandMenu.js +1 -1
  76. package/dist/tui/components/StatusBar.d.ts +27 -1
  77. package/dist/tui/components/StatusBar.js +13 -2
  78. package/dist/tui/components/StatusBar.js.map +1 -1
  79. package/dist/tui/debugRender.d.ts +26 -3
  80. package/dist/tui/debugRender.js +232 -2
  81. package/dist/tui/debugRender.js.map +1 -1
  82. package/dist/tui/fixtureAgent.d.ts +2 -2
  83. package/dist/tui/fixtureAgent.js +2 -2
  84. package/dist/tui/keyBindings.js +7 -1
  85. package/dist/tui/keyBindings.js.map +1 -1
  86. package/dist/tui/keyGuards.d.ts +1 -1
  87. package/dist/tui/keyGuards.js +1 -1
  88. package/dist/tui/ruleWidth.d.ts +1 -1
  89. package/dist/tui/ruleWidth.js +1 -1
  90. package/dist/tui/selectCancelled.d.ts +1 -1
  91. package/dist/tui/selectCancelled.js +1 -1
  92. package/dist/tui/transcriptWindow.js +7 -1
  93. package/dist/tui/transcriptWindow.js.map +1 -1
  94. package/dist/tui/tuiSessionModule.js +89 -190
  95. package/dist/tui/tuiSessionModule.js.map +1 -1
  96. package/dist/tui/types.d.ts +77 -18
  97. package/dist/tui/useMouse.d.ts +1 -1
  98. package/dist/tui/useMouse.js +1 -1
  99. package/dist/tui/useSlothAnimation.d.ts +1 -1
  100. package/dist/tui/viewModel.d.ts +64 -12
  101. package/dist/tui/viewModel.js +43 -11
  102. package/dist/tui/viewModel.js.map +1 -1
  103. package/dist/utils/configErrorGuard.d.ts +11 -3
  104. package/dist/utils/configErrorGuard.js +11 -3
  105. package/dist/utils/configErrorGuard.js.map +1 -1
  106. package/package.json +18 -18
@@ -1 +1 @@
1
- {"version":3,"file":"prDiscovery.js","sourceRoot":"","sources":["../../src/commands/prDiscovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prDiscovery.js","sourceRoot":"","sources":["../../src/commands/prDiscovery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * The agent-running half of change requirements discovery, shared by `gth pr` (discovery mode) and
3
+ * `gth review` (with `commands.review.discovery.enabled`).
4
+ *
5
+ * Each command gathers its own evidence and runs its own deterministic fast path; when that does
6
+ * not settle the requirements, it hands this module a prompt, a user message carrying the evidence
7
+ * as data, and the helper tools it needs (`set_requirements` always, plus `set_diff` and the `gh_*`
8
+ * helpers for `pr`). Everything that is the SAME for both — the configured tool set and its
9
+ * allow-list, the checkpoint saver, the termination announcement — lives here, because each of
10
+ * those was a defect once (EXT-120, EXT-159) and a second copy would have to be fixed a second time.
11
+ */
12
+ import type { BuiltInToolsSetting, CustomToolsConfig, GthConfig, ServerTool } from '@gaunt-sloth/core/config.js';
13
+ import type { BaseToolkit, StructuredToolInterface } from '@langchain/core/tools';
14
+ /**
15
+ * The discovery settings every command's discovery shares: whether it runs, and which tools the
16
+ * discovery agent gets. `commands.pr.discovery` adds `deterministicDiff` on top.
17
+ */
18
+ export interface RequirementsDiscoveryConfig {
19
+ /**
20
+ * Enable change requirements discovery. The default differs per command: `true` for `gth pr`,
21
+ * `false` for `gth review`.
22
+ */
23
+ enabled?: boolean;
24
+ /**
25
+ * Optional tool overrides used only while the discovery agent runs.
26
+ * When omitted, the normal configured tools remain available.
27
+ */
28
+ filesystem?: string[] | 'all' | 'read' | 'none';
29
+ builtInTools?: BuiltInToolsSetting;
30
+ customTools?: CustomToolsConfig | false;
31
+ tools?: StructuredToolInterface[] | BaseToolkit[] | ServerTool[];
32
+ /**
33
+ * Restrict the discovery agent to this allow-list of tool names, applied after every tool
34
+ * source (filesystem, built-in, custom, MCP, A2A, and `tools`) is resolved. Unlike
35
+ * `builtInTools`/`customTools`/`filesystem` (which gate whole tool groups), this trims the
36
+ * final tool set by exact name, so it can pare down MCP server tools
37
+ * (e.g. "mcp__jira__getJiraIssue") and the discovery helper tools to the minimum needed.
38
+ *
39
+ * `set_requirements` is always retained regardless, since it is how the discovery agent
40
+ * records the requirements it found. When omitted, all resolved tools remain available; an
41
+ * empty array keeps only `set_requirements`. The discovery agent never inherits the
42
+ * top-level `GthConfig.allowedTools`, nor the command's own `allowedTools`; this property is
43
+ * its only allow-list.
44
+ */
45
+ allowedTools?: string[];
46
+ }
47
+ /** One discovery agent run, as a command describes it. */
48
+ export interface DiscoveryAgentRun {
49
+ /** The resolved config of the command the discovery runs inside. */
50
+ config: GthConfig;
51
+ /** That command's `discovery` block (tool overrides and the allow-list), if any. */
52
+ discoveryConfig: RequirementsDiscoveryConfig | undefined;
53
+ /** Label only: which verb a notice about this run should name. */
54
+ owningCommand: 'pr' | 'review';
55
+ /**
56
+ * Reads the discovery prompt (mode prompt) for this command. A reader rather than the text so
57
+ * the prompt is read inside the run's `try`, where it always was for `gth pr`: a prompt that
58
+ * fails to read still gets the runner cleaned up and the ending announced.
59
+ */
60
+ readPrompt: () => string;
61
+ /**
62
+ * The user message. Evidence (a branch name, a PR description) must sit inside a delimited
63
+ * block here, as data — never in the prompt, which is instructions.
64
+ */
65
+ userMessage: string;
66
+ /**
67
+ * Builds the command's own helper tools, which record their results in the caller's state.
68
+ * Called each time the agent resolves its tools.
69
+ */
70
+ createDiscoveryTools: () => StructuredToolInterface[];
71
+ }
72
+ /**
73
+ * Run the requirements discovery agent once, to completion or to whatever ended it. Results come
74
+ * back through the caller's own tools (`set_requirements` and friends), not through the return
75
+ * value. Errors from the run propagate after the termination notice has been printed.
76
+ */
77
+ export declare function runDiscoveryAgent(run: DiscoveryAgentRun): Promise<void>;
78
+ /**
79
+ * The config the discovery agent runs with: the command's config with the discovery block's tool
80
+ * overrides applied, and the discovery allow-list in place of every other one.
81
+ */
82
+ export declare function getDiscoveryAgentConfig(config: GthConfig, discoveryConfig: RequirementsDiscoveryConfig | undefined): GthConfig;
@@ -0,0 +1,127 @@
1
+ import { GthAgentRunner } from '@gaunt-sloth/core/core/GthAgentRunner.js';
2
+ import { defaultStatusCallback, displayInfo } from '@gaunt-sloth/core/utils/consoleUtils.js';
3
+ import { buildSystemMessages } from '@gaunt-sloth/core/utils/llmUtils.js';
4
+ import { displayTermination } from '@gaunt-sloth/core/core/terminationNotice.js';
5
+ import { HumanMessage } from '@langchain/core/messages';
6
+ import { MemorySaver } from '@langchain/langgraph';
7
+ import { createResolvers } from '@gaunt-sloth/agent/resolvers.js';
8
+ /**
9
+ * Run the requirements discovery agent once, to completion or to whatever ended it. Results come
10
+ * back through the caller's own tools (`set_requirements` and friends), not through the return
11
+ * value. Errors from the run propagate after the termination notice has been printed.
12
+ */
13
+ export async function runDiscoveryAgent(run) {
14
+ const { config, discoveryConfig, owningCommand } = run;
15
+ const runner = new GthAgentRunner(defaultStatusCallback, createDiscoveryResolvers(run.createDiscoveryTools));
16
+ try {
17
+ // `command` stays undefined so the discovery agent runs on the chat prompt and does NOT pick up
18
+ // the owning command's posture; `owningCommand` is label-only, so a notice about this run says
19
+ // "the pr command" (or "the review command") rather than something the user cannot connect to
20
+ // what they typed (GS2-81).
21
+ //
22
+ // **The checkpoint saver is not optional here, even though `init` accepts none.** An unset
23
+ // command answers approvals (`commandAnswersApprovals`), and every helper tool a discovery
24
+ // agent binds — `set_requirements`, and for `pr` also `set_diff`, `gh_pr`, `gh_diff`,
25
+ // `gh_issue` — has no built-in access class, so all of them are in the rung-independent
26
+ // interrupt set whatever the rung. The first tool call therefore suspends the graph on a
27
+ // LangGraph interrupt, and an interrupt with nowhere to checkpoint throws
28
+ // `MISSING_CHECKPOINTER` instead of suspending — which killed the whole discovery run on its
29
+ // first tool call (EXT-120). That is why the saver lives HERE, in the one function both
30
+ // commands call, rather than at each call site where a second copy could forget it.
31
+ //
32
+ // Per run, not per process: this saver's only job is to hold the graph one discovery run
33
+ // suspends on, and that run dies with the runner it is created beside. `MemorySaver` is what
34
+ // every other surface that drives a gating-capable agent hands the runner.
35
+ //
36
+ // GS2-20 — considered for the durable saver and deliberately kept in memory. This is an internal
37
+ // helper run inside `gth pr` / `gth review`, not a conversation the user had; there is nothing
38
+ // here anyone would ask to resume, and persisting it would put rows in the store with no
39
+ // listing entry.
40
+ await runner.init(undefined, getDiscoveryAgentConfig(config, discoveryConfig), new MemorySaver(), {
41
+ owningCommand,
42
+ });
43
+ await runner.processMessages([
44
+ ...buildSystemMessages(config, run.readPrompt()),
45
+ new HumanMessage(run.userMessage),
46
+ ]);
47
+ }
48
+ finally {
49
+ await runner.cleanup();
50
+ // [[EXT-159]] — say why the DISCOVERY run ended, because on the ending that matters nobody
51
+ // else will. Shared for the same reason as the saver above: both commands need it, and it was
52
+ // a defect in the one that had it last.
53
+ //
54
+ // Several endings return from `processMessages` normally rather than throwing — the interrupt
55
+ // drain giving up, the tool-error budget and the tool-loop guard ending the graph with
56
+ // `jumpTo: 'end'`, an Esc or abort closing the stream, a tool exception returned as the turn's
57
+ // answer, and a refusal or truncation classified from the provider's own metadata. Each leaves
58
+ // the caller's state unset; `prCommand` then prints "Change requirements discovery did not
59
+ // produce a diff" and RETURNS — so `review`'s own notice, the surface this run's ending used to
60
+ // be attributed to, is never reached. One sentence that fits a dozen unrelated causes, printed
61
+ // while the discriminating fact sat unread on this runner: the exact shape EXT-159 removed.
62
+ //
63
+ // In the `finally`, so the endings that DO throw are announced too. Note the ORDER that buys:
64
+ // the `finally` unwinds ahead of the command's catch, so the notice prints FIRST and the
65
+ // provider's prose (or the approvals negotiation transcript) follows it — a heading, then the
66
+ // detail, rather than `reviewModule`'s error-then-notice.
67
+ //
68
+ // A successful discovery costs nothing: it classifies `completed`, which
69
+ // `shouldAnnounceTermination` suppresses, so the review that follows is not preceded by a
70
+ // notice about the sub-run that fed it. The one case that does print twice is a discovery that
71
+ // ended abnormally AFTER the agent had already set what the review needs — the command then
72
+ // continues to the review, and the user sees this notice and later the review's own. That is
73
+ // two runs with two different endings, each stating its own, which is the intended reading
74
+ // rather than a duplicate.
75
+ //
76
+ // Read after `cleanup()` for the reason `reviewModule` reads it there: the agent is gone by
77
+ // here and the runner snapshots its innermost classification at cleanup.
78
+ try {
79
+ displayTermination(runner.getTerminationReason());
80
+ }
81
+ catch {
82
+ /* fail-soft: explaining a run must never be what ends it */
83
+ }
84
+ }
85
+ // The discovery agent streams its final text without a trailing newline, so emit a
86
+ // blank line to separate it from the review agent's output that follows.
87
+ displayInfo('');
88
+ }
89
+ /**
90
+ * The config the discovery agent runs with: the command's config with the discovery block's tool
91
+ * overrides applied, and the discovery allow-list in place of every other one.
92
+ */
93
+ export function getDiscoveryAgentConfig(config, discoveryConfig) {
94
+ const baseTools = discoveryConfig?.tools ?? config.tools ?? [];
95
+ const customTools = discoveryConfig && 'customTools' in discoveryConfig
96
+ ? discoveryConfig.customTools
97
+ : config.customTools;
98
+ return {
99
+ ...config,
100
+ filesystem: discoveryConfig?.filesystem ?? config.filesystem,
101
+ builtInTools: discoveryConfig?.builtInTools ?? config.builtInTools,
102
+ customTools: customTools === false ? undefined : customTools,
103
+ tools: baseTools,
104
+ // The discovery agent must never inherit the top-level allow-list (e.g. a global
105
+ // `allowedTools: []` meant to keep review agents tool-free would strip set_requirements
106
+ // and silently neuter discovery). Only the command's `discovery.allowedTools` applies here,
107
+ // always augmented with set_requirements so the agent can record what it found. The
108
+ // agent applies this list after every tool source is resolved, so it also gates tools
109
+ // supplied via `tools` in config.
110
+ allowedTools: discoveryConfig?.allowedTools
111
+ ? [...new Set([...discoveryConfig.allowedTools, 'set_requirements'])]
112
+ : undefined,
113
+ };
114
+ }
115
+ function createDiscoveryResolvers(createDiscoveryTools) {
116
+ const baseResolvers = createResolvers();
117
+ return {
118
+ ...baseResolvers,
119
+ resolveTools: async (effectiveConfig, command) => {
120
+ const baseTools = baseResolvers.resolveTools
121
+ ? await baseResolvers.resolveTools(effectiveConfig, command)
122
+ : [];
123
+ return [...baseTools, ...createDiscoveryTools()];
124
+ },
125
+ };
126
+ }
127
+ //# sourceMappingURL=requirementsDiscovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requirementsDiscovery.js","sourceRoot":"","sources":["../../src/commands/requirementsDiscovery.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { Option } from 'commander';
2
- import { displayError } from '@gaunt-sloth/core/utils/consoleUtils.js';
3
- import { getStringFromStdin, setExitCode } from '@gaunt-sloth/core/utils/systemUtils.js';
2
+ import { displayError, displayInfo } from '@gaunt-sloth/core/utils/consoleUtils.js';
3
+ import { getStringFromStdin, setExitCode, stdout } from '@gaunt-sloth/core/utils/systemUtils.js';
4
+ import { ApprovalStopError, approvalStopRows } from '@gaunt-sloth/core/core/shell/approvalStop.js';
4
5
  import { getCommandSourceInput, getEffectiveContentSource, getEffectiveRequirementSource, getReviewSystemPrompt, withReviewContentSource, } from '#src/commands/commandIntrospection.js';
5
6
  import { REQUIREMENTS_SOURCES, CONTENT_SOURCES, } from '#src/commands/commandUtils.js';
6
7
  import { wrapContent } from '@gaunt-sloth/core/utils/llmUtils.js';
@@ -8,6 +9,10 @@ import { readMultipleFilesFromProjectDir } from '@gaunt-sloth/review/utils/fileU
8
9
  // From the REVIEW package, not this package's own same-named module: both ship a
9
10
  // `commands/commandUtils`, and this helper lives only in review's (GS2-45).
10
11
  import { resolvePrIdFromArg } from '@gaunt-sloth/review/commands/commandUtils.js';
12
+ import { extractChangedPathsFromDiff } from '@gaunt-sloth/review/utils/diffPaths.js';
13
+ import { writeReviewFailureReport } from '@gaunt-sloth/review/modules/reviewFailureReport.js';
14
+ /** The source label this command passes to `review()`, and therefore names its report file with. */
15
+ const REVIEW_SOURCE = 'REVIEW';
11
16
  export function reviewCommand(program, cliConfigOverrides) {
12
17
  program
13
18
  .command('review')
@@ -38,9 +43,17 @@ export function reviewCommand(program, cliConfigOverrides) {
38
43
  // made on config (the review module's `gth_gh_read_file` gate) can never disagree with where
39
44
  // the diff actually came from.
40
45
  const config = withReviewContentSource(initialConfig, contentSource);
41
- const requirements = await getCommandSourceInput('review', 'requirements', requirementsId, config, requirementSource);
42
- if (requirements) {
43
- content.push(requirements);
46
+ // CFG-80 — discovery runs only when enabled and no `--requirements` was given; an explicit
47
+ // `--requirements` always wins.
48
+ const discoverRequirements = !requirementsId && config.commands?.review?.discovery?.enabled === true;
49
+ // With discovery on and no id, the requirement source is not asked for an id-less lookup:
50
+ // discovery is what finds the id, and the id-less call only warns (the Jira source prints
51
+ // "No issue ID provided") — the same reason `gth pr` skips it in discovery mode.
52
+ if (!discoverRequirements) {
53
+ const requirements = await getCommandSourceInput('review', 'requirements', requirementsId, config, requirementSource);
54
+ if (requirements) {
55
+ content.push(requirements);
56
+ }
44
57
  }
45
58
  // Fail loudly on a content-source error (e.g. the git source outside a repository or with
46
59
  // an empty diff) instead of surfacing a raw unhandled rejection — same shape as `gth pr`.
@@ -49,13 +62,67 @@ export function reviewCommand(program, cliConfigOverrides) {
49
62
  providedContent = await getCommandSourceInput('review', 'content', contentId, config, contentSource);
50
63
  }
51
64
  catch (error) {
52
- displayError(error instanceof Error ? error.message : String(error));
65
+ const message = error instanceof Error ? error.message : String(error);
66
+ displayError(message);
67
+ // REL-20 — `gth review` fails before inference the same way `gth pr` does (the git source
68
+ // outside a repository, the GitHub source on a diff too large to fetch), so it owes the
69
+ // same report. The two commands share this exit; they must not diverge on it.
70
+ writeReviewFailureReport(config, REVIEW_SOURCE, 'review', message);
53
71
  setExitCode(1);
54
72
  return;
55
73
  }
74
+ // CFG-70 — the changed paths come from `providedContent` alone, never from `content`, which
75
+ // by the time it is passed also holds the requirements, the `--file` contents, stdin and
76
+ // `--message`. A requirements document that quotes a diff would otherwise inject paths this
77
+ // change never touched, attaching another module's guidelines to it.
78
+ //
79
+ // Inside the same truthiness guard as the push: `getCommandSourceInput` is TYPED as
80
+ // returning a string but resolves to nothing when a source produces no content, which is
81
+ // what the guard below has always been for.
82
+ let changedPaths = [];
56
83
  if (providedContent) {
84
+ changedPaths = extractChangedPathsFromDiff(providedContent);
57
85
  content.push(providedContent);
58
86
  }
87
+ // CFG-80 — requirements discovery. After the content fetch, so a review that cannot get its
88
+ // diff never spends a discovery agent run; the discovered requirements still go FIRST in the
89
+ // content, where `--requirements` puts them. With discovery off (the default) nothing here
90
+ // runs: no git, no gh, no agent, so the review runs and prints exactly what it did before.
91
+ if (discoverRequirements) {
92
+ const { runReviewDiscovery } = await import('#src/commands/reviewDiscovery.js');
93
+ try {
94
+ // Bound to the same PR id the review tools are bound to below (CFG-54), so a
95
+ // `gth review 42 --content-source github` finds PR 42's requirements rather than the
96
+ // checked-out branch's.
97
+ const discovered = await runReviewDiscovery(config, requirementSource, {
98
+ prId: resolvePrIdFromArg(contentId),
99
+ });
100
+ if (discovered) {
101
+ content.unshift(wrapContent(discovered, 'discovered-requirements', 'requirements'));
102
+ }
103
+ else {
104
+ displayInfo('Requirements discovery found no requirements; reviewing without them.');
105
+ }
106
+ }
107
+ catch (error) {
108
+ // Same handling as `gth pr`'s discovery: the agent runs inside a try/finally with no
109
+ // catch of its own, so an approvals stop or a provider error from it lands here. It fails
110
+ // the run rather than silently reviewing without the requirements the user asked for.
111
+ if (error instanceof ApprovalStopError) {
112
+ for (const row of approvalStopRows(error.parts, { columns: stdout.columns })) {
113
+ displayError(row);
114
+ }
115
+ writeReviewFailureReport(config, REVIEW_SOURCE, 'review', error.message);
116
+ }
117
+ else {
118
+ const message = error instanceof Error ? error.message : String(error);
119
+ displayError(message);
120
+ writeReviewFailureReport(config, REVIEW_SOURCE, 'review', message);
121
+ }
122
+ setExitCode(1);
123
+ return;
124
+ }
125
+ }
59
126
  if (options.file) {
60
127
  content.push(readMultipleFilesFromProjectDir(options.file));
61
128
  }
@@ -68,14 +135,14 @@ export function reviewCommand(program, cliConfigOverrides) {
68
135
  }
69
136
  const { review } = await import('@gaunt-sloth/review/modules/reviewModule.js');
70
137
  const { createResolvers } = await import('@gaunt-sloth/agent/resolvers.js');
71
- await review('REVIEW', getReviewSystemPrompt(config), content.join('\n'), config, 'review', createResolvers(),
138
+ await review(REVIEW_SOURCE, getReviewSystemPrompt(config), content.join('\n'), config, 'review', createResolvers(),
72
139
  // Bind GitHub-only review tools (gth_gh_read_file) to the pull request this run's DIFF
73
140
  // came from. Without it they resolve the PR from the checked-out branch instead, so a
74
141
  // `gth review 42 --content-source github` reviews PR 42's diff against a different pull
75
142
  // request's files, silently. `contentId` is a content id rather than a PR id — a ref
76
143
  // range or a file path under the other sources — so only a bare number is taken as one;
77
144
  // anything else, including no argument at all, keeps the branch-discovery fallback.
78
- { prId: resolvePrIdFromArg(contentId) });
145
+ { prId: resolvePrIdFromArg(contentId), changedPaths });
79
146
  });
80
147
  }
81
148
  //# sourceMappingURL=reviewCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewCommand.js","sourceRoot":"","sources":["../../src/commands/reviewCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewCommand.js","sourceRoot":"","sources":["../../src/commands/reviewCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * CFG-80 — `gth review` finds its own requirements, the way `gth pr` with no arguments does.
3
+ *
4
+ * Runs only when `commands.review.discovery.enabled` is true and no `--requirements` was given.
5
+ * The evidence is exactly what `gth pr`'s discovery reads: the current branch name and, best
6
+ * effort, the current branch's pull request via `gh pr view`. A Jira key in that evidence resolves
7
+ * through the configured Jira requirement source with no agent run; otherwise the discovery agent
8
+ * runs, through the same shared function `gth pr` uses ({@link runDiscoveryAgent}).
9
+ *
10
+ * **Commit subjects are deliberately absent.** They are CFG-80's second step, and when they come
11
+ * they must list the commits from the merge base that `resolveMergeBase` (in
12
+ * `@gaunt-sloth/review/utils/git.js`) computes — the one resolver the git content source diffs
13
+ * against — so the reviewed diff and the evidence beside it can never disagree about the base.
14
+ * Recovering a range any other way (from the diff text, or from `<base>..HEAD` on a branch other
15
+ * people have merged into) would sweep unrelated commits, and the keys in them, into the evidence.
16
+ */
17
+ import type { GthConfig } from '@gaunt-sloth/core/config.js';
18
+ import { type RequirementsDiscoveryConfig } from '#src/commands/requirementsDiscovery.js';
19
+ export declare const GSLOTH_REVIEW_DISCOVERY_PROMPT = ".gsloth.review-discovery.md";
20
+ /**
21
+ * `commands.review.discovery`. The same shape as `commands.pr.discovery` less `deterministicDiff`:
22
+ * the review's diff comes from its content source, so discovery has no diff to fetch.
23
+ */
24
+ export interface ReviewDiscoveryConfig extends RequirementsDiscoveryConfig {
25
+ /**
26
+ * Enable requirements discovery for `gth review` when no `--requirements` is given.
27
+ *
28
+ * Off by default, unlike `commands.pr.discovery`. `gth review` has always run without
29
+ * requirements unless given some; turning discovery on silently would add a `git` and a `gh`
30
+ * call, possibly an issue-tracker call and an agent run, to every review anyone runs. `gth pr`
31
+ * with no arguments is itself the request for discovery, so its default stays on.
32
+ * @default false
33
+ */
34
+ enabled?: boolean;
35
+ }
36
+ declare module '@gaunt-sloth/core/config.js' {
37
+ interface ReviewCommandConfig {
38
+ /** Requirements discovery for `gth review` with no `--requirements`. */
39
+ discovery?: ReviewDiscoveryConfig;
40
+ }
41
+ }
42
+ /**
43
+ * Read the review discovery agent prompt, honouring project / identity-profile overrides and
44
+ * falling back to the default prompt shipped with the assistant package.
45
+ */
46
+ export declare function readReviewDiscoveryPrompt(config: Pick<GthConfig, 'identityProfile' | 'noDefaultPrompts'>): string;
47
+ /** What the review discovery found out about the change, before any agent runs. */
48
+ export interface ReviewDiscoveryEvidence {
49
+ /** The current branch name, or '' on a detached HEAD or outside a repository. */
50
+ branch: string;
51
+ /** The current branch's PR as `gh pr view` formats it, or '' when there is none. */
52
+ prMetadata: string;
53
+ }
54
+ /**
55
+ * The current branch name, from `git rev-parse --abbrev-ref HEAD`.
56
+ *
57
+ * Returns '' — no evidence, never an error — on a detached HEAD (git prints the literal `HEAD`
58
+ * there, on every platform), on an unborn branch or outside a repository (git fails), and when
59
+ * git is not installed.
60
+ */
61
+ export declare function readCurrentBranchName(): Promise<string>;
62
+ /** Which change the review is of, when the command line names one. */
63
+ export interface ReviewDiscoveryTarget {
64
+ /**
65
+ * The pull request the review's diff comes from (`gth review 42 --content-source github`), the
66
+ * same id `reviewCommand` binds the review tools to. When set, the evidence is that PR alone:
67
+ * the checked-out branch may be a different change entirely, and requirements taken from it
68
+ * would grade PR 42 against another ticket.
69
+ */
70
+ prId?: string;
71
+ }
72
+ /**
73
+ * Every distinct Jira key the evidence names: each key in the branch name, and the key `gth pr`'s
74
+ * own rules pick from the PR metadata ({@link extractJiraIssueKey}, unchanged). The fast path
75
+ * takes a key only when this set has exactly one member. Branch and PR disagreeing — a branch
76
+ * named for one ticket whose PR description points at another — is exactly the case where
77
+ * picking either would grade the review against the wrong ticket, so it goes to the agent.
78
+ */
79
+ export declare function collectJiraIssueKeys(evidence: ReviewDiscoveryEvidence): Set<string>;
80
+ /**
81
+ * The user message. The evidence enters here, inside delimited blocks and labelled as data, never
82
+ * in the system prompt: a branch name and a PR description are written by whoever pushed the
83
+ * branch, and the requirements the agent sets are what the review is then graded against.
84
+ */
85
+ export declare function buildReviewDiscoveryUserMessage(evidence: ReviewDiscoveryEvidence): string;
86
+ /**
87
+ * Discover requirements for `gth review`. Returns the requirements text, or '' when none were
88
+ * found. Errors from the discovery agent propagate (the caller reports them as `gth pr` does).
89
+ *
90
+ * @param requirementSource the review's effective requirement source (`-p`, else
91
+ * `commands.review.requirementSource`, else the root `requirementSource`).
92
+ * @param target the change the command line names, if any. A git ref range is not a target: the
93
+ * evidence for it is still the checked-out branch, which is the branch under review in the
94
+ * intended use (`gth review main` on a feature branch).
95
+ */
96
+ export declare function runReviewDiscovery(config: GthConfig, requirementSource: string | undefined, target?: ReviewDiscoveryTarget): Promise<string>;