@normful/picadillo 4.0.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/extensions/overstory.ts +24 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
## [5.0.0] - 2026-02-17
|
|
2
|
+
|
|
3
|
+
### 🚀 Features
|
|
4
|
+
|
|
5
|
+
- *(overstory)* Ensure extension runs only in an Overstory git repository
|
|
1
6
|
## [4.0.0] - 2026-02-17
|
|
2
7
|
|
|
3
8
|
### 🚀 Features
|
|
@@ -11,6 +16,7 @@
|
|
|
11
16
|
### ⚙️ Miscellaneous Tasks
|
|
12
17
|
|
|
13
18
|
- Shorten package.json description, fix overstory repo URL
|
|
19
|
+
- Release 4.0.0
|
|
14
20
|
## [3.0.0] - 2026-02-17
|
|
15
21
|
|
|
16
22
|
### 🚀 Features
|
package/extensions/overstory.ts
CHANGED
|
@@ -177,7 +177,30 @@ export async function handleSessionShutdown(
|
|
|
177
177
|
await Promise.all([logSessionEnd(execFn), mulchLearn(execFn)]);
|
|
178
178
|
}
|
|
179
179
|
|
|
180
|
-
export
|
|
180
|
+
export async function isOverstoryRepo(
|
|
181
|
+
execFn: ExtensionAPI["exec"],
|
|
182
|
+
): Promise<boolean> {
|
|
183
|
+
try {
|
|
184
|
+
// Get the git repo root directory (fails if not in a git repo)
|
|
185
|
+
const gitRootResult = await execFn("git", ["rev-parse", "--show-toplevel"]);
|
|
186
|
+
const gitRoot = gitRootResult.stdout.trim();
|
|
187
|
+
|
|
188
|
+
// Check if .overstory directory exists in the git repo root
|
|
189
|
+
const overstoryDirResult = await execFn("ls", ["-d", `${gitRoot}/.overstory`]);
|
|
190
|
+
if (overstoryDirResult.code !== 0) {
|
|
191
|
+
return false; // No .overstory directory
|
|
192
|
+
}
|
|
193
|
+
return true;
|
|
194
|
+
} catch (e) {
|
|
195
|
+
return false; // Not in a git repo or other error
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
export default async function (pi: ExtensionAPI) {
|
|
200
|
+
if (!(await isOverstoryRepo(pi.exec))) {
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
|
|
181
204
|
pi.on("session_start", async (_event, _ctx) => {
|
|
182
205
|
await handleSessionStart(pi.exec, pi.sendMessage);
|
|
183
206
|
});
|