specweave 1.0.68 → 1.0.70
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/dist/src/cli/check-watchdog.d.ts +2 -0
- package/dist/src/cli/check-watchdog.d.ts.map +1 -1
- package/dist/src/cli/check-watchdog.js +6 -0
- package/dist/src/cli/check-watchdog.js.map +1 -1
- package/dist/src/cli/helpers/init/language-selection.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/language-selection.js +14 -9
- package/dist/src/cli/helpers/init/language-selection.js.map +1 -1
- package/dist/src/cli/register-session.d.ts +2 -0
- package/dist/src/cli/register-session.d.ts.map +1 -1
- package/dist/src/cli/register-session.js +7 -0
- package/dist/src/cli/register-session.js.map +1 -1
- package/dist/src/core/project/project-registry.d.ts +5 -0
- package/dist/src/core/project/project-registry.d.ts.map +1 -1
- package/dist/src/core/project/project-registry.js +24 -2
- package/dist/src/core/project/project-registry.js.map +1 -1
- package/dist/src/utils/session-registry.d.ts +5 -0
- package/dist/src/utils/session-registry.d.ts.map +1 -1
- package/dist/src/utils/session-registry.js +28 -2
- package/dist/src/utils/session-registry.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/hooks/lib/hook-errors.sh +17 -3
- package/plugins/specweave/hooks/lib/update-active-increment.sh +4 -5
- package/plugins/specweave/hooks/lib/update-status-line.sh +4 -4
- package/plugins/specweave/hooks/lib/validate-spec-status.sh +10 -2
- package/plugins/specweave/hooks/universal/fail-fast-wrapper.sh +11 -2
- package/plugins/specweave/hooks/v2/guards/task-ac-sync-guard.sh +4 -2
- package/plugins/specweave/hooks/v2/session-end.sh +21 -1
- package/plugins/specweave/hooks/v2/session-start.sh +22 -2
- package/plugins/specweave/scripts/heartbeat.sh +26 -2
- package/plugins/specweave-ado/hooks/post-task-completion.sh +8 -9
- package/plugins/specweave-github/hooks/post-task-completion.sh +28 -27
- package/plugins/specweave-jira/hooks/post-task-completion.sh +8 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-watchdog.d.ts","sourceRoot":"","sources":["../../../src/cli/check-watchdog.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"check-watchdog.d.ts","sourceRoot":"","sources":["../../../src/cli/check-watchdog.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;GAaG"}
|
|
@@ -10,11 +10,17 @@
|
|
|
10
10
|
* Output:
|
|
11
11
|
* - PID of active watchdog (if exists)
|
|
12
12
|
* - Empty string (if no active watchdog)
|
|
13
|
+
*
|
|
14
|
+
* Note: Will exit silently (exit 0) if not a SpecWeave project
|
|
13
15
|
*/
|
|
14
16
|
import { SessionRegistry } from '../utils/session-registry.js';
|
|
15
17
|
import { consoleLogger } from '../utils/logger.js';
|
|
16
18
|
async function main() {
|
|
17
19
|
const registry = new SessionRegistry(process.cwd(), { logger: consoleLogger });
|
|
20
|
+
// If not a valid SpecWeave project, exit silently
|
|
21
|
+
if (!registry.isValidProject()) {
|
|
22
|
+
process.exit(0);
|
|
23
|
+
}
|
|
18
24
|
try {
|
|
19
25
|
const sessions = await registry.getAllSessions();
|
|
20
26
|
// Find watchdog sessions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-watchdog.js","sourceRoot":"","sources":["../../../src/cli/check-watchdog.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"check-watchdog.js","sourceRoot":"","sources":["../../../src/cli/check-watchdog.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,KAAK,UAAU,IAAI;IACjB,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAE/E,kDAAkD;IAClD,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC;QAEjD,yBAAyB;QACzB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QAEzF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,qBAAqB;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,8CAA8C;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;QAE1C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC;YAClE,MAAM,GAAG,GAAG,GAAG,GAAG,aAAa,CAAC;YAEhC,IAAI,GAAG,GAAG,SAAS,EAAE,CAAC;gBACpB,wBAAwB;gBACxB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"language-selection.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/language-selection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGrE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,gCAAgC;IAChC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,sEAAsE;IACtE,oBAAoB,EAAE,OAAO,CAAC;IAC9B,+CAA+C;IAC/C,oBAAoB,EAAE,OAAO,CAAC;CAC/B;
|
|
1
|
+
{"version":3,"file":"language-selection.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/language-selection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGrE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,gCAAgC;IAChC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,sEAAsE;IACtE,oBAAoB,EAAE,OAAO,CAAC;IAC9B,+CAA+C;IAC/C,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAgMD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAarE;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,GAAE,OAAe,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAC9B,OAAO,CAAC,uBAAuB,CAAC,CAqFlC;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,GAAE,iBAAwB,GAAG,uBAAuB,CAMvG"}
|
|
@@ -11,18 +11,23 @@ import { select, confirm } from '@inquirer/prompts';
|
|
|
11
11
|
import { getLocaleManager, resetLocaleManager } from '../../../core/i18n/locale-manager.js';
|
|
12
12
|
/**
|
|
13
13
|
* Get language display info with native names
|
|
14
|
+
*
|
|
15
|
+
* NOTE: Uses text identifiers instead of emoji flags for cross-platform stability.
|
|
16
|
+
* Flag emojis (🇬🇧, 🇪🇸, etc.) render as 2-letter codes (GB, ES) on many terminals,
|
|
17
|
+
* especially on Windows, older Linux terminals, and some IDE integrated terminals.
|
|
18
|
+
* Text identifiers work consistently across all platforms.
|
|
14
19
|
*/
|
|
15
20
|
function getLanguageChoices() {
|
|
16
21
|
return [
|
|
17
|
-
{ name: '
|
|
18
|
-
{ name: '
|
|
19
|
-
{ name: '
|
|
20
|
-
{ name: '
|
|
21
|
-
{ name: '
|
|
22
|
-
{ name: '
|
|
23
|
-
{ name: '
|
|
24
|
-
{ name: '
|
|
25
|
-
{ name: '
|
|
22
|
+
{ name: 'English', value: 'en' },
|
|
23
|
+
{ name: 'Español (Spanish)', value: 'es' },
|
|
24
|
+
{ name: '中文 (Chinese)', value: 'zh' },
|
|
25
|
+
{ name: 'Deutsch (German)', value: 'de' },
|
|
26
|
+
{ name: 'Русский (Russian)', value: 'ru' },
|
|
27
|
+
{ name: 'Français (French)', value: 'fr' },
|
|
28
|
+
{ name: '日本語 (Japanese)', value: 'ja' },
|
|
29
|
+
{ name: '한국어 (Korean)', value: 'ko' },
|
|
30
|
+
{ name: 'Português (Portuguese)', value: 'pt' },
|
|
26
31
|
];
|
|
27
32
|
}
|
|
28
33
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"language-selection.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/language-selection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAc5F
|
|
1
|
+
{"version":3,"file":"language-selection.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/language-selection.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
* session-id: Unique session identifier
|
|
12
12
|
* pid: Process ID
|
|
13
13
|
* type: Session type (claude-code | watchdog | heartbeat | processor)
|
|
14
|
+
*
|
|
15
|
+
* Note: Will exit silently (exit 0) if not a SpecWeave project
|
|
14
16
|
*/
|
|
15
17
|
export {};
|
|
16
18
|
//# sourceMappingURL=register-session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-session.d.ts","sourceRoot":"","sources":["../../../src/cli/register-session.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"register-session.d.ts","sourceRoot":"","sources":["../../../src/cli/register-session.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
* session-id: Unique session identifier
|
|
12
12
|
* pid: Process ID
|
|
13
13
|
* type: Session type (claude-code | watchdog | heartbeat | processor)
|
|
14
|
+
*
|
|
15
|
+
* Note: Will exit silently (exit 0) if not a SpecWeave project
|
|
14
16
|
*/
|
|
15
17
|
import { SessionRegistry } from '../utils/session-registry.js';
|
|
16
18
|
import { consoleLogger } from '../utils/logger.js';
|
|
@@ -28,6 +30,11 @@ async function main() {
|
|
|
28
30
|
process.exit(1);
|
|
29
31
|
}
|
|
30
32
|
const registry = new SessionRegistry(process.cwd(), { logger: consoleLogger });
|
|
33
|
+
// If not a valid SpecWeave project, exit silently (don't create any directories)
|
|
34
|
+
if (!registry.isValidProject()) {
|
|
35
|
+
console.log(`Session registration skipped (not a SpecWeave project)`);
|
|
36
|
+
process.exit(0);
|
|
37
|
+
}
|
|
31
38
|
try {
|
|
32
39
|
const success = await registry.registerSession(sessionId, pid, { type });
|
|
33
40
|
if (success) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-session.js","sourceRoot":"","sources":["../../../src/cli/register-session.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"register-session.js","sourceRoot":"","sources":["../../../src/cli/register-session.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,aAAa,CAAgB,CAAC;IAE/D,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAE/E,iFAAiF;IACjF,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAEzE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,uBAAuB,SAAS,UAAU,GAAG,WAAW,IAAI,GAAG,CAAC,CAAC;YAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
|
|
@@ -17,10 +17,15 @@ export declare class ProjectRegistry {
|
|
|
17
17
|
private eventBus;
|
|
18
18
|
private logger;
|
|
19
19
|
private initialized;
|
|
20
|
+
private isValid;
|
|
20
21
|
constructor(projectRoot: string, options?: {
|
|
21
22
|
logger?: Logger;
|
|
22
23
|
eventBus?: ProjectEventBus;
|
|
23
24
|
});
|
|
25
|
+
/**
|
|
26
|
+
* Checks if this registry instance is valid (project has .specweave dir)
|
|
27
|
+
*/
|
|
28
|
+
isValidProject(): boolean;
|
|
24
29
|
/**
|
|
25
30
|
* Initialize the registry (lazy loading)
|
|
26
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-registry.d.ts","sourceRoot":"","sources":["../../../../src/core/project/project-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,MAAM,EAAiB,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EACL,OAAO,EAEP,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EAElB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAKzD,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAS;
|
|
1
|
+
{"version":3,"file":"project-registry.d.ts","sourceRoot":"","sources":["../../../../src/core/project/project-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,MAAM,EAAiB,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EACL,OAAO,EAEP,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EAElB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAKzD,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAU;gBAGvB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,eAAe,CAAC;KACvB;IAoBR;;OAEG;IACI,cAAc,IAAI,OAAO;IAIhC;;OAEG;YACW,iBAAiB;IAM/B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA2B3B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC3B;;OAEG;YACW,iBAAiB;IAkE/B;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IA4ClF;;OAEG;IACG,aAAa,CACjB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,EACzB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC;IAoDhB;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuClF;;OAEG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAKrD;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAKxC;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAMlD;;OAEG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlD;;OAEG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK9C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAS9B;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,uBAAuB;IA+CnE;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAsElE;;OAEG;IACG,WAAW,CACf,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE,CAAC,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC,EAA8B,GACjE,OAAO,CAAC,IAAI,CAAC;IAiBhB;;OAEG;IACH,WAAW,IAAI,eAAe;CAG/B"}
|
|
@@ -17,9 +17,25 @@ export class ProjectRegistry {
|
|
|
17
17
|
this.projects = new Map();
|
|
18
18
|
this.initialized = false;
|
|
19
19
|
this.projectRoot = projectRoot;
|
|
20
|
-
this.registryPath = path.join(projectRoot, '.specweave', 'state', REGISTRY_FILENAME);
|
|
21
20
|
this.logger = options.logger ?? consoleLogger;
|
|
22
21
|
this.eventBus = options.eventBus ?? new ProjectEventBus({ logger: this.logger });
|
|
22
|
+
// CRITICAL: Only operate on valid SpecWeave projects
|
|
23
|
+
const specweaveDir = path.join(projectRoot, '.specweave');
|
|
24
|
+
if (!fs.existsSync(specweaveDir)) {
|
|
25
|
+
// NOT a SpecWeave project - mark as invalid and DON'T create any directories
|
|
26
|
+
this.logger.warn(`Not a SpecWeave project: ${projectRoot} - project registry disabled`);
|
|
27
|
+
this.isValid = false;
|
|
28
|
+
this.registryPath = '';
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
this.isValid = true;
|
|
32
|
+
this.registryPath = path.join(specweaveDir, 'state', REGISTRY_FILENAME);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Checks if this registry instance is valid (project has .specweave dir)
|
|
36
|
+
*/
|
|
37
|
+
isValidProject() {
|
|
38
|
+
return this.isValid;
|
|
23
39
|
}
|
|
24
40
|
/**
|
|
25
41
|
* Initialize the registry (lazy loading)
|
|
@@ -34,6 +50,9 @@ export class ProjectRegistry {
|
|
|
34
50
|
* Load registry from disk
|
|
35
51
|
*/
|
|
36
52
|
async load() {
|
|
53
|
+
if (!this.isValid) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
37
56
|
try {
|
|
38
57
|
if (fs.existsSync(this.registryPath)) {
|
|
39
58
|
const content = fs.readFileSync(this.registryPath, 'utf-8');
|
|
@@ -59,8 +78,11 @@ export class ProjectRegistry {
|
|
|
59
78
|
* Save registry to disk
|
|
60
79
|
*/
|
|
61
80
|
async save() {
|
|
81
|
+
if (!this.isValid) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
62
84
|
try {
|
|
63
|
-
// Ensure directory exists
|
|
85
|
+
// Ensure directory exists (safe - .specweave validated in constructor)
|
|
64
86
|
const stateDir = path.dirname(this.registryPath);
|
|
65
87
|
if (!fs.existsSync(stateDir)) {
|
|
66
88
|
fs.mkdirSync(stateDir, { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-registry.js","sourceRoot":"","sources":["../../../../src/core/project/project-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"project-registry.js","sourceRoot":"","sources":["../../../../src/core/project/project-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,9 +18,14 @@ export declare class SessionRegistry {
|
|
|
18
18
|
private registryPath;
|
|
19
19
|
private lockPath;
|
|
20
20
|
private logger;
|
|
21
|
+
private isValid;
|
|
21
22
|
constructor(projectRoot: string, options?: {
|
|
22
23
|
logger?: Logger;
|
|
23
24
|
});
|
|
25
|
+
/**
|
|
26
|
+
* Checks if this registry instance is valid (project has .specweave dir)
|
|
27
|
+
*/
|
|
28
|
+
isValidProject(): boolean;
|
|
24
29
|
/**
|
|
25
30
|
* Acquires an exclusive lock on the registry file
|
|
26
31
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-registry.d.ts","sourceRoot":"","sources":["../../../src/utils/session-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EACL,WAAW,EAEX,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AAOpD,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;
|
|
1
|
+
{"version":3,"file":"session-registry.d.ts","sourceRoot":"","sources":["../../../src/utils/session-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EACL,WAAW,EAEX,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AAOpD,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAU;gBAEb,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO;IA0BlE;;OAEG;IACI,cAAc,IAAI,OAAO;IAIhC;;;;;;;OAOG;YACW,WAAW;IAgCzB;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;IA0CpB;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IA6BrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;;;;;;OAOG;IACG,eAAe,CACnB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,OAAO,CAAC;IAuCnB;;;;;OAKG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB1D;;;;;;OAMG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgC5E;;;;;OAKG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBxD;;;;;OAKG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAcrE;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAc9C;;;;;;OAMG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAwB9E;;;;;;;;OAQG;IACG,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAyC7E;;;;;;;;OAQG;IACG,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgDjE;;;;;;;;OAQG;YACW,cAAc;CAuB7B"}
|
|
@@ -22,14 +22,31 @@ const REGISTRY_VERSION = '1.0.0';
|
|
|
22
22
|
export class SessionRegistry {
|
|
23
23
|
constructor(projectRoot, options = {}) {
|
|
24
24
|
this.logger = options.logger ?? consoleLogger;
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
// CRITICAL: Only operate on valid SpecWeave projects
|
|
26
|
+
const specweaveDir = path.join(projectRoot, '.specweave');
|
|
27
|
+
if (!fs.existsSync(specweaveDir)) {
|
|
28
|
+
// NOT a SpecWeave project - mark as invalid and DON'T create any directories
|
|
29
|
+
this.logger.warn(`Not a SpecWeave project: ${projectRoot} - session registry disabled`);
|
|
30
|
+
this.isValid = false;
|
|
31
|
+
this.registryPath = '';
|
|
32
|
+
this.lockPath = '';
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
this.isValid = true;
|
|
36
|
+
const stateDir = path.join(specweaveDir, 'state');
|
|
37
|
+
// Ensure state directory exists (safe - we confirmed .specweave exists)
|
|
27
38
|
if (!fs.existsSync(stateDir)) {
|
|
28
39
|
fs.mkdirSync(stateDir, { recursive: true });
|
|
29
40
|
}
|
|
30
41
|
this.registryPath = path.join(stateDir, REGISTRY_FILENAME);
|
|
31
42
|
this.lockPath = path.join(stateDir, `${REGISTRY_FILENAME}.lock`);
|
|
32
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Checks if this registry instance is valid (project has .specweave dir)
|
|
46
|
+
*/
|
|
47
|
+
isValidProject() {
|
|
48
|
+
return this.isValid;
|
|
49
|
+
}
|
|
33
50
|
/**
|
|
34
51
|
* Acquires an exclusive lock on the registry file
|
|
35
52
|
*
|
|
@@ -39,6 +56,9 @@ export class SessionRegistry {
|
|
|
39
56
|
* @returns true if lock acquired, false if timeout
|
|
40
57
|
*/
|
|
41
58
|
async acquireLock() {
|
|
59
|
+
if (!this.isValid) {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
42
62
|
const startTime = Date.now();
|
|
43
63
|
while (Date.now() - startTime < LOCK_TIMEOUT_MS) {
|
|
44
64
|
try {
|
|
@@ -87,6 +107,9 @@ export class SessionRegistry {
|
|
|
87
107
|
* @returns The current registry state
|
|
88
108
|
*/
|
|
89
109
|
readRegistry() {
|
|
110
|
+
if (!this.isValid) {
|
|
111
|
+
return this.createEmptyRegistry();
|
|
112
|
+
}
|
|
90
113
|
// If registry doesn't exist, create empty one
|
|
91
114
|
if (!fs.existsSync(this.registryPath)) {
|
|
92
115
|
return this.createEmptyRegistry();
|
|
@@ -128,6 +151,9 @@ export class SessionRegistry {
|
|
|
128
151
|
* @param registry - The registry state to write
|
|
129
152
|
*/
|
|
130
153
|
writeRegistry(registry) {
|
|
154
|
+
if (!this.isValid) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
131
157
|
const tempPath = `${this.registryPath}.tmp.${process.pid}`;
|
|
132
158
|
try {
|
|
133
159
|
// Write to temp file with pretty formatting
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-registry.js","sourceRoot":"","sources":["../../../src/utils/session-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-registry.js","sourceRoot":"","sources":["../../../src/utils/session-registry.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specweave",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.70",
|
|
4
4
|
"description": "Spec-driven development framework for Claude Code. AI-native workflow with living documentation, intelligent agents, and multilingual support (9 languages). Enterprise-grade traceability with permanent specs and temporary increments.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -22,7 +22,7 @@ set +e
|
|
|
22
22
|
|
|
23
23
|
HOOK_ERRORS_VERSION="1.0.0"
|
|
24
24
|
|
|
25
|
-
# Find project root
|
|
25
|
+
# Find project root (CRITICAL: must NOT fallback to pwd!)
|
|
26
26
|
_find_hook_project_root() {
|
|
27
27
|
local dir="${1:-$PWD}"
|
|
28
28
|
while [[ "$dir" != "/" ]]; do
|
|
@@ -32,14 +32,28 @@ _find_hook_project_root() {
|
|
|
32
32
|
fi
|
|
33
33
|
dir=$(dirname "$dir")
|
|
34
34
|
done
|
|
35
|
-
|
|
35
|
+
# Return empty string - NOT pwd (prevents .specweave pollution)
|
|
36
|
+
return 1
|
|
36
37
|
}
|
|
37
38
|
|
|
38
39
|
_HOOK_PROJECT_ROOT=$(_find_hook_project_root)
|
|
40
|
+
|
|
41
|
+
# Exit early if not a SpecWeave project (prevents .specweave pollution)
|
|
42
|
+
if [[ -z "$_HOOK_PROJECT_ROOT" ]] || [[ ! -d "$_HOOK_PROJECT_ROOT/.specweave" ]]; then
|
|
43
|
+
# Define no-op functions so sourcing scripts don't fail
|
|
44
|
+
log_hook_warning() { :; }
|
|
45
|
+
log_hook_error() { :; }
|
|
46
|
+
log_hook_debug() { :; }
|
|
47
|
+
reset_hook_errors() { :; }
|
|
48
|
+
count_hook_errors() { echo "0"; }
|
|
49
|
+
output_hook_warnings() { :; }
|
|
50
|
+
return 0 2>/dev/null || exit 0
|
|
51
|
+
fi
|
|
52
|
+
|
|
39
53
|
_HOOK_LOGS_DIR="$_HOOK_PROJECT_ROOT/.specweave/logs"
|
|
40
54
|
_HOOK_STATE_DIR="$_HOOK_PROJECT_ROOT/.specweave/state"
|
|
41
55
|
|
|
42
|
-
# Ensure directories exist
|
|
56
|
+
# Ensure directories exist (safe - project root validated above)
|
|
43
57
|
mkdir -p "$_HOOK_LOGS_DIR" 2>/dev/null || true
|
|
44
58
|
mkdir -p "$_HOOK_STATE_DIR" 2>/dev/null || true
|
|
45
59
|
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
set +e
|
|
13
13
|
|
|
14
14
|
# ============================================================================
|
|
15
|
-
# PROJECT ROOT DETECTION
|
|
15
|
+
# PROJECT ROOT DETECTION (CRITICAL - must NOT fallback to pwd!)
|
|
16
16
|
# ============================================================================
|
|
17
17
|
if [[ -n "$SPECWEAVE_PROJECT_ROOT" ]] && [[ -d "$SPECWEAVE_PROJECT_ROOT/.specweave" ]]; then
|
|
18
18
|
PROJECT_ROOT="$SPECWEAVE_PROJECT_ROOT"
|
|
@@ -21,17 +21,16 @@ else
|
|
|
21
21
|
while [[ "$PROJECT_ROOT" != "/" ]] && [[ ! -d "$PROJECT_ROOT/.specweave" ]]; do
|
|
22
22
|
PROJECT_ROOT=$(dirname "$PROJECT_ROOT")
|
|
23
23
|
done
|
|
24
|
-
[[ ! -d "$PROJECT_ROOT/.specweave" ]] && PROJECT_ROOT="$PWD"
|
|
25
24
|
fi
|
|
26
25
|
|
|
26
|
+
# No .specweave? Exit BEFORE any mkdir (prevents .specweave pollution)
|
|
27
|
+
[[ ! -d "$PROJECT_ROOT/.specweave" ]] && exit 0
|
|
28
|
+
|
|
27
29
|
STATE_DIR="$PROJECT_ROOT/.specweave/state"
|
|
28
30
|
ACTIVE_FILE="$STATE_DIR/active-increment.json"
|
|
29
31
|
INCREMENTS_DIR="$PROJECT_ROOT/.specweave/increments"
|
|
30
32
|
DEBUG_LOG="$PROJECT_ROOT/.specweave/logs/hooks-debug.log"
|
|
31
33
|
|
|
32
|
-
# No .specweave? Exit
|
|
33
|
-
[[ ! -d "$PROJECT_ROOT/.specweave" ]] && exit 0
|
|
34
|
-
|
|
35
34
|
mkdir -p "$STATE_DIR" 2>/dev/null || true
|
|
36
35
|
|
|
37
36
|
# ============================================================================
|
|
@@ -19,6 +19,7 @@ set +e
|
|
|
19
19
|
|
|
20
20
|
# ============================================================================
|
|
21
21
|
# PROJECT ROOT (FAST - cached in env if available)
|
|
22
|
+
# CRITICAL: Must NOT fallback to pwd (prevents .specweave pollution)
|
|
22
23
|
# ============================================================================
|
|
23
24
|
if [[ -n "$SPECWEAVE_PROJECT_ROOT" ]] && [[ -d "$SPECWEAVE_PROJECT_ROOT/.specweave" ]]; then
|
|
24
25
|
PROJECT_ROOT="$SPECWEAVE_PROJECT_ROOT"
|
|
@@ -27,9 +28,11 @@ else
|
|
|
27
28
|
while [[ "$PROJECT_ROOT" != "/" ]] && [[ ! -d "$PROJECT_ROOT/.specweave" ]]; do
|
|
28
29
|
PROJECT_ROOT=$(dirname "$PROJECT_ROOT")
|
|
29
30
|
done
|
|
30
|
-
[[ ! -d "$PROJECT_ROOT/.specweave" ]] && PROJECT_ROOT="$PWD"
|
|
31
31
|
fi
|
|
32
32
|
|
|
33
|
+
# No .specweave? Exit immediately BEFORE any variable init (prevents pollution)
|
|
34
|
+
[[ ! -d "$PROJECT_ROOT/.specweave" ]] && exit 0
|
|
35
|
+
|
|
33
36
|
# ============================================================================
|
|
34
37
|
# ULTRA-FAST EXITS
|
|
35
38
|
# ============================================================================
|
|
@@ -38,9 +41,6 @@ CACHE_FILE="$STATE_DIR/status-line.json"
|
|
|
38
41
|
INCREMENTS_DIR="$PROJECT_ROOT/.specweave/increments"
|
|
39
42
|
LOCK_FILE="$STATE_DIR/.status-update.lock"
|
|
40
43
|
|
|
41
|
-
# No .specweave? Exit immediately
|
|
42
|
-
[[ ! -d "$PROJECT_ROOT/.specweave" ]] && exit 0
|
|
43
|
-
|
|
44
44
|
# Recursion guard
|
|
45
45
|
[[ -f "$STATE_DIR/.hook-recursion-guard" ]] && exit 0
|
|
46
46
|
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
|
|
19
19
|
set +e # EMERGENCY FIX: Changed from set -euo pipefail to prevent Claude Code crashes
|
|
20
20
|
|
|
21
|
-
# Find project root
|
|
21
|
+
# Find project root (CRITICAL: must NOT fallback to pwd!)
|
|
22
22
|
find_project_root() {
|
|
23
23
|
local dir="$PWD"
|
|
24
24
|
while [[ "$dir" != "/" ]]; do
|
|
@@ -28,10 +28,18 @@ find_project_root() {
|
|
|
28
28
|
fi
|
|
29
29
|
dir=$(dirname "$dir")
|
|
30
30
|
done
|
|
31
|
-
|
|
31
|
+
# Return empty - NOT pwd (prevents .specweave pollution)
|
|
32
|
+
return 1
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
PROJECT_ROOT=$(find_project_root)
|
|
36
|
+
|
|
37
|
+
# Exit early if not a SpecWeave project (prevents .specweave pollution)
|
|
38
|
+
if [[ -z "$PROJECT_ROOT" ]] || [[ ! -d "$PROJECT_ROOT/.specweave" ]]; then
|
|
39
|
+
echo "Not a SpecWeave project - skipping validation"
|
|
40
|
+
exit 0
|
|
41
|
+
fi
|
|
42
|
+
|
|
35
43
|
INCREMENTS_DIR="$PROJECT_ROOT/.specweave/increments"
|
|
36
44
|
|
|
37
45
|
# Valid IncrementStatus enum values (from src/core/types/increment-metadata.ts)
|
|
@@ -22,7 +22,7 @@ HOOK_TIMEOUT="${HOOK_TIMEOUT:-5}"
|
|
|
22
22
|
WRAPPER_VERSION="1.0.43"
|
|
23
23
|
|
|
24
24
|
# ============================================================================
|
|
25
|
-
# PROJECT ROOT DETECTION (for logging)
|
|
25
|
+
# PROJECT ROOT DETECTION (for logging) - CRITICAL: must NOT fallback to pwd!
|
|
26
26
|
# ============================================================================
|
|
27
27
|
|
|
28
28
|
find_project_root() {
|
|
@@ -34,10 +34,19 @@ find_project_root() {
|
|
|
34
34
|
fi
|
|
35
35
|
dir=$(dirname "$dir")
|
|
36
36
|
done
|
|
37
|
-
|
|
37
|
+
# Return empty - NOT pwd (prevents .specweave pollution)
|
|
38
|
+
return 1
|
|
38
39
|
}
|
|
39
40
|
|
|
40
41
|
PROJECT_ROOT=$(find_project_root)
|
|
42
|
+
|
|
43
|
+
# Exit early if not a SpecWeave project (prevents .specweave pollution)
|
|
44
|
+
if [[ -z "$PROJECT_ROOT" ]] || [[ ! -d "$PROJECT_ROOT/.specweave" ]]; then
|
|
45
|
+
# Not a SpecWeave project - output success JSON and exit
|
|
46
|
+
echo '{"continue": true}'
|
|
47
|
+
exit 0
|
|
48
|
+
fi
|
|
49
|
+
|
|
41
50
|
LOGS_DIR="$PROJECT_ROOT/.specweave/logs"
|
|
42
51
|
WARNING_LOG="$LOGS_DIR/hook-warnings.log"
|
|
43
52
|
mkdir -p "$LOGS_DIR" 2>/dev/null || true
|
|
@@ -31,7 +31,7 @@ HOOK_NAME="task-ac-sync"
|
|
|
31
31
|
HOOK_VERSION="1.0.43"
|
|
32
32
|
|
|
33
33
|
# ============================================================================
|
|
34
|
-
# PROJECT ROOT DETECTION
|
|
34
|
+
# PROJECT ROOT DETECTION (CRITICAL: must NOT fallback to pwd!)
|
|
35
35
|
# ============================================================================
|
|
36
36
|
|
|
37
37
|
find_project_root() {
|
|
@@ -43,10 +43,12 @@ find_project_root() {
|
|
|
43
43
|
fi
|
|
44
44
|
dir=$(dirname "$dir")
|
|
45
45
|
done
|
|
46
|
-
|
|
46
|
+
# Return empty - NOT pwd (prevents .specweave pollution)
|
|
47
|
+
return 1
|
|
47
48
|
}
|
|
48
49
|
|
|
49
50
|
PROJECT_ROOT=$(find_project_root)
|
|
51
|
+
[[ -z "$PROJECT_ROOT" ]] && exit 0
|
|
50
52
|
[[ ! -d "$PROJECT_ROOT/.specweave" ]] && exit 0
|
|
51
53
|
|
|
52
54
|
# ============================================================================
|
|
@@ -6,10 +6,30 @@
|
|
|
6
6
|
# Purpose: Clean up session registry and child processes
|
|
7
7
|
#
|
|
8
8
|
# v0.35.3 - Fixed: use set +e for hook safety
|
|
9
|
+
# v0.35.x - Fixed: Don't create .specweave in non-project directories
|
|
9
10
|
|
|
10
11
|
set +e # CRITICAL: Never use set -e in hooks (causes cascading failures)
|
|
11
12
|
|
|
12
|
-
|
|
13
|
+
# Find project root by searching upward for .specweave/ directory
|
|
14
|
+
find_specweave_root() {
|
|
15
|
+
local dir="$1"
|
|
16
|
+
while [[ "$dir" != "/" ]]; do
|
|
17
|
+
if [[ -d "$dir/.specweave" ]]; then
|
|
18
|
+
echo "$dir"
|
|
19
|
+
return 0
|
|
20
|
+
fi
|
|
21
|
+
dir="$(dirname "$dir")"
|
|
22
|
+
done
|
|
23
|
+
return 1 # NOT FOUND - do NOT fallback to pwd
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
PROJECT_ROOT="$(find_specweave_root "$PWD")"
|
|
27
|
+
if [[ -z "$PROJECT_ROOT" ]]; then
|
|
28
|
+
# NOT a SpecWeave project - exit silently
|
|
29
|
+
echo '{"continue": true}'
|
|
30
|
+
exit 0
|
|
31
|
+
fi
|
|
32
|
+
|
|
13
33
|
LOG_DIR="${PROJECT_ROOT}/.specweave/logs/sessions"
|
|
14
34
|
|
|
15
35
|
# Find session by current PID
|
|
@@ -6,14 +6,34 @@
|
|
|
6
6
|
# Purpose: Track session for zombie prevention
|
|
7
7
|
#
|
|
8
8
|
# v0.35.3 - Fixed: use set +e for hook safety
|
|
9
|
+
# v0.35.x - Fixed: Don't create .specweave in non-project directories
|
|
9
10
|
|
|
10
11
|
set +e # CRITICAL: Never use set -e in hooks (causes cascading failures)
|
|
11
12
|
|
|
12
|
-
|
|
13
|
+
# Find project root by searching upward for .specweave/ directory
|
|
14
|
+
find_specweave_root() {
|
|
15
|
+
local dir="$1"
|
|
16
|
+
while [[ "$dir" != "/" ]]; do
|
|
17
|
+
if [[ -d "$dir/.specweave" ]]; then
|
|
18
|
+
echo "$dir"
|
|
19
|
+
return 0
|
|
20
|
+
fi
|
|
21
|
+
dir="$(dirname "$dir")"
|
|
22
|
+
done
|
|
23
|
+
return 1 # NOT FOUND - do NOT fallback to pwd
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
PROJECT_ROOT="$(find_specweave_root "$PWD")"
|
|
27
|
+
if [[ -z "$PROJECT_ROOT" ]]; then
|
|
28
|
+
# NOT a SpecWeave project - exit silently without creating any files
|
|
29
|
+
echo '{"continue": true}'
|
|
30
|
+
exit 0
|
|
31
|
+
fi
|
|
32
|
+
|
|
13
33
|
SESSION_ID="session-$$-$(date +%s)"
|
|
14
34
|
LOG_DIR="${PROJECT_ROOT}/.specweave/logs/sessions"
|
|
15
35
|
|
|
16
|
-
# Ensure log directory exists
|
|
36
|
+
# Ensure log directory exists (now safe - PROJECT_ROOT is validated)
|
|
17
37
|
mkdir -p "$LOG_DIR"
|
|
18
38
|
|
|
19
39
|
# Log file for this session
|
|
@@ -13,16 +13,40 @@
|
|
|
13
13
|
#
|
|
14
14
|
# Background Usage:
|
|
15
15
|
# nohup bash heartbeat.sh <session-id> > .specweave/logs/heartbeat-<session-id>.log 2>&1 &
|
|
16
|
+
#
|
|
17
|
+
# v0.35.x - Fixed: Don't create .specweave in non-project directories
|
|
16
18
|
|
|
17
19
|
set -euo pipefail
|
|
18
20
|
|
|
21
|
+
# ============================================================================
|
|
22
|
+
# Project Root Detection (MUST BE FIRST)
|
|
23
|
+
# ============================================================================
|
|
24
|
+
|
|
25
|
+
# Find project root by searching upward for .specweave/ directory
|
|
26
|
+
find_specweave_root() {
|
|
27
|
+
local dir="$1"
|
|
28
|
+
while [[ "$dir" != "/" ]]; do
|
|
29
|
+
if [[ -d "$dir/.specweave" ]]; then
|
|
30
|
+
echo "$dir"
|
|
31
|
+
return 0
|
|
32
|
+
fi
|
|
33
|
+
dir="$(dirname "$dir")"
|
|
34
|
+
done
|
|
35
|
+
return 1 # NOT FOUND - do NOT fallback to pwd
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
PROJECT_ROOT="$(find_specweave_root "$PWD")"
|
|
39
|
+
if [[ -z "$PROJECT_ROOT" ]]; then
|
|
40
|
+
# NOT a SpecWeave project - exit silently
|
|
41
|
+
exit 0
|
|
42
|
+
fi
|
|
43
|
+
|
|
19
44
|
# ============================================================================
|
|
20
45
|
# Configuration
|
|
21
46
|
# ============================================================================
|
|
22
47
|
|
|
23
48
|
SESSION_ID="${1:-}"
|
|
24
49
|
INTERVAL=5 # Heartbeat interval in seconds
|
|
25
|
-
PROJECT_ROOT="${PWD}"
|
|
26
50
|
REGISTRY_FILE="${PROJECT_ROOT}/.specweave/state/.session-registry.json"
|
|
27
51
|
LOG_FILE="${PROJECT_ROOT}/.specweave/logs/heartbeat-${SESSION_ID}.log"
|
|
28
52
|
|
|
@@ -36,7 +60,7 @@ if [[ -z "$SESSION_ID" ]]; then
|
|
|
36
60
|
exit 1
|
|
37
61
|
fi
|
|
38
62
|
|
|
39
|
-
# Ensure logs directory exists
|
|
63
|
+
# Ensure logs directory exists (safe - PROJECT_ROOT validated)
|
|
40
64
|
mkdir -p "$(dirname "$LOG_FILE")"
|
|
41
65
|
|
|
42
66
|
# ============================================================================
|
|
@@ -21,7 +21,7 @@ if [[ "${SPECWEAVE_DISABLE_HOOKS:-0}" == "1" ]]; then
|
|
|
21
21
|
fi
|
|
22
22
|
|
|
23
23
|
# ============================================================================
|
|
24
|
-
# PROJECT ROOT DETECTION
|
|
24
|
+
# PROJECT ROOT DETECTION (CRITICAL - must NOT fallback to pwd!)
|
|
25
25
|
# ============================================================================
|
|
26
26
|
|
|
27
27
|
# Find project root by searching upward for .specweave/ directory
|
|
@@ -34,16 +34,15 @@ find_project_root() {
|
|
|
34
34
|
fi
|
|
35
35
|
dir="$(dirname "$dir")"
|
|
36
36
|
done
|
|
37
|
-
#
|
|
38
|
-
if [ -d "$(pwd)/.specweave" ]; then
|
|
39
|
-
pwd
|
|
40
|
-
else
|
|
41
|
-
echo "$(pwd)"
|
|
42
|
-
fi
|
|
37
|
+
return 1 # NOT FOUND - do NOT fallback to pwd (prevents .specweave pollution)
|
|
43
38
|
}
|
|
44
39
|
|
|
45
|
-
PROJECT_ROOT="$(find_project_root "$(
|
|
46
|
-
|
|
40
|
+
PROJECT_ROOT="$(find_project_root "$(pwd)")"
|
|
41
|
+
if [[ -z "$PROJECT_ROOT" ]]; then
|
|
42
|
+
# NOT a SpecWeave project - exit silently without creating any files
|
|
43
|
+
exit 0
|
|
44
|
+
fi
|
|
45
|
+
cd "$PROJECT_ROOT" 2>/dev/null || exit 0
|
|
47
46
|
|
|
48
47
|
# ============================================================================
|
|
49
48
|
# CONFIGURATION
|
|
@@ -26,15 +26,39 @@ if [[ "${SPECWEAVE_DISABLE_HOOKS:-0}" == "1" ]]; then
|
|
|
26
26
|
exit 0
|
|
27
27
|
fi
|
|
28
28
|
|
|
29
|
+
# ============================================================================
|
|
30
|
+
# PROJECT ROOT DETECTION (MUST BE FIRST - before any mkdir!)
|
|
31
|
+
# ============================================================================
|
|
32
|
+
|
|
33
|
+
# Find project root by searching upward for .specweave/ directory
|
|
34
|
+
find_project_root() {
|
|
35
|
+
local dir="$1"
|
|
36
|
+
while [ "$dir" != "/" ]; do
|
|
37
|
+
if [ -d "$dir/.specweave" ]; then
|
|
38
|
+
echo "$dir"
|
|
39
|
+
return 0
|
|
40
|
+
fi
|
|
41
|
+
dir="$(dirname "$dir")"
|
|
42
|
+
done
|
|
43
|
+
return 1 # NOT FOUND - return error, do NOT fallback to pwd
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
PROJECT_ROOT="$(find_project_root "$(pwd)")"
|
|
47
|
+
if [[ -z "$PROJECT_ROOT" ]]; then
|
|
48
|
+
# NOT a SpecWeave project - exit silently (no .specweave pollution!)
|
|
49
|
+
exit 0
|
|
50
|
+
fi
|
|
51
|
+
cd "$PROJECT_ROOT" 2>/dev/null || exit 0
|
|
52
|
+
|
|
29
53
|
# ============================================================================
|
|
30
54
|
# CIRCUIT BREAKER & FILE LOCKING
|
|
31
55
|
# ============================================================================
|
|
32
56
|
|
|
33
57
|
# CIRCUIT BREAKER: Auto-disable after consecutive failures
|
|
34
|
-
CIRCUIT_BREAKER_FILE="
|
|
58
|
+
CIRCUIT_BREAKER_FILE="$PROJECT_ROOT/.specweave/state/.hook-circuit-breaker-github"
|
|
35
59
|
CIRCUIT_BREAKER_THRESHOLD=3
|
|
36
60
|
|
|
37
|
-
mkdir -p "
|
|
61
|
+
mkdir -p "$PROJECT_ROOT/.specweave/state" 2>/dev/null || true
|
|
38
62
|
|
|
39
63
|
if [[ -f "$CIRCUIT_BREAKER_FILE" ]]; then
|
|
40
64
|
FAILURE_COUNT=$(cat "$CIRCUIT_BREAKER_FILE" 2>/dev/null || echo 0)
|
|
@@ -45,7 +69,7 @@ if [[ -f "$CIRCUIT_BREAKER_FILE" ]]; then
|
|
|
45
69
|
fi
|
|
46
70
|
|
|
47
71
|
# FILE LOCK: Only allow 1 GitHub sync hook at a time
|
|
48
|
-
LOCK_FILE="
|
|
72
|
+
LOCK_FILE="$PROJECT_ROOT/.specweave/state/.hook-github-sync.lock"
|
|
49
73
|
LOCK_TIMEOUT=15 # seconds (GitHub sync can take longer)
|
|
50
74
|
|
|
51
75
|
LOCK_ACQUIRED=false
|
|
@@ -73,30 +97,7 @@ if [[ "$LOCK_ACQUIRED" == "false" ]]; then
|
|
|
73
97
|
exit 0
|
|
74
98
|
fi
|
|
75
99
|
|
|
76
|
-
#
|
|
77
|
-
# PROJECT ROOT DETECTION
|
|
78
|
-
# ============================================================================
|
|
79
|
-
|
|
80
|
-
# Find project root by searching upward for .specweave/ directory
|
|
81
|
-
find_project_root() {
|
|
82
|
-
local dir="$1"
|
|
83
|
-
while [ "$dir" != "/" ]; do
|
|
84
|
-
if [ -d "$dir/.specweave" ]; then
|
|
85
|
-
echo "$dir"
|
|
86
|
-
return 0
|
|
87
|
-
fi
|
|
88
|
-
dir="$(dirname "$dir")"
|
|
89
|
-
done
|
|
90
|
-
# Fallback: try current directory
|
|
91
|
-
if [ -d "$(pwd)/.specweave" ]; then
|
|
92
|
-
pwd
|
|
93
|
-
else
|
|
94
|
-
echo "$(pwd)"
|
|
95
|
-
fi
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
PROJECT_ROOT="$(find_project_root "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)")"
|
|
99
|
-
cd "$PROJECT_ROOT" 2>/dev/null || true
|
|
100
|
+
# NOTE: PROJECT_ROOT already detected at top of script (before any mkdir)
|
|
100
101
|
|
|
101
102
|
# ============================================================================
|
|
102
103
|
# CONFIGURATION
|
|
@@ -21,7 +21,7 @@ if [[ "${SPECWEAVE_DISABLE_HOOKS:-0}" == "1" ]]; then
|
|
|
21
21
|
fi
|
|
22
22
|
|
|
23
23
|
# ============================================================================
|
|
24
|
-
# PROJECT ROOT DETECTION
|
|
24
|
+
# PROJECT ROOT DETECTION (CRITICAL - must NOT fallback to pwd!)
|
|
25
25
|
# ============================================================================
|
|
26
26
|
|
|
27
27
|
# Find project root by searching upward for .specweave/ directory
|
|
@@ -34,16 +34,15 @@ find_project_root() {
|
|
|
34
34
|
fi
|
|
35
35
|
dir="$(dirname "$dir")"
|
|
36
36
|
done
|
|
37
|
-
#
|
|
38
|
-
if [ -d "$(pwd)/.specweave" ]; then
|
|
39
|
-
pwd
|
|
40
|
-
else
|
|
41
|
-
echo "$(pwd)"
|
|
42
|
-
fi
|
|
37
|
+
return 1 # NOT FOUND - do NOT fallback to pwd (prevents .specweave pollution)
|
|
43
38
|
}
|
|
44
39
|
|
|
45
|
-
PROJECT_ROOT="$(find_project_root "$(
|
|
46
|
-
|
|
40
|
+
PROJECT_ROOT="$(find_project_root "$(pwd)")"
|
|
41
|
+
if [[ -z "$PROJECT_ROOT" ]]; then
|
|
42
|
+
# NOT a SpecWeave project - exit silently without creating any files
|
|
43
|
+
exit 0
|
|
44
|
+
fi
|
|
45
|
+
cd "$PROJECT_ROOT" 2>/dev/null || exit 0
|
|
47
46
|
|
|
48
47
|
# ============================================================================
|
|
49
48
|
# CONFIGURATION
|