@kenkaiiii/ggcoder 4.3.232 → 4.3.233
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.
- package/README.md +1 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +7 -89
- package/dist/cli.js.map +1 -1
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +2 -2
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/prompt-commands.d.ts.map +1 -1
- package/dist/core/prompt-commands.js +8 -16
- package/dist/core/prompt-commands.js.map +1 -1
- package/dist/core/prompt-commands.test.js +14 -44
- package/dist/core/prompt-commands.test.js.map +1 -1
- package/dist/core/runtime-mode.d.ts +0 -11
- package/dist/core/runtime-mode.d.ts.map +1 -1
- package/dist/core/runtime-mode.js +0 -9
- package/dist/core/runtime-mode.js.map +1 -1
- package/dist/core/session-restore-display.test.js +4 -110
- package/dist/core/session-restore-display.test.js.map +1 -1
- package/dist/interactive.d.ts.map +1 -1
- package/dist/interactive.js +1 -1
- package/dist/interactive.js.map +1 -1
- package/dist/system-prompt.d.ts +1 -2
- package/dist/system-prompt.d.ts.map +1 -1
- package/dist/system-prompt.js +11 -58
- package/dist/system-prompt.js.map +1 -1
- package/dist/system-prompt.test.js +3 -158
- package/dist/system-prompt.test.js.map +1 -1
- package/dist/tools/bash.d.ts +1 -4
- package/dist/tools/bash.d.ts.map +1 -1
- package/dist/tools/bash.js +3 -12
- package/dist/tools/bash.js.map +1 -1
- package/dist/tools/checkpoint-hook.test.js +3 -3
- package/dist/tools/checkpoint-hook.test.js.map +1 -1
- package/dist/tools/edit.d.ts +1 -4
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +5 -13
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/enter-plan.js +1 -1
- package/dist/tools/enter-plan.js.map +1 -1
- package/dist/tools/index.d.ts +0 -9
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -8
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/prompt-hints.d.ts.map +1 -1
- package/dist/tools/prompt-hints.js +0 -2
- package/dist/tools/prompt-hints.js.map +1 -1
- package/dist/tools/screenshot.d.ts +1 -1
- package/dist/tools/subagent.d.ts +1 -4
- package/dist/tools/subagent.d.ts.map +1 -1
- package/dist/tools/subagent.js +2 -5
- package/dist/tools/subagent.js.map +1 -1
- package/dist/tools/write.d.ts +1 -4
- package/dist/tools/write.d.ts.map +1 -1
- package/dist/tools/write.js +5 -13
- package/dist/tools/write.js.map +1 -1
- package/dist/ui/App.d.ts +5 -20
- package/dist/ui/App.d.ts.map +1 -1
- package/dist/ui/App.js +71 -309
- package/dist/ui/App.js.map +1 -1
- package/dist/ui/app-items.d.ts +23 -25
- package/dist/ui/app-items.d.ts.map +1 -1
- package/dist/ui/app-items.js +37 -0
- package/dist/ui/app-items.js.map +1 -1
- package/dist/ui/app-items.test.d.ts +2 -0
- package/dist/ui/app-items.test.d.ts.map +1 -0
- package/dist/ui/app-items.test.js +38 -0
- package/dist/ui/app-items.test.js.map +1 -0
- package/dist/ui/app-state-persistence.test.js +14 -318
- package/dist/ui/app-state-persistence.test.js.map +1 -1
- package/dist/ui/chat-layout-pinning.test.js +74 -4
- package/dist/ui/chat-layout-pinning.test.js.map +1 -1
- package/dist/ui/components/AssistantMessage.test.js +6 -9
- package/dist/ui/components/AssistantMessage.test.js.map +1 -1
- package/dist/ui/components/Banner.js +1 -1
- package/dist/ui/components/Banner.js.map +1 -1
- package/dist/ui/components/ChatFooterPane.d.ts +1 -5
- package/dist/ui/components/ChatFooterPane.d.ts.map +1 -1
- package/dist/ui/components/ChatFooterPane.js +3 -4
- package/dist/ui/components/ChatFooterPane.js.map +1 -1
- package/dist/ui/components/ChatInputStack.d.ts +3 -1
- package/dist/ui/components/ChatInputStack.d.ts.map +1 -1
- package/dist/ui/components/ChatInputStack.js +4 -3
- package/dist/ui/components/ChatInputStack.js.map +1 -1
- package/dist/ui/components/ChatScreen.d.ts +3 -16
- package/dist/ui/components/ChatScreen.d.ts.map +1 -1
- package/dist/ui/components/ChatScreen.js +2 -3
- package/dist/ui/components/ChatScreen.js.map +1 -1
- package/dist/ui/components/Footer.d.ts +3 -8
- package/dist/ui/components/Footer.d.ts.map +1 -1
- package/dist/ui/components/Footer.js +5 -25
- package/dist/ui/components/Footer.js.map +1 -1
- package/dist/ui/components/InputArea.d.ts +1 -9
- package/dist/ui/components/InputArea.d.ts.map +1 -1
- package/dist/ui/components/InputArea.js +2 -44
- package/dist/ui/components/InputArea.js.map +1 -1
- package/dist/ui/components/LiveToolPanel.d.ts +30 -0
- package/dist/ui/components/LiveToolPanel.d.ts.map +1 -0
- package/dist/ui/components/LiveToolPanel.js +66 -0
- package/dist/ui/components/LiveToolPanel.js.map +1 -0
- package/dist/ui/components/ToolExecution.js +0 -2
- package/dist/ui/components/ToolExecution.js.map +1 -1
- package/dist/ui/components/TranscriptViewport.d.ts +1 -1
- package/dist/ui/components/TranscriptViewport.js +1 -1
- package/dist/ui/footer-jump-regression.test.js +12 -2
- package/dist/ui/footer-jump-regression.test.js.map +1 -1
- package/dist/ui/footer-status-layout.test.js +4 -12
- package/dist/ui/footer-status-layout.test.js.map +1 -1
- package/dist/ui/hooks/useChatLayoutMeasurements.d.ts +3 -4
- package/dist/ui/hooks/useChatLayoutMeasurements.d.ts.map +1 -1
- package/dist/ui/hooks/useChatLayoutMeasurements.js +26 -4
- package/dist/ui/hooks/useChatLayoutMeasurements.js.map +1 -1
- package/dist/ui/hooks/useModeState.d.ts +4 -19
- package/dist/ui/hooks/useModeState.d.ts.map +1 -1
- package/dist/ui/hooks/useModeState.js +5 -45
- package/dist/ui/hooks/useModeState.js.map +1 -1
- package/dist/ui/hooks/usePixelFixFlow.js +2 -2
- package/dist/ui/layout-decisions.d.ts +11 -34
- package/dist/ui/layout-decisions.d.ts.map +1 -1
- package/dist/ui/layout-decisions.js +15 -42
- package/dist/ui/layout-decisions.js.map +1 -1
- package/dist/ui/live-area-height.d.ts.map +1 -1
- package/dist/ui/live-area-height.js +6 -1
- package/dist/ui/live-area-height.js.map +1 -1
- package/dist/ui/live-frame-height.test.js +26 -1
- package/dist/ui/live-frame-height.test.js.map +1 -1
- package/dist/ui/plan-overlay.test.js +1 -1
- package/dist/ui/plan-overlay.test.js.map +1 -1
- package/dist/ui/prompt-routing.d.ts +1 -19
- package/dist/ui/prompt-routing.d.ts.map +1 -1
- package/dist/ui/prompt-routing.js +1 -79
- package/dist/ui/prompt-routing.js.map +1 -1
- package/dist/ui/render.d.ts +3 -18
- package/dist/ui/render.d.ts.map +1 -1
- package/dist/ui/render.js +0 -10
- package/dist/ui/render.js.map +1 -1
- package/dist/ui/scroll-stabilization.test.js +1 -7
- package/dist/ui/scroll-stabilization.test.js.map +1 -1
- package/dist/ui/slash-command-images.test.js +11 -86
- package/dist/ui/slash-command-images.test.js.map +1 -1
- package/dist/ui/streaming-flush-bounce.test.d.ts +2 -0
- package/dist/ui/streaming-flush-bounce.test.d.ts.map +1 -0
- package/dist/ui/streaming-flush-bounce.test.js +156 -0
- package/dist/ui/streaming-flush-bounce.test.js.map +1 -0
- package/dist/ui/submit-prompt-command.d.ts +1 -16
- package/dist/ui/submit-prompt-command.d.ts.map +1 -1
- package/dist/ui/submit-prompt-command.js +4 -54
- package/dist/ui/submit-prompt-command.js.map +1 -1
- package/dist/ui/submit-slash-commands.d.ts +0 -1
- package/dist/ui/submit-slash-commands.d.ts.map +1 -1
- package/dist/ui/submit-slash-commands.js +0 -4
- package/dist/ui/submit-slash-commands.js.map +1 -1
- package/dist/ui/terminal-history-status-renderers.d.ts +0 -1
- package/dist/ui/terminal-history-status-renderers.d.ts.map +1 -1
- package/dist/ui/terminal-history-status-renderers.js +0 -3
- package/dist/ui/terminal-history-status-renderers.js.map +1 -1
- package/dist/ui/terminal-history.d.ts.map +1 -1
- package/dist/ui/terminal-history.js +11 -56
- package/dist/ui/terminal-history.js.map +1 -1
- package/dist/ui/terminal-history.test.js +6 -33
- package/dist/ui/terminal-history.test.js.map +1 -1
- package/dist/ui/tool-line-summary.d.ts +29 -0
- package/dist/ui/tool-line-summary.d.ts.map +1 -0
- package/dist/ui/tool-line-summary.js +153 -0
- package/dist/ui/tool-line-summary.js.map +1 -0
- package/dist/ui/transcript/TranscriptRenderer.d.ts +1 -1
- package/dist/ui/transcript/TranscriptRenderer.d.ts.map +1 -1
- package/dist/ui/transcript/TranscriptRenderer.js +18 -12
- package/dist/ui/transcript/TranscriptRenderer.js.map +1 -1
- package/dist/ui/transcript/presentation.d.ts +1 -17
- package/dist/ui/transcript/presentation.d.ts.map +1 -1
- package/dist/ui/transcript/presentation.js +0 -26
- package/dist/ui/transcript/presentation.js.map +1 -1
- package/dist/ui/transcript/spacing.d.ts +2 -2
- package/dist/ui/transcript/spacing.d.ts.map +1 -1
- package/dist/ui/transcript/spacing.js +14 -9
- package/dist/ui/transcript/spacing.js.map +1 -1
- package/dist/ui/transcript/spacing.test.js +5 -8
- package/dist/ui/transcript/spacing.test.js.map +1 -1
- package/dist/ui/transcript/tool-presentation.js +1 -1
- package/dist/ui/transcript/tool-presentation.js.map +1 -1
- package/dist/ui/transcript/transcript-lines.d.ts.map +1 -1
- package/dist/ui/transcript/transcript-lines.js +4 -0
- package/dist/ui/transcript/transcript-lines.js.map +1 -1
- package/dist/ui/tui-history-parity.test.js +0 -47
- package/dist/ui/tui-history-parity.test.js.map +1 -1
- package/dist/ui/tui-simulation.test.js +2 -1
- package/dist/ui/tui-simulation.test.js.map +1 -1
- package/package.json +4 -4
- package/dist/core/goal-controller.d.ts +0 -82
- package/dist/core/goal-controller.d.ts.map +0 -1
- package/dist/core/goal-controller.js +0 -838
- package/dist/core/goal-controller.js.map +0 -1
- package/dist/core/goal-controller.test.d.ts +0 -2
- package/dist/core/goal-controller.test.d.ts.map +0 -1
- package/dist/core/goal-controller.test.js +0 -1279
- package/dist/core/goal-controller.test.js.map +0 -1
- package/dist/core/goal-engine.d.ts +0 -61
- package/dist/core/goal-engine.d.ts.map +0 -1
- package/dist/core/goal-engine.js +0 -123
- package/dist/core/goal-engine.js.map +0 -1
- package/dist/core/goal-engine.test.d.ts +0 -2
- package/dist/core/goal-engine.test.d.ts.map +0 -1
- package/dist/core/goal-engine.test.js +0 -295
- package/dist/core/goal-engine.test.js.map +0 -1
- package/dist/core/goal-integration.d.ts +0 -80
- package/dist/core/goal-integration.d.ts.map +0 -1
- package/dist/core/goal-integration.js +0 -296
- package/dist/core/goal-integration.js.map +0 -1
- package/dist/core/goal-integration.test.d.ts +0 -2
- package/dist/core/goal-integration.test.d.ts.map +0 -1
- package/dist/core/goal-integration.test.js +0 -369
- package/dist/core/goal-integration.test.js.map +0 -1
- package/dist/core/goal-lifecycle-smoke.test.d.ts +0 -2
- package/dist/core/goal-lifecycle-smoke.test.d.ts.map +0 -1
- package/dist/core/goal-lifecycle-smoke.test.js +0 -248
- package/dist/core/goal-lifecycle-smoke.test.js.map +0 -1
- package/dist/core/goal-overhead-harness.d.ts +0 -33
- package/dist/core/goal-overhead-harness.d.ts.map +0 -1
- package/dist/core/goal-overhead-harness.js +0 -268
- package/dist/core/goal-overhead-harness.js.map +0 -1
- package/dist/core/goal-prerequisites.d.ts +0 -23
- package/dist/core/goal-prerequisites.d.ts.map +0 -1
- package/dist/core/goal-prerequisites.js +0 -114
- package/dist/core/goal-prerequisites.js.map +0 -1
- package/dist/core/goal-prerequisites.test.d.ts +0 -2
- package/dist/core/goal-prerequisites.test.d.ts.map +0 -1
- package/dist/core/goal-prerequisites.test.js +0 -154
- package/dist/core/goal-prerequisites.test.js.map +0 -1
- package/dist/core/goal-references.d.ts +0 -14
- package/dist/core/goal-references.d.ts.map +0 -1
- package/dist/core/goal-references.js +0 -153
- package/dist/core/goal-references.js.map +0 -1
- package/dist/core/goal-references.test.d.ts +0 -2
- package/dist/core/goal-references.test.d.ts.map +0 -1
- package/dist/core/goal-references.test.js +0 -77
- package/dist/core/goal-references.test.js.map +0 -1
- package/dist/core/goal-store.d.ts +0 -289
- package/dist/core/goal-store.d.ts.map +0 -1
- package/dist/core/goal-store.js +0 -1156
- package/dist/core/goal-store.js.map +0 -1
- package/dist/core/goal-store.test.d.ts +0 -2
- package/dist/core/goal-store.test.d.ts.map +0 -1
- package/dist/core/goal-store.test.js +0 -530
- package/dist/core/goal-store.test.js.map +0 -1
- package/dist/core/goal-verifier.d.ts +0 -17
- package/dist/core/goal-verifier.d.ts.map +0 -1
- package/dist/core/goal-verifier.js +0 -87
- package/dist/core/goal-verifier.js.map +0 -1
- package/dist/core/goal-verifier.test.d.ts +0 -2
- package/dist/core/goal-verifier.test.d.ts.map +0 -1
- package/dist/core/goal-verifier.test.js +0 -131
- package/dist/core/goal-verifier.test.js.map +0 -1
- package/dist/core/goal-worker-dev-server-lifecycle.test.d.ts +0 -2
- package/dist/core/goal-worker-dev-server-lifecycle.test.d.ts.map +0 -1
- package/dist/core/goal-worker-dev-server-lifecycle.test.js +0 -68
- package/dist/core/goal-worker-dev-server-lifecycle.test.js.map +0 -1
- package/dist/core/goal-worker.d.ts +0 -61
- package/dist/core/goal-worker.d.ts.map +0 -1
- package/dist/core/goal-worker.js +0 -467
- package/dist/core/goal-worker.js.map +0 -1
- package/dist/core/goal-worker.test.d.ts +0 -2
- package/dist/core/goal-worker.test.d.ts.map +0 -1
- package/dist/core/goal-worker.test.js +0 -493
- package/dist/core/goal-worker.test.js.map +0 -1
- package/dist/core/goal-worktree.d.ts +0 -108
- package/dist/core/goal-worktree.d.ts.map +0 -1
- package/dist/core/goal-worktree.js +0 -300
- package/dist/core/goal-worktree.js.map +0 -1
- package/dist/core/goal-worktree.test.d.ts +0 -2
- package/dist/core/goal-worktree.test.d.ts.map +0 -1
- package/dist/core/goal-worktree.test.js +0 -448
- package/dist/core/goal-worktree.test.js.map +0 -1
- package/dist/tools/goal-mode.test.d.ts +0 -2
- package/dist/tools/goal-mode.test.d.ts.map +0 -1
- package/dist/tools/goal-mode.test.js +0 -121
- package/dist/tools/goal-mode.test.js.map +0 -1
- package/dist/tools/goals.d.ts +0 -143
- package/dist/tools/goals.d.ts.map +0 -1
- package/dist/tools/goals.js +0 -1038
- package/dist/tools/goals.js.map +0 -1
- package/dist/tools/goals.test.d.ts +0 -2
- package/dist/tools/goals.test.d.ts.map +0 -1
- package/dist/tools/goals.test.js +0 -1444
- package/dist/tools/goals.test.js.map +0 -1
- package/dist/ui/components/GoalOverlay.d.ts +0 -83
- package/dist/ui/components/GoalOverlay.d.ts.map +0 -1
- package/dist/ui/components/GoalOverlay.js +0 -710
- package/dist/ui/components/GoalOverlay.js.map +0 -1
- package/dist/ui/components/GoalPickerMenu.d.ts +0 -9
- package/dist/ui/components/GoalPickerMenu.d.ts.map +0 -1
- package/dist/ui/components/GoalPickerMenu.js +0 -37
- package/dist/ui/components/GoalPickerMenu.js.map +0 -1
- package/dist/ui/components/GoalStatusBar.d.ts +0 -26
- package/dist/ui/components/GoalStatusBar.d.ts.map +0 -1
- package/dist/ui/components/GoalStatusBar.js +0 -130
- package/dist/ui/components/GoalStatusBar.js.map +0 -1
- package/dist/ui/components/GoalStatusBar.test.d.ts +0 -2
- package/dist/ui/components/GoalStatusBar.test.d.ts.map +0 -1
- package/dist/ui/components/GoalStatusBar.test.js +0 -17
- package/dist/ui/components/GoalStatusBar.test.js.map +0 -1
- package/dist/ui/goal-events.d.ts +0 -125
- package/dist/ui/goal-events.d.ts.map +0 -1
- package/dist/ui/goal-events.js +0 -407
- package/dist/ui/goal-events.js.map +0 -1
- package/dist/ui/goal-events.test.d.ts +0 -2
- package/dist/ui/goal-events.test.d.ts.map +0 -1
- package/dist/ui/goal-events.test.js +0 -416
- package/dist/ui/goal-events.test.js.map +0 -1
- package/dist/ui/goal-lifecycle-orchestration.test.d.ts +0 -2
- package/dist/ui/goal-lifecycle-orchestration.test.d.ts.map +0 -1
- package/dist/ui/goal-lifecycle-orchestration.test.js +0 -555
- package/dist/ui/goal-lifecycle-orchestration.test.js.map +0 -1
- package/dist/ui/goal-overlay.test.d.ts +0 -2
- package/dist/ui/goal-overlay.test.d.ts.map +0 -1
- package/dist/ui/goal-overlay.test.js +0 -384
- package/dist/ui/goal-overlay.test.js.map +0 -1
- package/dist/ui/goal-progress.d.ts +0 -31
- package/dist/ui/goal-progress.d.ts.map +0 -1
- package/dist/ui/goal-progress.js +0 -149
- package/dist/ui/goal-progress.js.map +0 -1
- package/dist/ui/goal-run-helpers.d.ts +0 -12
- package/dist/ui/goal-run-helpers.d.ts.map +0 -1
- package/dist/ui/goal-run-helpers.js +0 -42
- package/dist/ui/goal-run-helpers.js.map +0 -1
- package/dist/ui/goal-status-bar.test.d.ts +0 -2
- package/dist/ui/goal-status-bar.test.d.ts.map +0 -1
- package/dist/ui/goal-status-bar.test.js +0 -174
- package/dist/ui/goal-status-bar.test.js.map +0 -1
- package/dist/ui/goal-summary.d.ts +0 -14
- package/dist/ui/goal-summary.d.ts.map +0 -1
- package/dist/ui/goal-summary.js +0 -194
- package/dist/ui/goal-summary.js.map +0 -1
- package/dist/ui/hooks/useGoalOrchestration.d.ts +0 -82
- package/dist/ui/hooks/useGoalOrchestration.d.ts.map +0 -1
- package/dist/ui/hooks/useGoalOrchestration.js +0 -863
- package/dist/ui/hooks/useGoalOrchestration.js.map +0 -1
- package/dist/ui/hooks/useGoalPickerController.d.ts +0 -22
- package/dist/ui/hooks/useGoalPickerController.d.ts.map +0 -1
- package/dist/ui/hooks/useGoalPickerController.js +0 -35
- package/dist/ui/hooks/useGoalPickerController.js.map +0 -1
- package/dist/ui/prompt-routing.test.d.ts +0 -2
- package/dist/ui/prompt-routing.test.d.ts.map +0 -1
- package/dist/ui/prompt-routing.test.js +0 -48
- package/dist/ui/prompt-routing.test.js.map +0 -1
- package/dist/ui/transcript/GoalRows.d.ts +0 -10
- package/dist/ui/transcript/GoalRows.d.ts.map +0 -1
- package/dist/ui/transcript/GoalRows.js +0 -35
- package/dist/ui/transcript/GoalRows.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"goal-prerequisites.test.js","sourceRoot":"","sources":["../../src/core/goal-prerequisites.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { GoalReference } from "./goal-store.js";
|
|
2
|
-
import type { ImageAttachment } from "../utils/image.js";
|
|
3
|
-
export interface GoalReferenceContext {
|
|
4
|
-
references: GoalReference[];
|
|
5
|
-
promptSection: string;
|
|
6
|
-
}
|
|
7
|
-
export declare function buildGoalReferenceContext({ cwd, originalGoalPrompt, attachments, }: {
|
|
8
|
-
cwd: string;
|
|
9
|
-
originalGoalPrompt: string;
|
|
10
|
-
attachments: readonly ImageAttachment[];
|
|
11
|
-
}): Promise<GoalReferenceContext>;
|
|
12
|
-
export declare function formatGoalReferencesForPrompt(references: readonly GoalReference[]): string;
|
|
13
|
-
export declare function referencesRequiringAcknowledgement(references: readonly GoalReference[]): GoalReference[];
|
|
14
|
-
//# sourceMappingURL=goal-references.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"goal-references.d.ts","sourceRoot":"","sources":["../../src/core/goal-references.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQzD,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;CACvB;AAkGD,wBAAsB,yBAAyB,CAAC,EAC9C,GAAG,EACH,kBAAkB,EAClB,WAAW,GACZ,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,SAAS,eAAe,EAAE,CAAC;CACzC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAwBhC;AAuBD,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAW1F;AAED,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,SAAS,aAAa,EAAE,GACnC,aAAa,EAAE,CAEjB"}
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import { createHash } from "node:crypto";
|
|
2
|
-
import { mkdir, writeFile } from "node:fs/promises";
|
|
3
|
-
import path from "node:path";
|
|
4
|
-
const GOAL_REFERENCES_DIR = ".gg/goal-references";
|
|
5
|
-
const MAX_PROMPT_REFERENCE_CHARS = 12_000;
|
|
6
|
-
const MAX_INLINE_REFERENCE_CHARS = 6_000;
|
|
7
|
-
const MAX_FORMATTED_REFERENCE_CHARS = 18_000;
|
|
8
|
-
const URL_PATTERN = /https?:\/\/[^\s<>()"']+/g;
|
|
9
|
-
function hashText(text) {
|
|
10
|
-
return createHash("sha256").update(text).digest("hex").slice(0, 12);
|
|
11
|
-
}
|
|
12
|
-
function truncateMiddle(text, maxChars) {
|
|
13
|
-
if (text.length <= maxChars)
|
|
14
|
-
return text;
|
|
15
|
-
const keep = Math.max(0, Math.floor((maxChars - 32) / 2));
|
|
16
|
-
return `${text.slice(0, keep)}\n[reference truncated]\n${text.slice(text.length - keep)}`;
|
|
17
|
-
}
|
|
18
|
-
function safeFileName(fileName) {
|
|
19
|
-
const base = path.basename(fileName).replace(/[^a-zA-Z0-9._-]+/g, "-");
|
|
20
|
-
return base || "reference";
|
|
21
|
-
}
|
|
22
|
-
function extensionForAttachment(attachment) {
|
|
23
|
-
const fromName = path.extname(attachment.fileName);
|
|
24
|
-
if (fromName)
|
|
25
|
-
return fromName;
|
|
26
|
-
if (attachment.kind === "text")
|
|
27
|
-
return ".txt";
|
|
28
|
-
if (attachment.mediaType === "image/jpeg")
|
|
29
|
-
return ".jpg";
|
|
30
|
-
if (attachment.mediaType === "image/webp")
|
|
31
|
-
return ".webp";
|
|
32
|
-
if (attachment.mediaType === "image/gif")
|
|
33
|
-
return ".gif";
|
|
34
|
-
return ".png";
|
|
35
|
-
}
|
|
36
|
-
function toProjectRelativePath(cwd, absolutePath) {
|
|
37
|
-
return path.relative(cwd, absolutePath).split(path.sep).join("/");
|
|
38
|
-
}
|
|
39
|
-
function classifyUrl(url) {
|
|
40
|
-
return /^https?:\/\/(?:www\.)?github\.com\/[^\s/]+\/[^\s/#?]+/i.test(url) ? "repo" : "url";
|
|
41
|
-
}
|
|
42
|
-
function normalizeUrlToken(url) {
|
|
43
|
-
return url.replace(/[),.;!?]+$/g, "");
|
|
44
|
-
}
|
|
45
|
-
function extractUrlReferences(text) {
|
|
46
|
-
const urls = Array.from(new Set((text.match(URL_PATTERN) ?? []).map(normalizeUrlToken)));
|
|
47
|
-
return urls.map((url) => {
|
|
48
|
-
const kind = classifyUrl(url);
|
|
49
|
-
const id = `${kind}-${hashText(url)}`;
|
|
50
|
-
return {
|
|
51
|
-
id,
|
|
52
|
-
kind,
|
|
53
|
-
label: kind === "repo" ? `Reference repository ${url}` : `Reference URL ${url}`,
|
|
54
|
-
value: url,
|
|
55
|
-
description: kind === "repo"
|
|
56
|
-
? "Repository supplied in the original Goal prompt; workers/verifier must compare against it when relevant."
|
|
57
|
-
: "URL supplied in the original Goal prompt; workers/verifier must use it when relevant.",
|
|
58
|
-
source: "original-goal-prompt",
|
|
59
|
-
};
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
async function persistAttachmentReference(cwd, attachment) {
|
|
63
|
-
const digest = hashText(`${attachment.fileName}\n${attachment.mediaType}\n${attachment.data}`);
|
|
64
|
-
const id = `${attachment.kind}-${digest}`;
|
|
65
|
-
const ext = extensionForAttachment(attachment);
|
|
66
|
-
const fileName = `${id}-${safeFileName(attachment.fileName).replace(/\.[^.]*$/, "")}${ext}`;
|
|
67
|
-
const absoluteDir = path.join(cwd, GOAL_REFERENCES_DIR);
|
|
68
|
-
const absolutePath = path.join(absoluteDir, fileName);
|
|
69
|
-
await mkdir(absoluteDir, { recursive: true });
|
|
70
|
-
if (attachment.kind === "text") {
|
|
71
|
-
await writeFile(absolutePath, attachment.data, "utf-8");
|
|
72
|
-
return {
|
|
73
|
-
id,
|
|
74
|
-
kind: "text",
|
|
75
|
-
label: `Attached text reference ${attachment.fileName}`,
|
|
76
|
-
path: toProjectRelativePath(cwd, absolutePath),
|
|
77
|
-
mediaType: attachment.mediaType,
|
|
78
|
-
content: truncateMiddle(attachment.data, MAX_INLINE_REFERENCE_CHARS),
|
|
79
|
-
source: attachment.filePath,
|
|
80
|
-
description: "Text/document supplied with the original Goal prompt; setup, workers, verifier, and final audit must account for it.",
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
await writeFile(absolutePath, Buffer.from(attachment.data, "base64"));
|
|
84
|
-
return {
|
|
85
|
-
id,
|
|
86
|
-
kind: "image",
|
|
87
|
-
label: `Attached image reference ${attachment.fileName}`,
|
|
88
|
-
path: toProjectRelativePath(cwd, absolutePath),
|
|
89
|
-
mediaType: attachment.mediaType,
|
|
90
|
-
source: attachment.filePath,
|
|
91
|
-
description: "Image/screenshot supplied with the original Goal prompt; workers/verifier must inspect or compare against it when relevant.",
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
export async function buildGoalReferenceContext({ cwd, originalGoalPrompt, attachments, }) {
|
|
95
|
-
const references = [];
|
|
96
|
-
const trimmedPrompt = originalGoalPrompt.trim();
|
|
97
|
-
if (trimmedPrompt) {
|
|
98
|
-
references.push({
|
|
99
|
-
id: "original-goal-prompt",
|
|
100
|
-
kind: "prompt",
|
|
101
|
-
label: "Original Goal prompt",
|
|
102
|
-
content: truncateMiddle(trimmedPrompt, MAX_PROMPT_REFERENCE_CHARS),
|
|
103
|
-
source: "user",
|
|
104
|
-
description: "The exact /goal prompt text that started this run. Preserve its reference requirements in criteria, tasks, verifier, and audit.",
|
|
105
|
-
});
|
|
106
|
-
references.push(...extractUrlReferences(trimmedPrompt));
|
|
107
|
-
}
|
|
108
|
-
for (const attachment of attachments) {
|
|
109
|
-
references.push(await persistAttachmentReference(cwd, attachment));
|
|
110
|
-
}
|
|
111
|
-
return {
|
|
112
|
-
references,
|
|
113
|
-
promptSection: formatGoalReferencesForPrompt(references),
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
function formatReferenceValue(reference) {
|
|
117
|
-
const parts = [
|
|
118
|
-
`- [${reference.id}] kind=${reference.kind}; label=${JSON.stringify(reference.label)}`,
|
|
119
|
-
];
|
|
120
|
-
if (reference.value)
|
|
121
|
-
parts.push(` value: ${reference.value}`);
|
|
122
|
-
if (reference.path)
|
|
123
|
-
parts.push(` path: ${reference.path}`);
|
|
124
|
-
if (reference.mediaType)
|
|
125
|
-
parts.push(` media_type: ${reference.mediaType}`);
|
|
126
|
-
if (reference.description)
|
|
127
|
-
parts.push(` why_it_matters: ${reference.description}`);
|
|
128
|
-
if (reference.source)
|
|
129
|
-
parts.push(` source: ${reference.source}`);
|
|
130
|
-
if (reference.content) {
|
|
131
|
-
parts.push(" content_excerpt:");
|
|
132
|
-
parts.push(truncateMiddle(reference.content, MAX_INLINE_REFERENCE_CHARS)
|
|
133
|
-
.split("\n")
|
|
134
|
-
.map((line) => ` ${line}`)
|
|
135
|
-
.join("\n"));
|
|
136
|
-
}
|
|
137
|
-
return parts.join("\n");
|
|
138
|
-
}
|
|
139
|
-
export function formatGoalReferencesForPrompt(references) {
|
|
140
|
-
if (references.length === 0)
|
|
141
|
-
return "";
|
|
142
|
-
const formatted = references.map(formatReferenceValue).join("\n");
|
|
143
|
-
const body = truncateMiddle(formatted, MAX_FORMATTED_REFERENCE_CHARS);
|
|
144
|
-
return (`## Goal References (MANDATORY)\n\n` +
|
|
145
|
-
`These references came from the user's original /goal prompt, URLs/repos, screenshots, or attached documents. ` +
|
|
146
|
-
`They are not optional context: success criteria, worker tasks, evidence paths, verifier, and final audit must use the relevant reference IDs. ` +
|
|
147
|
-
`If a reference cannot be accessed or compared locally, block the Goal with exact user instructions instead of silently ignoring it.\n\n` +
|
|
148
|
-
body);
|
|
149
|
-
}
|
|
150
|
-
export function referencesRequiringAcknowledgement(references) {
|
|
151
|
-
return references.filter((reference) => reference.kind !== "prompt");
|
|
152
|
-
}
|
|
153
|
-
//# sourceMappingURL=goal-references.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"goal-references.js","sourceRoot":"","sources":["../../src/core/goal-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAClD,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAC1C,MAAM,0BAA0B,GAAG,KAAK,CAAC;AACzC,MAAM,6BAA6B,GAAG,MAAM,CAAC;AAC7C,MAAM,WAAW,GAAG,0BAA0B,CAAC;AAO/C,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,QAAgB;IACpD,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1D,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,4BAA4B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;AAC5F,CAAC;AAED,SAAS,YAAY,CAAC,QAAgB;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;IACvE,OAAO,IAAI,IAAI,WAAW,CAAC;AAC7B,CAAC;AAED,SAAS,sBAAsB,CAAC,UAA2B;IACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,UAAU,CAAC,SAAS,KAAK,YAAY;QAAE,OAAO,MAAM,CAAC;IACzD,IAAI,UAAU,CAAC,SAAS,KAAK,YAAY;QAAE,OAAO,OAAO,CAAC;IAC1D,IAAI,UAAU,CAAC,SAAS,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IACxD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAW,EAAE,YAAoB;IAC9D,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,wDAAwD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7F,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,OAAO,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACzF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACtB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,EAAE,GAAG,GAAG,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO;YACL,EAAE;YACF,IAAI;YACJ,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC,CAAC,iBAAiB,GAAG,EAAE;YAC/E,KAAK,EAAE,GAAG;YACV,WAAW,EACT,IAAI,KAAK,MAAM;gBACb,CAAC,CAAC,0GAA0G;gBAC5G,CAAC,CAAC,uFAAuF;YAC7F,MAAM,EAAE,sBAAsB;SAC/B,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,GAAW,EACX,UAA2B;IAE3B,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,KAAK,UAAU,CAAC,SAAS,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/F,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,GAAG,EAAE,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;IAC5F,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACtD,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,SAAS,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxD,OAAO;YACL,EAAE;YACF,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,2BAA2B,UAAU,CAAC,QAAQ,EAAE;YACvD,IAAI,EAAE,qBAAqB,CAAC,GAAG,EAAE,YAAY,CAAC;YAC9C,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,OAAO,EAAE,cAAc,CAAC,UAAU,CAAC,IAAI,EAAE,0BAA0B,CAAC;YACpE,MAAM,EAAE,UAAU,CAAC,QAAQ;YAC3B,WAAW,EACT,sHAAsH;SACzH,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtE,OAAO;QACL,EAAE;QACF,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,4BAA4B,UAAU,CAAC,QAAQ,EAAE;QACxD,IAAI,EAAE,qBAAqB,CAAC,GAAG,EAAE,YAAY,CAAC;QAC9C,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,MAAM,EAAE,UAAU,CAAC,QAAQ;QAC3B,WAAW,EACT,6HAA6H;KAChI,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,EAC9C,GAAG,EACH,kBAAkB,EAClB,WAAW,GAKZ;IACC,MAAM,UAAU,GAAoB,EAAE,CAAC;IACvC,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC;IAChD,IAAI,aAAa,EAAE,CAAC;QAClB,UAAU,CAAC,IAAI,CAAC;YACd,EAAE,EAAE,sBAAsB;YAC1B,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,sBAAsB;YAC7B,OAAO,EAAE,cAAc,CAAC,aAAa,EAAE,0BAA0B,CAAC;YAClE,MAAM,EAAE,MAAM;YACd,WAAW,EACT,iIAAiI;SACpI,CAAC,CAAC;QACH,UAAU,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,UAAU,CAAC,IAAI,CAAC,MAAM,0BAA0B,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,OAAO;QACL,UAAU;QACV,aAAa,EAAE,6BAA6B,CAAC,UAAU,CAAC;KACzD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAwB;IACpD,MAAM,KAAK,GAAG;QACZ,MAAM,SAAS,CAAC,EAAE,UAAU,SAAS,CAAC,IAAI,WAAW,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;KACvF,CAAC;IACF,IAAI,SAAS,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;IAC/D,IAAI,SAAS,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,WAAW,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,IAAI,SAAS,CAAC,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5E,IAAI,SAAS,CAAC,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,qBAAqB,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;IACpF,IAAI,SAAS,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAClE,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CACR,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,0BAA0B,CAAC;aAC1D,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC;aAC5B,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,UAAoC;IAChF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,EAAE,6BAA6B,CAAC,CAAC;IACtE,OAAO,CACL,oCAAoC;QACpC,+GAA+G;QAC/G,gJAAgJ;QAChJ,yIAAyI;QACzI,IAAI,CACL,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,UAAoC;IAEpC,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"goal-references.test.d.ts","sourceRoot":"","sources":["../../src/core/goal-references.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { afterEach, beforeEach, describe, expect, it } from "vitest";
|
|
2
|
-
import fs from "node:fs/promises";
|
|
3
|
-
import os from "node:os";
|
|
4
|
-
import path from "node:path";
|
|
5
|
-
import { buildGoalReferenceContext, referencesRequiringAcknowledgement, } from "./goal-references.js";
|
|
6
|
-
let tmpProject;
|
|
7
|
-
beforeEach(async () => {
|
|
8
|
-
tmpProject = await fs.mkdtemp(path.join(os.tmpdir(), "goal-references-test-"));
|
|
9
|
-
});
|
|
10
|
-
afterEach(async () => {
|
|
11
|
-
await fs.rm(tmpProject, { recursive: true, force: true });
|
|
12
|
-
});
|
|
13
|
-
describe("goal reference context", () => {
|
|
14
|
-
it("extracts URLs, persists attachments, and formats mandatory prompt context", async () => {
|
|
15
|
-
const attachment = {
|
|
16
|
-
kind: "text",
|
|
17
|
-
fileName: "notes.md",
|
|
18
|
-
filePath: path.join(tmpProject, "notes.md"),
|
|
19
|
-
mediaType: "text/markdown",
|
|
20
|
-
data: "Match this documented behavior.",
|
|
21
|
-
};
|
|
22
|
-
const context = await buildGoalReferenceContext({
|
|
23
|
-
cwd: tmpProject,
|
|
24
|
-
originalGoalPrompt: "Build this like https://github.com/acme/reference-ui and explain https://example.com/docs.",
|
|
25
|
-
attachments: [attachment],
|
|
26
|
-
});
|
|
27
|
-
const kinds = context.references.map((reference) => reference.kind);
|
|
28
|
-
expect(kinds).toEqual(expect.arrayContaining(["prompt", "repo", "url", "text"]));
|
|
29
|
-
expect(context.promptSection).toContain("## Goal References (MANDATORY)");
|
|
30
|
-
expect(context.promptSection).toContain("https://github.com/acme/reference-ui");
|
|
31
|
-
expect(context.promptSection).toContain("Match this documented behavior.");
|
|
32
|
-
const textReference = context.references.find((reference) => reference.kind === "text");
|
|
33
|
-
expect(textReference?.path).toMatch(/^\.gg\/goal-references\/text-/);
|
|
34
|
-
expect(await fs.readFile(path.join(tmpProject, textReference?.path ?? ""), "utf-8")).toBe("Match this documented behavior.");
|
|
35
|
-
expect(referencesRequiringAcknowledgement(context.references).map((reference) => reference.kind)).toEqual(expect.arrayContaining(["repo", "url", "text"]));
|
|
36
|
-
expect(referencesRequiringAcknowledgement(context.references).map((reference) => reference.kind)).not.toContain("prompt");
|
|
37
|
-
});
|
|
38
|
-
it("covers prompt, URL/repo, screenshot image, attached document, and X/Y/Z feature-fix references", async () => {
|
|
39
|
-
const imageAttachment = {
|
|
40
|
-
kind: "image",
|
|
41
|
-
fileName: "liked-ui.png",
|
|
42
|
-
filePath: path.join(tmpProject, "liked-ui.png"),
|
|
43
|
-
mediaType: "image/png",
|
|
44
|
-
data: Buffer.from("fake-png-reference").toString("base64"),
|
|
45
|
-
};
|
|
46
|
-
const documentAttachment = {
|
|
47
|
-
kind: "text",
|
|
48
|
-
fileName: "feature-fix-x-y-z.md",
|
|
49
|
-
filePath: path.join(tmpProject, "feature-fix-x-y-z.md"),
|
|
50
|
-
mediaType: "text/markdown",
|
|
51
|
-
data: "Fix feature based on X: keyboard flow, Y: empty state copy, Z: error recovery.",
|
|
52
|
-
};
|
|
53
|
-
const context = await buildGoalReferenceContext({
|
|
54
|
-
cwd: tmpProject,
|
|
55
|
-
originalGoalPrompt: "Fix this feature based off X, Y, Z. Match https://example.com/design-system and repo https://github.com/acme/product-reference.",
|
|
56
|
-
attachments: [imageAttachment, documentAttachment],
|
|
57
|
-
});
|
|
58
|
-
expect(context.references.map((reference) => reference.kind)).toEqual(expect.arrayContaining(["prompt", "url", "repo", "image", "text"]));
|
|
59
|
-
expect(context.promptSection).toContain("Goal References (MANDATORY)");
|
|
60
|
-
expect(context.promptSection).toContain("success criteria, worker tasks, evidence paths, verifier, and final audit");
|
|
61
|
-
expect(context.promptSection).toContain("https://example.com/design-system");
|
|
62
|
-
expect(context.promptSection).toContain("https://github.com/acme/product-reference");
|
|
63
|
-
expect(context.promptSection).toContain("Attached image reference liked-ui.png");
|
|
64
|
-
expect(context.promptSection).toContain("feature-fix-x-y-z.md");
|
|
65
|
-
expect(context.promptSection).toContain("X: keyboard flow, Y: empty state copy, Z: error recovery");
|
|
66
|
-
const imageReference = context.references.find((reference) => reference.kind === "image");
|
|
67
|
-
const textReference = context.references.find((reference) => reference.kind === "text");
|
|
68
|
-
expect(imageReference?.path).toMatch(/^\.gg\/goal-references\/image-/);
|
|
69
|
-
expect(textReference?.path).toMatch(/^\.gg\/goal-references\/text-/);
|
|
70
|
-
await expect(fs.stat(path.join(tmpProject, imageReference?.path ?? ""))).resolves.toMatchObject({
|
|
71
|
-
size: Buffer.from("fake-png-reference").length,
|
|
72
|
-
});
|
|
73
|
-
await expect(fs.readFile(path.join(tmpProject, textReference?.path ?? ""), "utf-8")).resolves.toContain("X: keyboard flow, Y: empty state copy, Z: error recovery");
|
|
74
|
-
expect(referencesRequiringAcknowledgement(context.references).map((reference) => reference.kind)).toEqual(expect.arrayContaining(["url", "repo", "image", "text"]));
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
//# sourceMappingURL=goal-references.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"goal-references.test.js","sourceRoot":"","sources":["../../src/core/goal-references.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,289 +0,0 @@
|
|
|
1
|
-
import type { GoalControllerDecision } from "./goal-controller.js";
|
|
2
|
-
export type GoalRunStatus = "draft" | "blocked" | "ready" | "running" | "verifying" | "passed" | "failed" | "paused";
|
|
3
|
-
export type GoalTaskStatus = "pending" | "running" | "verifying" | "done" | "failed" | "blocked";
|
|
4
|
-
/**
|
|
5
|
-
* Whether a task's committed candidate is auto-integrated into main
|
|
6
|
-
* (`candidate`) or left for manual handling (`manual`). Ordering is expressed by
|
|
7
|
-
* `dependsOn`, not this axis.
|
|
8
|
-
*/
|
|
9
|
-
export type GoalTaskIntegration = "candidate" | "manual";
|
|
10
|
-
/**
|
|
11
|
-
* @deprecated Legacy four-way axis. Inputs are folded to {@link GoalTaskIntegration}
|
|
12
|
-
* on normalize: `manual` → `manual`; everything else → `candidate`.
|
|
13
|
-
*/
|
|
14
|
-
export type GoalTaskMergeStrategy = "parallel_candidate" | "after_dependencies" | "serial" | "manual";
|
|
15
|
-
export declare function foldGoalTaskIntegration(value: GoalTaskIntegration | GoalTaskMergeStrategy | undefined): GoalTaskIntegration;
|
|
16
|
-
export type GoalIntegrationStatus = "none" | "applied" | "committed";
|
|
17
|
-
export interface GoalIntegrationState {
|
|
18
|
-
status: GoalIntegrationStatus;
|
|
19
|
-
/** main HEAD after integration. */
|
|
20
|
-
headSha?: string;
|
|
21
|
-
/** integration base the candidates branched from. */
|
|
22
|
-
baseRef?: string;
|
|
23
|
-
/** integrated file paths (for the journal/diagnosis). */
|
|
24
|
-
files?: string[];
|
|
25
|
-
/** ISO; injected clock, never Date.now() inline in pure code. */
|
|
26
|
-
updatedAt: string;
|
|
27
|
-
}
|
|
28
|
-
export type GoalPrerequisiteStatus = "unknown" | "met" | "missing";
|
|
29
|
-
export type GoalPrerequisiteKind = "local" | "external";
|
|
30
|
-
export type GoalEvidenceKind = "log" | "command" | "screenshot" | "file" | "summary";
|
|
31
|
-
export type GoalVerificationStatus = "pass" | "fail" | "unknown";
|
|
32
|
-
export interface GoalVerificationResult {
|
|
33
|
-
status: GoalVerificationStatus;
|
|
34
|
-
summary: string;
|
|
35
|
-
command?: string;
|
|
36
|
-
exitCode?: number;
|
|
37
|
-
outputPath?: string;
|
|
38
|
-
checkedAt: string;
|
|
39
|
-
}
|
|
40
|
-
export interface GoalCompletionAudit {
|
|
41
|
-
status: GoalVerificationStatus;
|
|
42
|
-
summary: string;
|
|
43
|
-
checkedAt: string;
|
|
44
|
-
verifierCheckedAt?: string;
|
|
45
|
-
outputPath?: string;
|
|
46
|
-
}
|
|
47
|
-
export interface GoalPrerequisite {
|
|
48
|
-
id: string;
|
|
49
|
-
label: string;
|
|
50
|
-
status: GoalPrerequisiteStatus;
|
|
51
|
-
/**
|
|
52
|
-
* Whether the agent can satisfy this prerequisite locally ("local") or it
|
|
53
|
-
* genuinely requires user-supplied external input ("external"). When omitted,
|
|
54
|
-
* {@link prerequisiteKind} infers it: a runnable checkCommand implies local.
|
|
55
|
-
*/
|
|
56
|
-
kind?: GoalPrerequisiteKind;
|
|
57
|
-
checkCommand?: string;
|
|
58
|
-
instructions?: string;
|
|
59
|
-
evidence?: string;
|
|
60
|
-
}
|
|
61
|
-
export interface GoalHarnessItem {
|
|
62
|
-
id: string;
|
|
63
|
-
label: string;
|
|
64
|
-
command?: string;
|
|
65
|
-
path?: string;
|
|
66
|
-
description?: string;
|
|
67
|
-
}
|
|
68
|
-
export type GoalEvidenceMechanism = "command" | "test" | "script" | "fixture" | "log" | "screenshot" | "video" | "browser" | "device" | "source" | "file" | "manual";
|
|
69
|
-
export interface GoalEvidencePlan {
|
|
70
|
-
id: string;
|
|
71
|
-
label: string;
|
|
72
|
-
mechanism: GoalEvidenceMechanism;
|
|
73
|
-
description: string;
|
|
74
|
-
status: "planned" | "ready" | "blocked";
|
|
75
|
-
command?: string;
|
|
76
|
-
path?: string;
|
|
77
|
-
instructions?: string;
|
|
78
|
-
evidence?: string;
|
|
79
|
-
}
|
|
80
|
-
export type GoalReferenceKind = "prompt" | "url" | "repo" | "file" | "image" | "text";
|
|
81
|
-
export interface GoalReference {
|
|
82
|
-
id: string;
|
|
83
|
-
kind: GoalReferenceKind;
|
|
84
|
-
label: string;
|
|
85
|
-
value?: string;
|
|
86
|
-
path?: string;
|
|
87
|
-
mediaType?: string;
|
|
88
|
-
description?: string;
|
|
89
|
-
content?: string;
|
|
90
|
-
source?: string;
|
|
91
|
-
}
|
|
92
|
-
export interface GoalTaskWorktree {
|
|
93
|
-
baseRef: string;
|
|
94
|
-
branchName: string;
|
|
95
|
-
path: string;
|
|
96
|
-
status: "planned" | "created" | "failed";
|
|
97
|
-
error?: string;
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Structured, committed candidate packet produced by a worktree worker. Lets
|
|
101
|
-
* integration read exactly what changed (committed commit + changed files)
|
|
102
|
-
* instead of reverse-engineering a dirty worktree.
|
|
103
|
-
*/
|
|
104
|
-
export interface GoalTaskCandidate {
|
|
105
|
-
baseRef: string;
|
|
106
|
-
headSha: string;
|
|
107
|
-
branchName: string;
|
|
108
|
-
changedFiles: string[];
|
|
109
|
-
committed: boolean;
|
|
110
|
-
}
|
|
111
|
-
export interface GoalTask {
|
|
112
|
-
id: string;
|
|
113
|
-
title: string;
|
|
114
|
-
prompt: string;
|
|
115
|
-
status: GoalTaskStatus;
|
|
116
|
-
workerId?: string;
|
|
117
|
-
attempts: number;
|
|
118
|
-
dependsOn?: string[];
|
|
119
|
-
parallelGroup?: string;
|
|
120
|
-
expectedChangedScope?: string[];
|
|
121
|
-
integration?: GoalTaskIntegration;
|
|
122
|
-
worktree?: GoalTaskWorktree;
|
|
123
|
-
candidate?: GoalTaskCandidate;
|
|
124
|
-
verification?: GoalVerificationResult;
|
|
125
|
-
lastSummary?: string;
|
|
126
|
-
}
|
|
127
|
-
export interface GoalEvidence {
|
|
128
|
-
id: string;
|
|
129
|
-
kind: GoalEvidenceKind;
|
|
130
|
-
label: string;
|
|
131
|
-
path?: string;
|
|
132
|
-
content?: string;
|
|
133
|
-
createdAt: string;
|
|
134
|
-
}
|
|
135
|
-
export interface GoalVerifier {
|
|
136
|
-
description: string;
|
|
137
|
-
command?: string;
|
|
138
|
-
cwd?: string;
|
|
139
|
-
lastResult?: GoalVerificationResult;
|
|
140
|
-
}
|
|
141
|
-
export interface GoalRun {
|
|
142
|
-
id: string;
|
|
143
|
-
title: string;
|
|
144
|
-
goal: string;
|
|
145
|
-
status: GoalRunStatus;
|
|
146
|
-
createdAt: string;
|
|
147
|
-
updatedAt: string;
|
|
148
|
-
projectPath: string;
|
|
149
|
-
successCriteria: string[];
|
|
150
|
-
prerequisites: GoalPrerequisite[];
|
|
151
|
-
harness: GoalHarnessItem[];
|
|
152
|
-
evidencePlan: GoalEvidencePlan[];
|
|
153
|
-
references?: GoalReference[];
|
|
154
|
-
tasks: GoalTask[];
|
|
155
|
-
evidence: GoalEvidence[];
|
|
156
|
-
verifier?: GoalVerifier;
|
|
157
|
-
completionAudit?: GoalCompletionAudit;
|
|
158
|
-
integration?: GoalIntegrationState;
|
|
159
|
-
/**
|
|
160
|
-
* ISO time of the most recent NON-audit, NON-integration worker completion.
|
|
161
|
-
* Drives verifier/audit staleness deterministically (replaces the
|
|
162
|
-
* "Worker ... after verifier" evidence scans).
|
|
163
|
-
*/
|
|
164
|
-
lastSubstantiveWorkerAt?: string;
|
|
165
|
-
blockers: string[];
|
|
166
|
-
activeWorkerId?: string;
|
|
167
|
-
continueRequestedAt?: string;
|
|
168
|
-
}
|
|
169
|
-
export interface GoalCounts {
|
|
170
|
-
total: number;
|
|
171
|
-
active: number;
|
|
172
|
-
blocked: number;
|
|
173
|
-
pending: number;
|
|
174
|
-
running: number;
|
|
175
|
-
passed: number;
|
|
176
|
-
failed: number;
|
|
177
|
-
}
|
|
178
|
-
export interface ReconcileActiveGoalRunsOptions {
|
|
179
|
-
isWorkerActive?: (workerId: string, run: GoalRun) => boolean;
|
|
180
|
-
isVerifierActive?: (run: GoalRun) => boolean;
|
|
181
|
-
}
|
|
182
|
-
export interface GoalReconciliationResult {
|
|
183
|
-
runs: GoalRun[];
|
|
184
|
-
repairedRunIds: string[];
|
|
185
|
-
evidenceCount: number;
|
|
186
|
-
}
|
|
187
|
-
export interface GoalRunInput {
|
|
188
|
-
id?: string;
|
|
189
|
-
title: string;
|
|
190
|
-
goal: string;
|
|
191
|
-
status?: GoalRunStatus;
|
|
192
|
-
successCriteria?: string[];
|
|
193
|
-
prerequisites?: GoalPrerequisite[];
|
|
194
|
-
harness?: GoalHarnessItem[];
|
|
195
|
-
evidencePlan?: GoalEvidencePlan[];
|
|
196
|
-
references?: GoalReference[];
|
|
197
|
-
tasks?: GoalTask[];
|
|
198
|
-
evidence?: GoalEvidence[];
|
|
199
|
-
verifier?: GoalVerifier;
|
|
200
|
-
completionAudit?: GoalCompletionAudit;
|
|
201
|
-
integration?: GoalIntegrationState;
|
|
202
|
-
lastSubstantiveWorkerAt?: string;
|
|
203
|
-
blockers?: string[];
|
|
204
|
-
activeWorkerId?: string;
|
|
205
|
-
continueRequestedAt?: string;
|
|
206
|
-
}
|
|
207
|
-
export interface GoalTaskInput {
|
|
208
|
-
id?: string;
|
|
209
|
-
title: string;
|
|
210
|
-
prompt: string;
|
|
211
|
-
status?: GoalTaskStatus;
|
|
212
|
-
workerId?: string;
|
|
213
|
-
attempts?: number;
|
|
214
|
-
dependsOn?: string[];
|
|
215
|
-
parallelGroup?: string;
|
|
216
|
-
expectedChangedScope?: string[];
|
|
217
|
-
integration?: GoalTaskIntegration;
|
|
218
|
-
/** @deprecated legacy input; folded to {@link integration} on normalize. */
|
|
219
|
-
mergeStrategy?: GoalTaskMergeStrategy;
|
|
220
|
-
worktree?: GoalTaskWorktree;
|
|
221
|
-
candidate?: GoalTaskCandidate;
|
|
222
|
-
verification?: GoalVerificationResult;
|
|
223
|
-
lastSummary?: string;
|
|
224
|
-
}
|
|
225
|
-
export interface GoalEvidenceInput {
|
|
226
|
-
id?: string;
|
|
227
|
-
kind: GoalEvidenceKind;
|
|
228
|
-
label: string;
|
|
229
|
-
path?: string;
|
|
230
|
-
content?: string;
|
|
231
|
-
createdAt?: string;
|
|
232
|
-
}
|
|
233
|
-
export declare function normalizeProjectPath(cwd: string): string;
|
|
234
|
-
export declare function dedupeGoalBlockers(blockers: readonly string[]): string[];
|
|
235
|
-
export declare function appendGoalBlockers(blockers: readonly string[], nextBlockers: string | readonly string[] | undefined): string[];
|
|
236
|
-
export declare function hashPath(cwd: string): string;
|
|
237
|
-
export declare function projectDir(cwd: string): string;
|
|
238
|
-
export declare function createGoalTask(input: GoalTaskInput): GoalTask;
|
|
239
|
-
export declare function createGoalEvidence(input: GoalEvidenceInput): GoalEvidence;
|
|
240
|
-
export declare function createGoalRun(cwd: string, input: GoalRunInput): GoalRun;
|
|
241
|
-
export declare function loadGoalRuns(cwd: string): Promise<GoalRun[]>;
|
|
242
|
-
export declare function loadGoalRunsSync(cwd: string): GoalRun[];
|
|
243
|
-
export declare function saveGoalRuns(cwd: string, runs: readonly GoalRun[]): Promise<void>;
|
|
244
|
-
export declare function saveGoalRunsSync(cwd: string, runs: readonly GoalRun[]): void;
|
|
245
|
-
export declare function reconcileActiveGoalRuns(cwd: string, options?: ReconcileActiveGoalRunsOptions): Promise<GoalReconciliationResult>;
|
|
246
|
-
export declare function upsertGoalRun(cwd: string, input: GoalRun | GoalRunInput): Promise<GoalRun>;
|
|
247
|
-
export declare function getGoalRun(cwd: string, id: string): Promise<GoalRun | null>;
|
|
248
|
-
export declare function getActiveGoalRun(cwd: string): Promise<GoalRun | null>;
|
|
249
|
-
export declare function appendGoalDecision(cwd: string, runId: string, decision: GoalControllerDecision | {
|
|
250
|
-
kind: string;
|
|
251
|
-
reason?: string;
|
|
252
|
-
content?: string;
|
|
253
|
-
}): Promise<GoalRun | null>;
|
|
254
|
-
export declare function appendGoalEvidence(cwd: string, runId: string, input: GoalEvidenceInput): Promise<GoalRun | null>;
|
|
255
|
-
export declare function updateGoalTask(cwd: string, runId: string, taskId: string, patch: Partial<GoalTask> | GoalTaskInput): Promise<GoalRun | null>;
|
|
256
|
-
/**
|
|
257
|
-
* Record the typed integration state from code (git truth), so the controller
|
|
258
|
-
* never has to parse evidence labels to know whether candidates reached main.
|
|
259
|
-
*/
|
|
260
|
-
export declare function setGoalIntegrationState(cwd: string, runId: string, state: GoalIntegrationState): Promise<GoalRun | null>;
|
|
261
|
-
/**
|
|
262
|
-
* Stamp the most recent substantive (non-audit, non-integration) worker
|
|
263
|
-
* completion time, driving verifier/audit staleness deterministically.
|
|
264
|
-
*/
|
|
265
|
-
export declare function recordGoalSubstantiveWorker(cwd: string, runId: string, atIso: string): Promise<GoalRun | null>;
|
|
266
|
-
/**
|
|
267
|
-
* Infer whether a prerequisite is locally resolvable by the agent or genuinely
|
|
268
|
-
* external (user-supplied). An explicit `kind` wins; otherwise a runnable
|
|
269
|
-
* `checkCommand` implies the agent can both check and satisfy it locally.
|
|
270
|
-
*/
|
|
271
|
-
export declare function prerequisiteKind(item: GoalPrerequisite): GoalPrerequisiteKind;
|
|
272
|
-
/**
|
|
273
|
-
* Local unmet prerequisites no longer block the Goal — the controller schedules
|
|
274
|
-
* a worker task to resolve them. Only unmet **external** prerequisites (true
|
|
275
|
-
* user-supplied inputs) are blocking.
|
|
276
|
-
*/
|
|
277
|
-
export declare function isBlockingGoalPrerequisite(item: GoalPrerequisite): boolean;
|
|
278
|
-
export declare function isUnmetLocalGoalPrerequisite(item: GoalPrerequisite): boolean;
|
|
279
|
-
export declare function unmetLocalGoalPrerequisites(run: GoalRun): GoalPrerequisite[];
|
|
280
|
-
export declare function goalHasUnmetLocalPrerequisites(run: GoalRun): boolean;
|
|
281
|
-
export declare function hasBlockingGoalPrerequisites(prerequisites: readonly GoalPrerequisite[]): boolean;
|
|
282
|
-
export declare function goalHasBlockingPrerequisites(run: GoalRun): boolean;
|
|
283
|
-
export declare function formatGoalPrerequisiteInstruction(item: GoalPrerequisite): string;
|
|
284
|
-
export declare function formatGoalBlockingPrerequisiteList(prerequisites: readonly GoalPrerequisite[]): string;
|
|
285
|
-
export declare function formatGoalBlockingPrerequisites(run: GoalRun): string;
|
|
286
|
-
export declare function summarizeGoalCountsFromRuns(runs: readonly GoalRun[]): GoalCounts;
|
|
287
|
-
export declare function summarizeGoalCounts(cwd: string): Promise<GoalCounts>;
|
|
288
|
-
export declare function writeGoalProgressJournal(cwd: string, runId: string): Promise<string | null>;
|
|
289
|
-
//# sourceMappingURL=goal-store.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"goal-store.d.ts","sourceRoot":"","sources":["../../src/core/goal-store.ts"],"names":[],"mappings":"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"}
|