@stigmer/react 0.0.53 → 0.0.54
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/execution/ArtifactCard.d.ts +11 -1
- package/execution/ArtifactCard.d.ts.map +1 -1
- package/execution/ArtifactCard.js +22 -3
- package/execution/ArtifactCard.js.map +1 -1
- package/execution/ArtifactPreviewModal.d.ts.map +1 -1
- package/execution/ArtifactPreviewModal.js +1 -1
- package/execution/ArtifactPreviewModal.js.map +1 -1
- package/execution/ArtifactsWidget.d.ts +26 -19
- package/execution/ArtifactsWidget.d.ts.map +1 -1
- package/execution/ArtifactsWidget.js +24 -26
- package/execution/ArtifactsWidget.js.map +1 -1
- package/execution/MessageThread.d.ts +10 -1
- package/execution/MessageThread.d.ts.map +1 -1
- package/execution/MessageThread.js +19 -17
- package/execution/MessageThread.js.map +1 -1
- package/execution/SandboxContext.d.ts +32 -0
- package/execution/SandboxContext.d.ts.map +1 -0
- package/execution/SandboxContext.js +26 -0
- package/execution/SandboxContext.js.map +1 -0
- package/execution/ToolArgsView.d.ts.map +1 -1
- package/execution/ToolArgsView.js +3 -1
- package/execution/ToolArgsView.js.map +1 -1
- package/execution/ToolCallDetail.d.ts.map +1 -1
- package/execution/ToolCallDetail.js +3 -1
- package/execution/ToolCallDetail.js.map +1 -1
- package/execution/ToolCallItem.d.ts.map +1 -1
- package/execution/ToolCallItem.js +7 -1
- package/execution/ToolCallItem.js.map +1 -1
- package/execution/WriteBackCard.d.ts +34 -0
- package/execution/WriteBackCard.d.ts.map +1 -0
- package/execution/WriteBackCard.js +75 -0
- package/execution/WriteBackCard.js.map +1 -0
- package/execution/WriteBacksWidget.d.ts +49 -0
- package/execution/WriteBacksWidget.d.ts.map +1 -0
- package/execution/WriteBacksWidget.js +44 -0
- package/execution/WriteBacksWidget.js.map +1 -0
- package/execution/__tests__/file-path-resolver.test.d.ts +2 -0
- package/execution/__tests__/file-path-resolver.test.d.ts.map +1 -0
- package/execution/__tests__/file-path-resolver.test.js +180 -0
- package/execution/__tests__/file-path-resolver.test.js.map +1 -0
- package/execution/file-path-resolver.d.ts +3 -3
- package/execution/file-path-resolver.d.ts.map +1 -1
- package/execution/file-path-resolver.js +23 -12
- package/execution/file-path-resolver.js.map +1 -1
- package/execution/index.d.ts +9 -0
- package/execution/index.d.ts.map +1 -1
- package/execution/index.js +5 -0
- package/execution/index.js.map +1 -1
- package/execution/sandbox-path-normalizer.d.ts +46 -0
- package/execution/sandbox-path-normalizer.d.ts.map +1 -0
- package/execution/sandbox-path-normalizer.js +73 -0
- package/execution/sandbox-path-normalizer.js.map +1 -0
- package/execution/useArtifactContent.d.ts +5 -1
- package/execution/useArtifactContent.d.ts.map +1 -1
- package/execution/useArtifactContent.js +6 -2
- package/execution/useArtifactContent.js.map +1 -1
- package/execution/useWorkspaceWriteBacks.d.ts +40 -0
- package/execution/useWorkspaceWriteBacks.d.ts.map +1 -0
- package/execution/useWorkspaceWriteBacks.js +41 -0
- package/execution/useWorkspaceWriteBacks.js.map +1 -0
- package/github/GitHubRepoPicker.d.ts +5 -2
- package/github/GitHubRepoPicker.d.ts.map +1 -1
- package/github/GitHubRepoPicker.js +133 -36
- package/github/GitHubRepoPicker.js.map +1 -1
- package/github/index.d.ts +1 -0
- package/github/index.d.ts.map +1 -1
- package/github/index.js +1 -0
- package/github/index.js.map +1 -1
- package/github/useGitHubSearch.d.ts +20 -0
- package/github/useGitHubSearch.d.ts.map +1 -0
- package/github/useGitHubSearch.js +127 -0
- package/github/useGitHubSearch.js.map +1 -0
- package/index.d.ts +6 -6
- package/index.d.ts.map +1 -1
- package/index.js +3 -3
- package/index.js.map +1 -1
- package/package.json +4 -4
- package/session/index.d.ts +4 -0
- package/session/index.d.ts.map +1 -1
- package/session/index.js +2 -0
- package/session/index.js.map +1 -1
- package/session/useSessionArtifacts.d.ts +73 -0
- package/session/useSessionArtifacts.d.ts.map +1 -0
- package/session/useSessionArtifacts.js +95 -0
- package/session/useSessionArtifacts.js.map +1 -0
- package/session/useSessionWriteBacks.d.ts +56 -0
- package/session/useSessionWriteBacks.d.ts.map +1 -0
- package/session/useSessionWriteBacks.js +56 -0
- package/session/useSessionWriteBacks.js.map +1 -0
- package/src/execution/ArtifactCard.tsx +40 -0
- package/src/execution/ArtifactPreviewModal.tsx +2 -0
- package/src/execution/ArtifactsWidget.tsx +51 -43
- package/src/execution/MessageThread.tsx +18 -0
- package/src/execution/SandboxContext.ts +47 -0
- package/src/execution/ToolArgsView.tsx +3 -1
- package/src/execution/ToolCallDetail.tsx +3 -1
- package/src/execution/ToolCallItem.tsx +7 -1
- package/src/execution/WriteBackCard.tsx +210 -0
- package/src/execution/WriteBacksWidget.tsx +82 -0
- package/src/execution/__tests__/file-path-resolver.test.ts +295 -0
- package/src/execution/file-path-resolver.ts +24 -12
- package/src/execution/index.ts +13 -0
- package/src/execution/sandbox-path-normalizer.ts +80 -0
- package/src/execution/useArtifactContent.ts +6 -1
- package/src/execution/useWorkspaceWriteBacks.ts +56 -0
- package/src/github/GitHubRepoPicker.tsx +413 -108
- package/src/github/index.ts +5 -0
- package/src/github/useGitHubSearch.ts +162 -0
- package/src/index.ts +14 -0
- package/src/session/index.ts +12 -0
- package/src/session/useSessionArtifacts.ts +143 -0
- package/src/session/useSessionWriteBacks.ts +94 -0
- package/styles.css +1 -1
|
@@ -52,9 +52,9 @@ export type ResolvedPathAction = {
|
|
|
52
52
|
* 1. **Platform paths** (`.stigmer/` prefix) → copy raw path.
|
|
53
53
|
* 2. **Workspace paths** → match against workspace entries:
|
|
54
54
|
* - Single entry: treat path as relative to that entry.
|
|
55
|
-
* - Multiple entries:
|
|
56
|
-
*
|
|
57
|
-
*
|
|
55
|
+
* - Multiple entries: scan path segments for an entry name match
|
|
56
|
+
* (handles org-prefixed paths like `plantonhq/agent-fleet/...`).
|
|
57
|
+
* Unmatched paths fall back to the first entry.
|
|
58
58
|
* 3. **Git source** → construct GitHub blob URL.
|
|
59
59
|
* 4. **Local source** → join with absolute local path for copy.
|
|
60
60
|
* 5. **Fallback** → copy the raw path.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-path-resolver.d.ts","sourceRoot":"","sources":["../../src/execution/file-path-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4DAA4D,CAAC;AAKjG;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5D;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAU7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"file-path-resolver.d.ts","sourceRoot":"","sources":["../../src/execution/file-path-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4DAA4D,CAAC;AAKjG;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5D;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAU7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CA0Bf;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC3E;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,SAAS,cAAc,EAAE,GAC1C,kBAAkB,CAqCpB"}
|
|
@@ -44,7 +44,14 @@ export function resolveGitBrowseUrl(gitUrl, branch, commit, relPath) {
|
|
|
44
44
|
if (!repoPath)
|
|
45
45
|
return null;
|
|
46
46
|
const ref = commit || branch || "HEAD";
|
|
47
|
-
|
|
47
|
+
let cleanRelPath = relPath.replace(/^\/+/, "");
|
|
48
|
+
// Guard against relPath that accidentally duplicates the org/repo
|
|
49
|
+
// already encoded in gitUrl (e.g. relPath = "acme/app/src/main.go"
|
|
50
|
+
// when repoPath is "acme/app"). Strip the redundant prefix so the
|
|
51
|
+
// final URL doesn't contain the repo path twice.
|
|
52
|
+
if (cleanRelPath.startsWith(repoPath + "/")) {
|
|
53
|
+
cleanRelPath = cleanRelPath.slice(repoPath.length + 1);
|
|
54
|
+
}
|
|
48
55
|
return `https://github.com/${repoPath}/blob/${ref}/${cleanRelPath}`;
|
|
49
56
|
}
|
|
50
57
|
/**
|
|
@@ -55,9 +62,9 @@ export function resolveGitBrowseUrl(gitUrl, branch, commit, relPath) {
|
|
|
55
62
|
* 1. **Platform paths** (`.stigmer/` prefix) → copy raw path.
|
|
56
63
|
* 2. **Workspace paths** → match against workspace entries:
|
|
57
64
|
* - Single entry: treat path as relative to that entry.
|
|
58
|
-
* - Multiple entries:
|
|
59
|
-
*
|
|
60
|
-
*
|
|
65
|
+
* - Multiple entries: scan path segments for an entry name match
|
|
66
|
+
* (handles org-prefixed paths like `plantonhq/agent-fleet/...`).
|
|
67
|
+
* Unmatched paths fall back to the first entry.
|
|
61
68
|
* 3. **Git source** → construct GitHub blob URL.
|
|
62
69
|
* 4. **Local source** → join with absolute local path for copy.
|
|
63
70
|
* 5. **Fallback** → copy the raw path.
|
|
@@ -94,19 +101,23 @@ export function resolvePathAction(path, workspaceEntries) {
|
|
|
94
101
|
/**
|
|
95
102
|
* Matches a workspace-relative path against entries. With a single
|
|
96
103
|
* entry the path is used as-is. With multiple entries the first path
|
|
97
|
-
* segment is tested against entry names
|
|
98
|
-
*
|
|
104
|
+
* segment is tested against entry names. When the first segment
|
|
105
|
+
* doesn't match, deeper segments are scanned — this handles tool-call
|
|
106
|
+
* paths that embed an org prefix (e.g. `plantonhq/agent-fleet/...`
|
|
107
|
+
* where the entry name is `agent-fleet`). Unmatched paths fall back
|
|
108
|
+
* to the first entry.
|
|
99
109
|
*/
|
|
100
110
|
function matchWorkspaceEntry(relPath, entries) {
|
|
101
111
|
if (entries.length === 1) {
|
|
102
112
|
return { entry: entries[0], relPath };
|
|
103
113
|
}
|
|
104
|
-
const
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
114
|
+
const segments = relPath.split("/");
|
|
115
|
+
for (let i = 0; i < segments.length; i++) {
|
|
116
|
+
for (const entry of entries) {
|
|
117
|
+
if (entry.name === segments[i]) {
|
|
118
|
+
const rest = segments.slice(i + 1).join("/");
|
|
119
|
+
return { entry, relPath: rest };
|
|
120
|
+
}
|
|
110
121
|
}
|
|
111
122
|
}
|
|
112
123
|
return { entry: entries[0], relPath };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-path-resolver.js","sourceRoot":"","sources":["../../src/execution/file-path-resolver.ts"],"names":[],"mappings":"AAEA,MAAM,eAAe,GAAG,WAAW,CAAC;AACpC,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAUrC;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEvC,IAAI,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,KAAK,KAAK,iBAAiB,EAAE,CAAC;QAChC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AACjD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,MAAc,EACd,MAAc,EACd,OAAe;IAEf,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IAE/C,mEAAmE;IACnE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,MAAM,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC;IACvC,
|
|
1
|
+
{"version":3,"file":"file-path-resolver.js","sourceRoot":"","sources":["../../src/execution/file-path-resolver.ts"],"names":[],"mappings":"AAEA,MAAM,eAAe,GAAG,WAAW,CAAC;AACpC,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAUrC;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEvC,IAAI,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,KAAK,KAAK,iBAAiB,EAAE,CAAC;QAChC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AACjD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,MAAc,EACd,MAAc,EACd,OAAe;IAEf,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IAE/C,mEAAmE;IACnE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,MAAM,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC;IACvC,IAAI,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAE/C,kEAAkE;IAClE,mEAAmE;IACnE,kEAAkE;IAClE,iDAAiD;IACjD,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC;QAC5C,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,sBAAsB,QAAQ,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;AACtE,CAAC;AAUD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAY,EACZ,gBAA2C;IAE3C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAC/D,CAAC;IAED,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAE1C,IAAI,cAAc,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACvC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAC/D,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC;IACrC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAC/D,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;IAEpC,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,mBAAmB,CAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,EAChB,MAAM,CAAC,KAAK,CAAC,MAAM,EACnB,MAAM,CAAC,KAAK,CAAC,MAAM,EACnB,OAAO,CACR,CAAC;QACF,IAAI,GAAG,EAAE,CAAC;YACR,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAC9D,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAC/D,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,SAAS,mBAAmB,CAC1B,OAAe,EACf,OAAkC;IAElC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;IACxC,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,GAAW;IAC9C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACzC,OAAO,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC;AACpC,CAAC"}
|
package/execution/index.d.ts
CHANGED
|
@@ -9,6 +9,10 @@ export { useExecutionArtifacts } from "./useExecutionArtifacts";
|
|
|
9
9
|
export type { UseExecutionArtifactsReturn } from "./useExecutionArtifacts";
|
|
10
10
|
export { useArtifactContent } from "./useArtifactContent";
|
|
11
11
|
export type { UseArtifactContentReturn } from "./useArtifactContent";
|
|
12
|
+
export { useWorkspaceWriteBacks } from "./useWorkspaceWriteBacks";
|
|
13
|
+
export type { UseWorkspaceWriteBacksReturn } from "./useWorkspaceWriteBacks";
|
|
14
|
+
export { WriteBackCard } from "./WriteBackCard";
|
|
15
|
+
export type { WriteBackCardProps } from "./WriteBackCard";
|
|
12
16
|
export { isTextArtifact, isArtifactExpired, formatArtifactSize, getArtifactExtension, getFileExtension, getArtifactRenderMode, } from "./artifact-utils";
|
|
13
17
|
export type { ArtifactRenderMode } from "./artifact-utils";
|
|
14
18
|
export { ExecutionPhaseBadge } from "./ExecutionPhaseBadge";
|
|
@@ -51,12 +55,17 @@ export { ArtifactPreviewModal } from "./ArtifactPreviewModal";
|
|
|
51
55
|
export type { ArtifactPreviewModalProps } from "./ArtifactPreviewModal";
|
|
52
56
|
export { ArtifactsWidget } from "./ArtifactsWidget";
|
|
53
57
|
export type { ArtifactsWidgetProps } from "./ArtifactsWidget";
|
|
58
|
+
export { WriteBacksWidget } from "./WriteBacksWidget";
|
|
59
|
+
export type { WriteBacksWidgetProps } from "./WriteBacksWidget";
|
|
54
60
|
export { resolveToolCategory, extractPrimaryArg, extractPrimaryArgFromPreview, humanizeToolName, } from "./tool-categories";
|
|
55
61
|
export type { ToolCategory, ToolCategoryInfo } from "./tool-categories";
|
|
56
62
|
export { FilePathLink } from "./FilePathLink";
|
|
57
63
|
export type { FilePathLinkProps } from "./FilePathLink";
|
|
58
64
|
export { FilePathContext } from "./FilePathContext";
|
|
59
65
|
export type { FilePathContextValue } from "./FilePathContext";
|
|
66
|
+
export { normalizeSandboxPaths } from "./sandbox-path-normalizer";
|
|
67
|
+
export { SandboxContext, useSandboxNormalize } from "./SandboxContext";
|
|
68
|
+
export type { SandboxContextValue } from "./SandboxContext";
|
|
60
69
|
export { classifyPath, resolveGitBrowseUrl, resolvePathAction } from "./file-path-resolver";
|
|
61
70
|
export type { PathClassification, ResolvedPathAction } from "./file-path-resolver";
|
|
62
71
|
export { useSessionVariables } from "./useSessionVariables";
|
package/execution/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"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"}
|
package/execution/index.js
CHANGED
|
@@ -4,6 +4,8 @@ export { useExecutionStream } from "./useExecutionStream";
|
|
|
4
4
|
export { useExecutionUsage, aggregateUsage } from "./useExecutionUsage";
|
|
5
5
|
export { useExecutionArtifacts } from "./useExecutionArtifacts";
|
|
6
6
|
export { useArtifactContent } from "./useArtifactContent";
|
|
7
|
+
export { useWorkspaceWriteBacks } from "./useWorkspaceWriteBacks";
|
|
8
|
+
export { WriteBackCard } from "./WriteBackCard";
|
|
7
9
|
export { isTextArtifact, isArtifactExpired, formatArtifactSize, getArtifactExtension, getFileExtension, getArtifactRenderMode, } from "./artifact-utils";
|
|
8
10
|
export { ExecutionPhaseBadge } from "./ExecutionPhaseBadge";
|
|
9
11
|
export { SetupProgress } from "./SetupProgress";
|
|
@@ -25,9 +27,12 @@ export { ArtifactCard } from "./ArtifactCard";
|
|
|
25
27
|
export { ArtifactContentRenderer } from "./ArtifactContentRenderer";
|
|
26
28
|
export { ArtifactPreviewModal } from "./ArtifactPreviewModal";
|
|
27
29
|
export { ArtifactsWidget } from "./ArtifactsWidget";
|
|
30
|
+
export { WriteBacksWidget } from "./WriteBacksWidget";
|
|
28
31
|
export { resolveToolCategory, extractPrimaryArg, extractPrimaryArgFromPreview, humanizeToolName, } from "./tool-categories";
|
|
29
32
|
export { FilePathLink } from "./FilePathLink";
|
|
30
33
|
export { FilePathContext } from "./FilePathContext";
|
|
34
|
+
export { normalizeSandboxPaths } from "./sandbox-path-normalizer";
|
|
35
|
+
export { SandboxContext, useSandboxNormalize } from "./SandboxContext";
|
|
31
36
|
export { classifyPath, resolveGitBrowseUrl, resolvePathAction } from "./file-path-resolver";
|
|
32
37
|
export { useSessionVariables } from "./useSessionVariables";
|
|
33
38
|
export { SessionVariablesInput } from "./SessionVariablesInput";
|
package/execution/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAOpE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG7F,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EACL,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,cAAc,GACf,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,4BAA4B,EAC5B,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAM5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAOpE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG7F,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EACL,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,cAAc,GACf,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,4BAA4B,EAC5B,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAM5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Display-time normalization for sandbox workspace paths.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the Python `humanize_sandbox_paths` in
|
|
5
|
+
* `graphton.core.backends.platform_mount` — same semantics, same
|
|
6
|
+
* replacement order. The SDK version acts as a safety net for
|
|
7
|
+
* historical data (persisted before backend humanization was added)
|
|
8
|
+
* and streaming edge cases.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Replace absolute sandbox workspace paths with workspace-relative
|
|
14
|
+
* display paths.
|
|
15
|
+
*
|
|
16
|
+
* Performs three ordered replacements:
|
|
17
|
+
*
|
|
18
|
+
* 1. `workspaceRoot + "/"` → empty string (makes paths workspace-relative)
|
|
19
|
+
* 2. `workspaceRoot` (exact) → `"."` (the workspace root itself)
|
|
20
|
+
* 3. Parent of `workspaceRoot` (sandbox home) → `"~"` (Unix convention)
|
|
21
|
+
*
|
|
22
|
+
* Returns `text` unchanged when `workspaceRoot` is empty.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```ts
|
|
26
|
+
* normalizeSandboxPaths(
|
|
27
|
+
* "ls /home/daytona/workspace/plantonhq/",
|
|
28
|
+
* "/home/daytona/workspace",
|
|
29
|
+
* );
|
|
30
|
+
* // => "ls plantonhq/"
|
|
31
|
+
*
|
|
32
|
+
* normalizeSandboxPaths(
|
|
33
|
+
* "cd /home/daytona/workspace && ls",
|
|
34
|
+
* "/home/daytona/workspace",
|
|
35
|
+
* );
|
|
36
|
+
* // => "cd . && ls"
|
|
37
|
+
*
|
|
38
|
+
* normalizeSandboxPaths(
|
|
39
|
+
* "cat /home/daytona/.bashrc",
|
|
40
|
+
* "/home/daytona/workspace",
|
|
41
|
+
* );
|
|
42
|
+
* // => "cat ~/.bashrc"
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export declare function normalizeSandboxPaths(text: string, workspaceRoot: string): string;
|
|
46
|
+
//# sourceMappingURL=sandbox-path-normalizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-path-normalizer.d.ts","sourceRoot":"","sources":["../../src/execution/sandbox-path-normalizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,MAAM,CAoBR"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Display-time normalization for sandbox workspace paths.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the Python `humanize_sandbox_paths` in
|
|
5
|
+
* `graphton.core.backends.platform_mount` — same semantics, same
|
|
6
|
+
* replacement order. The SDK version acts as a safety net for
|
|
7
|
+
* historical data (persisted before backend humanization was added)
|
|
8
|
+
* and streaming edge cases.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Replace absolute sandbox workspace paths with workspace-relative
|
|
14
|
+
* display paths.
|
|
15
|
+
*
|
|
16
|
+
* Performs three ordered replacements:
|
|
17
|
+
*
|
|
18
|
+
* 1. `workspaceRoot + "/"` → empty string (makes paths workspace-relative)
|
|
19
|
+
* 2. `workspaceRoot` (exact) → `"."` (the workspace root itself)
|
|
20
|
+
* 3. Parent of `workspaceRoot` (sandbox home) → `"~"` (Unix convention)
|
|
21
|
+
*
|
|
22
|
+
* Returns `text` unchanged when `workspaceRoot` is empty.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```ts
|
|
26
|
+
* normalizeSandboxPaths(
|
|
27
|
+
* "ls /home/daytona/workspace/plantonhq/",
|
|
28
|
+
* "/home/daytona/workspace",
|
|
29
|
+
* );
|
|
30
|
+
* // => "ls plantonhq/"
|
|
31
|
+
*
|
|
32
|
+
* normalizeSandboxPaths(
|
|
33
|
+
* "cd /home/daytona/workspace && ls",
|
|
34
|
+
* "/home/daytona/workspace",
|
|
35
|
+
* );
|
|
36
|
+
* // => "cd . && ls"
|
|
37
|
+
*
|
|
38
|
+
* normalizeSandboxPaths(
|
|
39
|
+
* "cat /home/daytona/.bashrc",
|
|
40
|
+
* "/home/daytona/workspace",
|
|
41
|
+
* );
|
|
42
|
+
* // => "cat ~/.bashrc"
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export function normalizeSandboxPaths(text, workspaceRoot) {
|
|
46
|
+
if (!text || !workspaceRoot)
|
|
47
|
+
return text;
|
|
48
|
+
const wsRoot = workspaceRoot.replace(/\/+$/, "");
|
|
49
|
+
// 1) Strip workspace root prefix (with trailing slash) → workspace-relative
|
|
50
|
+
text = replaceAll(text, wsRoot + "/", "");
|
|
51
|
+
// 2) Replace bare workspace root → "."
|
|
52
|
+
text = replaceAll(text, wsRoot, ".");
|
|
53
|
+
// 3) Replace sandbox home prefix → "~"
|
|
54
|
+
const lastSlash = wsRoot.lastIndexOf("/");
|
|
55
|
+
if (lastSlash > 0) {
|
|
56
|
+
const sandboxHome = wsRoot.slice(0, lastSlash);
|
|
57
|
+
text = replaceAll(text, sandboxHome + "/", "~/");
|
|
58
|
+
text = replaceAll(text, sandboxHome, "~");
|
|
59
|
+
}
|
|
60
|
+
return text;
|
|
61
|
+
}
|
|
62
|
+
function replaceAll(text, search, replacement) {
|
|
63
|
+
if (!search)
|
|
64
|
+
return text;
|
|
65
|
+
let result = text;
|
|
66
|
+
let idx = result.indexOf(search);
|
|
67
|
+
while (idx !== -1) {
|
|
68
|
+
result = result.slice(0, idx) + replacement + result.slice(idx + search.length);
|
|
69
|
+
idx = result.indexOf(search, idx + replacement.length);
|
|
70
|
+
}
|
|
71
|
+
return result;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=sandbox-path-normalizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-path-normalizer.js","sourceRoot":"","sources":["../../src/execution/sandbox-path-normalizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAY,EACZ,aAAqB;IAErB,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAEzC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEjD,4EAA4E;IAC5E,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;IAE1C,uCAAuC;IACvC,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAErC,uCAAuC;IACvC,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/C,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,IAAY,EAAE,MAAc,EAAE,WAAmB;IACnE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;QAClB,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAChF,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -67,9 +67,13 @@ export interface UseArtifactContentReturn {
|
|
|
67
67
|
* @param storageKey - Storage key from `ExecutionArtifact.storageKey`, or `null` to skip.
|
|
68
68
|
* @param entryPath - For directory artifacts: relative path of a file within
|
|
69
69
|
* the archive to extract. `null` returns the full artifact (existing behavior).
|
|
70
|
+
* @param contentHash - SHA-256 hex digest from `ExecutionArtifact.contentHash`.
|
|
71
|
+
* When the same file is overwritten during execution, the `storageKey` stays
|
|
72
|
+
* stable but `contentHash` changes, triggering a re-fetch so the UI never
|
|
73
|
+
* shows stale content. Pass `undefined` or omit for backwards compatibility.
|
|
70
74
|
*
|
|
71
75
|
* @see useExecutionArtifacts — extracts artifact metadata from an execution
|
|
72
76
|
* @see isTextArtifact — heuristic for whether content is fetchable as text
|
|
73
77
|
*/
|
|
74
|
-
export declare function useArtifactContent(executionId: string | null, storageKey: string | null, entryPath?: string | null): UseArtifactContentReturn;
|
|
78
|
+
export declare function useArtifactContent(executionId: string | null, storageKey: string | null, entryPath?: string | null, contentHash?: string): UseArtifactContentReturn;
|
|
75
79
|
//# sourceMappingURL=useArtifactContent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useArtifactContent.d.ts","sourceRoot":"","sources":["../../src/execution/useArtifactContent.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAE9B,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED
|
|
1
|
+
{"version":3,"file":"useArtifactContent.d.ts","sourceRoot":"","sources":["../../src/execution/useArtifactContent.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAE9B,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,WAAW,CAAC,EAAE,MAAM,GACnB,wBAAwB,CAiE1B"}
|
|
@@ -43,11 +43,15 @@ import { useStigmer } from "../hooks";
|
|
|
43
43
|
* @param storageKey - Storage key from `ExecutionArtifact.storageKey`, or `null` to skip.
|
|
44
44
|
* @param entryPath - For directory artifacts: relative path of a file within
|
|
45
45
|
* the archive to extract. `null` returns the full artifact (existing behavior).
|
|
46
|
+
* @param contentHash - SHA-256 hex digest from `ExecutionArtifact.contentHash`.
|
|
47
|
+
* When the same file is overwritten during execution, the `storageKey` stays
|
|
48
|
+
* stable but `contentHash` changes, triggering a re-fetch so the UI never
|
|
49
|
+
* shows stale content. Pass `undefined` or omit for backwards compatibility.
|
|
46
50
|
*
|
|
47
51
|
* @see useExecutionArtifacts — extracts artifact metadata from an execution
|
|
48
52
|
* @see isTextArtifact — heuristic for whether content is fetchable as text
|
|
49
53
|
*/
|
|
50
|
-
export function useArtifactContent(executionId, storageKey, entryPath) {
|
|
54
|
+
export function useArtifactContent(executionId, storageKey, entryPath, contentHash) {
|
|
51
55
|
const stigmer = useStigmer();
|
|
52
56
|
const [content, setContent] = useState(null);
|
|
53
57
|
const [contentType, setContentType] = useState(null);
|
|
@@ -96,7 +100,7 @@ export function useArtifactContent(executionId, storageKey, entryPath) {
|
|
|
96
100
|
return () => {
|
|
97
101
|
cancelled.current = true;
|
|
98
102
|
};
|
|
99
|
-
}, [executionId, storageKey, entryPath, stigmer, fetchKey]);
|
|
103
|
+
}, [executionId, storageKey, entryPath, contentHash, stigmer, fetchKey]);
|
|
100
104
|
return { content, contentType, isTruncated, isLoading, error, refetch };
|
|
101
105
|
}
|
|
102
106
|
//# sourceMappingURL=useArtifactContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useArtifactContent.js","sourceRoot":"","sources":["../../src/execution/useArtifactContent.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,SAAS,EAAU,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,4DAA4D,CAAC;AAC7G,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAqCtC
|
|
1
|
+
{"version":3,"file":"useArtifactContent.js","sourceRoot":"","sources":["../../src/execution/useArtifactContent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { AgentExecution } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/api_pb";
|
|
2
|
+
import type { WorkspaceWriteBack } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/writeback_pb";
|
|
3
|
+
export interface UseWorkspaceWriteBacksReturn {
|
|
4
|
+
/** Write-back outcomes for git-backed workspace entries, ordered by workspace entry name. */
|
|
5
|
+
readonly writeBacks: readonly WorkspaceWriteBack[];
|
|
6
|
+
/** `true` when the execution has at least one write-back entry. */
|
|
7
|
+
readonly hasWriteBacks: boolean;
|
|
8
|
+
/** Total number of write-back entries. */
|
|
9
|
+
readonly writeBackCount: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Pure derivation hook that extracts workspace write-back data from an
|
|
13
|
+
* {@link AgentExecution} snapshot.
|
|
14
|
+
*
|
|
15
|
+
* Follows the same `useMemo`-based derivation pattern as
|
|
16
|
+
* {@link useExecutionArtifacts}: no side effects, no data fetching.
|
|
17
|
+
* The execution object (typically from {@link useExecutionStream}) is
|
|
18
|
+
* the single input.
|
|
19
|
+
*
|
|
20
|
+
* Returns an empty array when the execution is `null` or has no
|
|
21
|
+
* write-backs, eliminating null-checking at every consumer call site.
|
|
22
|
+
*
|
|
23
|
+
* Each `WorkspaceWriteBack` entry corresponds to a git-backed workspace
|
|
24
|
+
* entry where the platform detected file changes and ran the automatic
|
|
25
|
+
* branch/commit/push/PR workflow.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```tsx
|
|
29
|
+
* const { execution } = useExecutionStream(executionId);
|
|
30
|
+
* const { writeBacks, hasWriteBacks } = useWorkspaceWriteBacks(execution);
|
|
31
|
+
*
|
|
32
|
+
* if (hasWriteBacks) {
|
|
33
|
+
* writeBacks.forEach((wb) => console.log(wb.workspaceEntryName, wb.pullRequestUrl));
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
36
|
+
*
|
|
37
|
+
* @see useExecutionArtifacts — similar derivation hook for artifacts
|
|
38
|
+
*/
|
|
39
|
+
export declare function useWorkspaceWriteBacks(execution: AgentExecution | null): UseWorkspaceWriteBacksReturn;
|
|
40
|
+
//# sourceMappingURL=useWorkspaceWriteBacks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useWorkspaceWriteBacks.d.ts","sourceRoot":"","sources":["../../src/execution/useWorkspaceWriteBacks.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6DAA6D,CAAC;AAClG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mEAAmE,CAAC;AAE5G,MAAM,WAAW,4BAA4B;IAC3C,6FAA6F;IAC7F,QAAQ,CAAC,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACnD,mEAAmE;IACnE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,0CAA0C;IAC1C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,cAAc,GAAG,IAAI,GAC/B,4BAA4B,CAU9B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
/**
|
|
4
|
+
* Pure derivation hook that extracts workspace write-back data from an
|
|
5
|
+
* {@link AgentExecution} snapshot.
|
|
6
|
+
*
|
|
7
|
+
* Follows the same `useMemo`-based derivation pattern as
|
|
8
|
+
* {@link useExecutionArtifacts}: no side effects, no data fetching.
|
|
9
|
+
* The execution object (typically from {@link useExecutionStream}) is
|
|
10
|
+
* the single input.
|
|
11
|
+
*
|
|
12
|
+
* Returns an empty array when the execution is `null` or has no
|
|
13
|
+
* write-backs, eliminating null-checking at every consumer call site.
|
|
14
|
+
*
|
|
15
|
+
* Each `WorkspaceWriteBack` entry corresponds to a git-backed workspace
|
|
16
|
+
* entry where the platform detected file changes and ran the automatic
|
|
17
|
+
* branch/commit/push/PR workflow.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```tsx
|
|
21
|
+
* const { execution } = useExecutionStream(executionId);
|
|
22
|
+
* const { writeBacks, hasWriteBacks } = useWorkspaceWriteBacks(execution);
|
|
23
|
+
*
|
|
24
|
+
* if (hasWriteBacks) {
|
|
25
|
+
* writeBacks.forEach((wb) => console.log(wb.workspaceEntryName, wb.pullRequestUrl));
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @see useExecutionArtifacts — similar derivation hook for artifacts
|
|
30
|
+
*/
|
|
31
|
+
export function useWorkspaceWriteBacks(execution) {
|
|
32
|
+
return useMemo(() => {
|
|
33
|
+
const writeBacks = execution?.status?.workspaceWriteBacks ?? [];
|
|
34
|
+
return {
|
|
35
|
+
writeBacks,
|
|
36
|
+
hasWriteBacks: writeBacks.length > 0,
|
|
37
|
+
writeBackCount: writeBacks.length,
|
|
38
|
+
};
|
|
39
|
+
}, [execution]);
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=useWorkspaceWriteBacks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useWorkspaceWriteBacks.js","sourceRoot":"","sources":["../../src/execution/useWorkspaceWriteBacks.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAahC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,sBAAsB,CACpC,SAAgC;IAEhC,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,UAAU,GAAG,SAAS,EAAE,MAAM,EAAE,mBAAmB,IAAI,EAAE,CAAC;QAEhE,OAAO;YACL,UAAU;YACV,aAAa,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC;YACpC,cAAc,EAAE,UAAU,CAAC,MAAM;SAClC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAClB,CAAC"}
|
|
@@ -11,12 +11,15 @@ export interface GitHubRepoPickerProps {
|
|
|
11
11
|
* Styled component for browsing and selecting a GitHub repository.
|
|
12
12
|
*
|
|
13
13
|
* Features:
|
|
14
|
-
* -
|
|
14
|
+
* - Two modes: "My Repos" (user's own repos) and "All GitHub" (public search)
|
|
15
|
+
* - Owner-grouped sections in My Repos mode
|
|
15
16
|
* - Recently selected repos pinned at top
|
|
16
|
-
* - Fixed
|
|
17
|
+
* - Fixed max-height with scroll shadow indicators
|
|
17
18
|
* - Keyboard navigation (Arrow keys, Enter, Escape)
|
|
18
19
|
* - Search with match highlighting
|
|
19
20
|
* - Branch selector after repo selection
|
|
21
|
+
* - Manual URL entry for repos not discoverable via search
|
|
22
|
+
* - Link to manage GitHub App repository access
|
|
20
23
|
*
|
|
21
24
|
* All visual properties flow through `--stgm-*` tokens.
|
|
22
25
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitHubRepoPicker.d.ts","sourceRoot":"","sources":["../../src/github/GitHubRepoPicker.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GitHubRepoPicker.d.ts","sourceRoot":"","sources":["../../src/github/GitHubRepoPicker.tsx"],"names":[],"mappings":"AAaA,MAAM,WAAW,qBAAqB;IACpC,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAwHD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,GACV,EAAE,qBAAqB,2CA0cvB"}
|