@context-forge/core 0.6.16 → 0.6.19
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/guides/GuideManager.d.ts +3 -1
- package/dist/guides/GuideManager.d.ts.map +1 -1
- package/dist/guides/GuideManager.js +34 -1
- package/dist/guides/GuideManager.js.map +1 -1
- package/dist/guides/types.d.ts +6 -0
- package/dist/guides/types.d.ts.map +1 -1
- package/dist/guides/types.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/node.d.ts +1 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +2 -0
- package/dist/node.js.map +1 -1
- package/dist/project-autoset.d.ts +11 -0
- package/dist/project-autoset.d.ts.map +1 -0
- package/dist/project-autoset.js +58 -0
- package/dist/project-autoset.js.map +1 -0
- package/dist/project-defaults.d.ts +28 -0
- package/dist/project-defaults.d.ts.map +1 -0
- package/dist/project-defaults.js +45 -0
- package/dist/project-defaults.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ConfigManager } from '../config/ConfigManager.js';
|
|
2
|
-
import type { GuideInfo, GuideMethod, InstallResult, UpdateResult, SyncResult } from './types.js';
|
|
2
|
+
import type { GuideInfo, GuideMethod, InstallResult, UpdateResult, UninstallResult, SyncResult } from './types.js';
|
|
3
3
|
export declare class GuideManager {
|
|
4
4
|
private readonly projectPath;
|
|
5
5
|
private readonly configManager?;
|
|
@@ -12,6 +12,8 @@ export declare class GuideManager {
|
|
|
12
12
|
install(strategyOverride?: GuideMethod, sourceOverride?: string): Promise<InstallResult>;
|
|
13
13
|
/** Update an existing guide installation */
|
|
14
14
|
update(): Promise<UpdateResult>;
|
|
15
|
+
/** Uninstall the guide from the project */
|
|
16
|
+
uninstall(): Promise<UninstallResult>;
|
|
15
17
|
/** Sync guide submodule checkout in multiple worktrees */
|
|
16
18
|
syncWorktrees(worktreePaths: string[]): Promise<SyncResult[]>;
|
|
17
19
|
/** Resolve source URL from config or default */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GuideManager.d.ts","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAmB,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"GuideManager.d.ts","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAmB,UAAU,EAAE,MAAM,YAAY,CAAC;AAOpI,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAS;gBAE5B,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,EAAE,MAAM;IAOtF,4CAA4C;IACtC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC;IAKlC,yCAAyC;IACnC,OAAO,CAAC,gBAAgB,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAsB9F,4CAA4C;IACtC,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAuBrC,2CAA2C;IACrC,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAuC3C,0DAA0D;IACpD,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAwBnE,gDAAgD;YAClC,aAAa;IAc3B,8CAA8C;YAChC,eAAe;IAc7B,2DAA2D;IAC3D,OAAO,CAAC,qBAAqB;IAa7B,2CAA2C;IAC3C,OAAO,CAAC,WAAW;CAUpB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Orchestration layer for guide lifecycle management
|
|
2
2
|
import { join } from 'path';
|
|
3
|
-
import { mkdirSync } from 'fs';
|
|
3
|
+
import { mkdirSync, rmSync, existsSync } from 'fs';
|
|
4
4
|
import { DEFAULT_SOURCE_GIT, GUIDE_RELATIVE_PATH } from './types.js';
|
|
5
5
|
import { GuideDetector } from './GuideDetector.js';
|
|
6
6
|
import { SubmoduleStrategy } from './strategies/SubmoduleStrategy.js';
|
|
@@ -55,6 +55,39 @@ export class GuideManager {
|
|
|
55
55
|
}
|
|
56
56
|
return result;
|
|
57
57
|
}
|
|
58
|
+
/** Uninstall the guide from the project */
|
|
59
|
+
async uninstall() {
|
|
60
|
+
const source = await this.resolveSource();
|
|
61
|
+
const info = await this.detector.detect(this.projectPath, source);
|
|
62
|
+
if (!info.installed || !info.method) {
|
|
63
|
+
throw new Error('Guide is not installed. Nothing to uninstall.');
|
|
64
|
+
}
|
|
65
|
+
const targetDir = join(this.projectPath, GUIDE_RELATIVE_PATH);
|
|
66
|
+
const method = info.method;
|
|
67
|
+
const version = info.version;
|
|
68
|
+
if (method === 'submodule') {
|
|
69
|
+
const { gitExec } = await import('./gitExec.js');
|
|
70
|
+
// Deinit the submodule (removes working tree contents)
|
|
71
|
+
await gitExec(['submodule', 'deinit', '-f', GUIDE_RELATIVE_PATH], this.projectPath);
|
|
72
|
+
// Remove from .git/modules
|
|
73
|
+
const modulesPath = join(this.projectPath, '.git', 'modules', GUIDE_RELATIVE_PATH);
|
|
74
|
+
if (existsSync(modulesPath)) {
|
|
75
|
+
rmSync(modulesPath, { recursive: true, force: true });
|
|
76
|
+
}
|
|
77
|
+
// Remove the submodule entry from index and .gitmodules
|
|
78
|
+
await gitExec(['rm', '-f', GUIDE_RELATIVE_PATH], this.projectPath);
|
|
79
|
+
// Commit the removal
|
|
80
|
+
const versionSuffix = version ? ` ${version}` : '';
|
|
81
|
+
await gitExec(['commit', '-m', `docs: uninstall ai-project-guide${versionSuffix}`], this.projectPath);
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
// clone or manual — just remove the directory
|
|
85
|
+
if (existsSync(targetDir)) {
|
|
86
|
+
rmSync(targetDir, { recursive: true, force: true });
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return { success: true, method, version };
|
|
90
|
+
}
|
|
58
91
|
/** Sync guide submodule checkout in multiple worktrees */
|
|
59
92
|
async syncWorktrees(worktreePaths) {
|
|
60
93
|
const source = await this.resolveSource();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GuideManager.js","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"GuideManager.js","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"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"}
|
package/dist/guides/types.d.ts
CHANGED
|
@@ -25,6 +25,12 @@ export interface UpdateResult {
|
|
|
25
25
|
newVersion: string | null;
|
|
26
26
|
method: GuideMethod;
|
|
27
27
|
}
|
|
28
|
+
/** Result of uninstalling a guide */
|
|
29
|
+
export interface UninstallResult {
|
|
30
|
+
success: boolean;
|
|
31
|
+
method: GuideMethod;
|
|
32
|
+
version: string | null;
|
|
33
|
+
}
|
|
28
34
|
/** Result of syncing a worktree's guide submodule checkout */
|
|
29
35
|
export interface SyncResult {
|
|
30
36
|
worktreePath: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/guides/types.ts"],"names":[],"mappings":"AAEA,wDAAwD;AACxD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE3D,0CAA0C;AAC1C,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,qCAAqC;AACrC,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,+BAA+B;AAC/B,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,8DAA8D;AAC9D,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,gEAAgE;AAChE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACxF,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACtE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;CACjF;AAGD,eAAO,MAAM,kBAAkB,qDAAqD,CAAC;AACrF,eAAO,MAAM,kBAAkB,2DAA2D,CAAC;AAC3F,eAAO,MAAM,mBAAmB,uCAAuC,CAAC;AACxE,eAAO,MAAM,mBAAmB,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/guides/types.ts"],"names":[],"mappings":"AAEA,wDAAwD;AACxD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE3D,0CAA0C;AAC1C,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,qCAAqC;AACrC,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,+BAA+B;AAC/B,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,qCAAqC;AACrC,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,8DAA8D;AAC9D,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,gEAAgE;AAChE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACxF,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACtE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;CACjF;AAGD,eAAO,MAAM,kBAAkB,qDAAqD,CAAC;AACrF,eAAO,MAAM,kBAAkB,2DAA2D,CAAC;AAC3F,eAAO,MAAM,mBAAmB,uCAAuC,CAAC;AACxE,eAAO,MAAM,mBAAmB,iCAAiC,CAAC"}
|
package/dist/guides/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/guides/types.ts"],"names":[],"mappings":"AAAA,gDAAgD;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/guides/types.ts"],"names":[],"mappings":"AAAA,gDAAgD;AA6DhD,YAAY;AACZ,MAAM,CAAC,MAAM,kBAAkB,GAAG,kDAAkD,CAAC;AACrF,MAAM,CAAC,MAAM,kBAAkB,GAAG,wDAAwD,CAAC;AAC3F,MAAM,CAAC,MAAM,mBAAmB,GAAG,oCAAoC,CAAC;AACxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,8BAA8B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,8 +2,9 @@ export * from './types/index.js';
|
|
|
2
2
|
export * from './services/index.js';
|
|
3
3
|
export type { IProjectStore, IStorageService, StorageReadResult } from './storage/interfaces.js';
|
|
4
4
|
export * from './introspection/index.js';
|
|
5
|
-
export type { GuideInfo, GuideMethod, InstallResult, UpdateResult, SyncResult } from './guides/types.js';
|
|
5
|
+
export type { GuideInfo, GuideMethod, InstallResult, UninstallResult, UpdateResult, SyncResult } from './guides/types.js';
|
|
6
6
|
export * from './schema/projectSchema.js';
|
|
7
7
|
export { GitWorktreeDiscovery, parseWorktreeListOutput } from './git/index.js';
|
|
8
|
+
export { WORKTREE_SCOPED_FIELDS, PROJECT_TO_WORKTREE_FIELD, formatDateProject, buildProjectCreationDefaults, type ProjectCreationOptions, type AutoSetResult, } from './project-defaults.js';
|
|
8
9
|
export { applyWorktreeOverlay } from './utils/worktree-overlay.js';
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAGpC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjG,cAAc,0BAA0B,CAAC;AAGzC,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAGpC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjG,cAAc,0BAA0B,CAAC;AAGzC,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG1H,cAAc,2BAA2B,CAAC;AAG1C,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAI/E,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,iBAAiB,EACjB,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,aAAa,GACnB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,9 @@ export * from './introspection/index.js';
|
|
|
7
7
|
export * from './schema/projectSchema.js';
|
|
8
8
|
// Git utilities
|
|
9
9
|
export { GitWorktreeDiscovery, parseWorktreeListOutput } from './git/index.js';
|
|
10
|
+
// Project defaults — browser-safe constants and creation helpers
|
|
11
|
+
// NOTE: computeAutoSetFields is exported from node.ts (fs-dependent via resolveFileByIndex)
|
|
12
|
+
export { WORKTREE_SCOPED_FIELDS, PROJECT_TO_WORKTREE_FIELD, formatDateProject, buildProjectCreationDefaults, } from './project-defaults.js';
|
|
10
13
|
// Worktree overlay (browser-safe — pure object mapping, no fs/path)
|
|
11
14
|
export { applyWorktreeOverlay } from './utils/worktree-overlay.js';
|
|
12
15
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAKpC,yEAAyE;AACzE,cAAc,0BAA0B,CAAC;AAKzC,uDAAuD;AACvD,cAAc,2BAA2B,CAAC;AAE1C,gBAAgB;AAChB,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAE/E,oEAAoE;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAKpC,yEAAyE;AACzE,cAAc,0BAA0B,CAAC;AAKzC,uDAAuD;AACvD,cAAc,2BAA2B,CAAC;AAE1C,gBAAgB;AAChB,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAE/E,iEAAiE;AACjE,4FAA4F;AAC5F,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,iBAAiB,EACjB,4BAA4B,GAG7B,MAAM,uBAAuB,CAAC;AAE/B,oEAAoE;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
|
package/dist/node.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export { buildModel, scanDirectory, mergeProjectModels } from './introspection/P
|
|
|
17
17
|
export { FutureWorkCollector } from './introspection/FutureWorkCollector.js';
|
|
18
18
|
export { ConsistencyChecker } from './introspection/ConsistencyChecker.js';
|
|
19
19
|
export { updateCheckbox, updateFrontmatterField } from './introspection/writers/markdownWriter.js';
|
|
20
|
+
export { computeAutoSetFields } from './project-autoset.js';
|
|
20
21
|
export { GitWorktreeDiscovery } from './git/index.js';
|
|
21
22
|
export { WorktreeService } from './services/WorktreeService.js';
|
|
22
23
|
//# sourceMappingURL=node.d.ts.map
|
package/dist/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAGhG,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAG7G,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAGnG,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAGhG,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAG7G,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAGnG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAG5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC"}
|
package/dist/node.js
CHANGED
|
@@ -25,6 +25,8 @@ export { buildModel, scanDirectory, mergeProjectModels } from './introspection/P
|
|
|
25
25
|
export { FutureWorkCollector } from './introspection/FutureWorkCollector.js';
|
|
26
26
|
export { ConsistencyChecker } from './introspection/ConsistencyChecker.js';
|
|
27
27
|
export { updateCheckbox, updateFrontmatterField } from './introspection/writers/markdownWriter.js';
|
|
28
|
+
// Project defaults — fs-dependent auto-set rules (uses resolveFileByIndex)
|
|
29
|
+
export { computeAutoSetFields } from './project-autoset.js';
|
|
28
30
|
// Git utilities — spawns git subprocess (fs/process dependent)
|
|
29
31
|
export { GitWorktreeDiscovery } from './git/index.js';
|
|
30
32
|
// Worktree management — uses IProjectStore (Node.js-backed)
|
package/dist/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,oEAAoE;AACpE,uEAAuE;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEhG,0EAA0E;AAC1E,cAAc,oBAAoB,CAAC;AAEnC,8DAA8D;AAC9D,cAAc,mBAAmB,CAAC;AAElC,yDAAyD;AACzD,cAAc,mBAAmB,CAAC;AAElC,8DAA8D;AAC9D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAE7G,yEAAyE;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAEnG,+DAA+D;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,4DAA4D;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,oEAAoE;AACpE,uEAAuE;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEhG,0EAA0E;AAC1E,cAAc,oBAAoB,CAAC;AAEnC,8DAA8D;AAC9D,cAAc,mBAAmB,CAAC;AAElC,yDAAyD;AACzD,cAAc,mBAAmB,CAAC;AAElC,8DAA8D;AAC9D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAE7G,yEAAyE;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAEnG,2EAA2E;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,+DAA+D;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,4DAA4D;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AutoSetResult } from './project-defaults.js';
|
|
2
|
+
/**
|
|
3
|
+
* Given a field being set and its value, compute any additional fields
|
|
4
|
+
* that should be auto-set. Caller is responsible for applying the updates.
|
|
5
|
+
*
|
|
6
|
+
* @param field - The field name being set (project-level name, e.g. 'fileSlice')
|
|
7
|
+
* @param value - The value being set
|
|
8
|
+
* @param projectPath - Absolute path to project root (for file resolution)
|
|
9
|
+
*/
|
|
10
|
+
export declare function computeAutoSetFields(field: string, value: string, projectPath: string | undefined): AutoSetResult;
|
|
11
|
+
//# sourceMappingURL=project-autoset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-autoset.d.ts","sourceRoot":"","sources":["../src/project-autoset.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,aAAa,CA+Cf"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { resolveFileByIndex } from './schema/resolveFileByIndex.js';
|
|
2
|
+
/**
|
|
3
|
+
* Given a field being set and its value, compute any additional fields
|
|
4
|
+
* that should be auto-set. Caller is responsible for applying the updates.
|
|
5
|
+
*
|
|
6
|
+
* @param field - The field name being set (project-level name, e.g. 'fileSlice')
|
|
7
|
+
* @param value - The value being set
|
|
8
|
+
* @param projectPath - Absolute path to project root (for file resolution)
|
|
9
|
+
*/
|
|
10
|
+
export function computeAutoSetFields(field, value, projectPath) {
|
|
11
|
+
const derivedUpdates = {};
|
|
12
|
+
const descriptions = [];
|
|
13
|
+
// Rule 1: developmentPhase → instruction
|
|
14
|
+
if (field === 'developmentPhase') {
|
|
15
|
+
derivedUpdates.instruction = value;
|
|
16
|
+
descriptions.push(`instruction = ${value} (auto-set from developmentPhase)`);
|
|
17
|
+
}
|
|
18
|
+
// Rule 2: fileArch → fileSlicePlan
|
|
19
|
+
if (field === 'fileArch' && projectPath) {
|
|
20
|
+
const archIndex = /^(\d+)-/.exec(value);
|
|
21
|
+
if (archIndex) {
|
|
22
|
+
let resolved = null;
|
|
23
|
+
try {
|
|
24
|
+
resolved = resolveFileByIndex(projectPath, 'fileSlicePlan', archIndex[1]);
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
const derived = value.replace(/^(\d+)-arch\./, '$1-slices.');
|
|
28
|
+
if (derived !== value)
|
|
29
|
+
resolved = derived;
|
|
30
|
+
}
|
|
31
|
+
if (resolved !== null) {
|
|
32
|
+
derivedUpdates.fileSlicePlan = resolved;
|
|
33
|
+
descriptions.push(`fileSlicePlan = ${resolved} (auto-set from fileArch)`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// Rule 3: fileSlice → fileTasks
|
|
38
|
+
if (field === 'fileSlice' && projectPath) {
|
|
39
|
+
const sliceIndex = /^(\d+)-/.exec(value);
|
|
40
|
+
if (sliceIndex) {
|
|
41
|
+
let resolved = null;
|
|
42
|
+
try {
|
|
43
|
+
resolved = resolveFileByIndex(projectPath, 'fileTasks', sliceIndex[1]);
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
const derived = value.replace(/^(\d+)-slice\./, '$1-tasks.');
|
|
47
|
+
if (derived !== value)
|
|
48
|
+
resolved = derived;
|
|
49
|
+
}
|
|
50
|
+
if (resolved !== null) {
|
|
51
|
+
derivedUpdates.fileTasks = resolved;
|
|
52
|
+
descriptions.push(`fileTasks = ${resolved} (auto-set from fileSlice)`);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return { derivedUpdates, descriptions };
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=project-autoset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-autoset.js","sourceRoot":"","sources":["../src/project-autoset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAa,EACb,KAAa,EACb,WAA+B;IAE/B,MAAM,cAAc,GAA2B,EAAE,CAAC;IAClD,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,yCAAyC;IACzC,IAAI,KAAK,KAAK,kBAAkB,EAAE,CAAC;QACjC,cAAc,CAAC,WAAW,GAAG,KAAK,CAAC;QACnC,YAAY,CAAC,IAAI,CAAC,iBAAiB,KAAK,mCAAmC,CAAC,CAAC;IAC/E,CAAC;IAED,mCAAmC;IACnC,IAAI,KAAK,KAAK,UAAU,IAAI,WAAW,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,QAAQ,GAAkB,IAAI,CAAC;YACnC,IAAI,CAAC;gBACH,QAAQ,GAAG,kBAAkB,CAAC,WAAW,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;gBAC7D,IAAI,OAAO,KAAK,KAAK;oBAAE,QAAQ,GAAG,OAAO,CAAC;YAC5C,CAAC;YACD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,cAAc,CAAC,aAAa,GAAG,QAAQ,CAAC;gBACxC,YAAY,CAAC,IAAI,CAAC,mBAAmB,QAAQ,2BAA2B,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,IAAI,KAAK,KAAK,WAAW,IAAI,WAAW,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,QAAQ,GAAkB,IAAI,CAAC;YACnC,IAAI,CAAC;gBACH,QAAQ,GAAG,kBAAkB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YACzE,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;gBAC7D,IAAI,OAAO,KAAK,KAAK;oBAAE,QAAQ,GAAG,OAAO,CAAC;YAC5C,CAAC;YACD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,cAAc,CAAC,SAAS,GAAG,QAAQ,CAAC;gBACpC,YAAY,CAAC,IAAI,CAAC,eAAe,QAAQ,4BAA4B,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ProjectData } from './types/project.js';
|
|
2
|
+
/** Fields that are routed to WorktreeContext when a worktree is active. */
|
|
3
|
+
export declare const WORKTREE_SCOPED_FIELDS: Set<string>;
|
|
4
|
+
/** Map ProjectData field names to their WorktreeContext counterparts. */
|
|
5
|
+
export declare const PROJECT_TO_WORKTREE_FIELD: Record<string, string>;
|
|
6
|
+
/**
|
|
7
|
+
* Format a Date as a YYYYMMDD string.
|
|
8
|
+
* Defaults to the current date if none is provided.
|
|
9
|
+
*/
|
|
10
|
+
export declare function formatDateProject(date?: Date): string;
|
|
11
|
+
export interface ProjectCreationOptions {
|
|
12
|
+
name: string;
|
|
13
|
+
projectPath?: string;
|
|
14
|
+
developmentPhase?: string;
|
|
15
|
+
template?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Build sensible defaults for a new project.
|
|
19
|
+
* Callers may spread additional overrides on top of the returned object.
|
|
20
|
+
*/
|
|
21
|
+
export declare function buildProjectCreationDefaults(opts: ProjectCreationOptions): Partial<ProjectData>;
|
|
22
|
+
export interface AutoSetResult {
|
|
23
|
+
/** Additional fields to set alongside the original update. */
|
|
24
|
+
derivedUpdates: Record<string, string>;
|
|
25
|
+
/** Human-readable descriptions of what was derived (for CLI logging). */
|
|
26
|
+
descriptions: string[];
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=project-defaults.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-defaults.d.ts","sourceRoot":"","sources":["../src/project-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB,aAQjC,CAAC;AAEH,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQ5D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,CAGrD;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC,CAW/F;AAED,MAAM,WAAW,aAAa;IAC5B,8DAA8D;IAC9D,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,yEAAyE;IACzE,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/** Fields that are routed to WorktreeContext when a worktree is active. */
|
|
2
|
+
export const WORKTREE_SCOPED_FIELDS = new Set([
|
|
3
|
+
'developmentPhase',
|
|
4
|
+
'instruction',
|
|
5
|
+
'workType',
|
|
6
|
+
'fileArch',
|
|
7
|
+
'fileSlicePlan',
|
|
8
|
+
'fileSlice',
|
|
9
|
+
'fileTasks',
|
|
10
|
+
]);
|
|
11
|
+
/** Map ProjectData field names to their WorktreeContext counterparts. */
|
|
12
|
+
export const PROJECT_TO_WORKTREE_FIELD = {
|
|
13
|
+
fileSlice: 'activeSlice',
|
|
14
|
+
fileTasks: 'activeTaskFile',
|
|
15
|
+
fileArch: 'archDoc',
|
|
16
|
+
fileSlicePlan: 'slicePlan',
|
|
17
|
+
developmentPhase: 'developmentPhase',
|
|
18
|
+
instruction: 'instruction',
|
|
19
|
+
workType: 'workType',
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Format a Date as a YYYYMMDD string.
|
|
23
|
+
* Defaults to the current date if none is provided.
|
|
24
|
+
*/
|
|
25
|
+
export function formatDateProject(date) {
|
|
26
|
+
const d = date ?? new Date();
|
|
27
|
+
return `${d.getFullYear()}${String(d.getMonth() + 1).padStart(2, '0')}${String(d.getDate()).padStart(2, '0')}`;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Build sensible defaults for a new project.
|
|
31
|
+
* Callers may spread additional overrides on top of the returned object.
|
|
32
|
+
*/
|
|
33
|
+
export function buildProjectCreationDefaults(opts) {
|
|
34
|
+
const phase = opts.developmentPhase || 'Phase 1: Concept';
|
|
35
|
+
return {
|
|
36
|
+
name: opts.name,
|
|
37
|
+
projectPath: opts.projectPath,
|
|
38
|
+
dateProject: formatDateProject(),
|
|
39
|
+
template: opts.template || 'default',
|
|
40
|
+
fileSlice: '',
|
|
41
|
+
instruction: phase,
|
|
42
|
+
developmentPhase: phase,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=project-defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-defaults.js","sourceRoot":"","sources":["../src/project-defaults.ts"],"names":[],"mappings":"AAEA,2EAA2E;AAC3E,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IAC5C,kBAAkB;IAClB,aAAa;IACb,UAAU;IACV,UAAU;IACV,eAAe;IACf,WAAW;IACX,WAAW;CACZ,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,gBAAgB;IAC3B,QAAQ,EAAE,SAAS;IACnB,aAAa,EAAE,WAAW;IAC1B,gBAAgB,EAAE,kBAAkB;IACpC,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAW;IAC3C,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;IAC7B,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACjH,CAAC;AASD;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAA4B;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,IAAI,kBAAkB,CAAC;IAC1D,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,WAAW,EAAE,iBAAiB,EAAE;QAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,SAAS;QACpC,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,KAAK;QAClB,gBAAgB,EAAE,KAAK;KACxB,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED