@fractary/faber 2.4.0 → 2.4.1

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/index.d.ts CHANGED
@@ -15,6 +15,7 @@
15
15
  export * from './types.js';
16
16
  export * from './errors.js';
17
17
  export * from './config.js';
18
+ export * from './paths.js';
18
19
  export * from './work/index.js';
19
20
  export * from './repo/index.js';
20
21
  export * from './logs/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAG5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAG3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -16,6 +16,7 @@
16
16
  export * from './types.js';
17
17
  export * from './errors.js';
18
18
  export * from './config.js';
19
+ export * from './paths.js';
19
20
  // Module exports
20
21
  export * from './work/index.js';
21
22
  export * from './repo/index.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAe;AACf,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAE5B,iBAAiB;AACjB,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAElC,cAAc;AACd,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAe;AACf,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAE3B,iBAAiB;AACjB,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAElC,cAAc;AACd,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Centralized path definitions for FABER
3
+ *
4
+ * This module provides the single source of truth for all FABER run-related paths.
5
+ * All run files (plan.json, state.json) are stored in a unified directory structure:
6
+ * .fractary/faber/runs/{run_id}/
7
+ *
8
+ * These paths are committable (not gitignored) to enable:
9
+ * - Workflow state persistence across sessions
10
+ * - Team visibility into workflow progress
11
+ * - Historical tracking of workflow runs
12
+ */
13
+ /**
14
+ * Base directory for all FABER runs (relative to project root)
15
+ */
16
+ export declare const FABER_RUNS_DIR = ".fractary/faber/runs";
17
+ /**
18
+ * Get the runs directory path
19
+ * @param projectRoot - Optional project root path (defaults to current working directory)
20
+ * @returns Absolute path to the runs directory
21
+ */
22
+ export declare function getRunsDir(projectRoot?: string): string;
23
+ /**
24
+ * Get the directory path for a specific run
25
+ * @param runId - The run identifier
26
+ * @param projectRoot - Optional project root path (defaults to current working directory)
27
+ * @returns Absolute path to the run directory
28
+ */
29
+ export declare function getRunDir(runId: string, projectRoot?: string): string;
30
+ /**
31
+ * Get the plan file path for a specific run
32
+ * @param runId - The run identifier
33
+ * @param projectRoot - Optional project root path (defaults to current working directory)
34
+ * @returns Absolute path to the plan.json file
35
+ */
36
+ export declare function getPlanPath(runId: string, projectRoot?: string): string;
37
+ /**
38
+ * Get the state file path for a specific run
39
+ * @param runId - The run identifier
40
+ * @param projectRoot - Optional project root path (defaults to current working directory)
41
+ * @returns Absolute path to the state.json file
42
+ */
43
+ export declare function getStatePath(runId: string, projectRoot?: string): string;
44
+ /**
45
+ * Get relative path constants (for documentation and gitignore)
46
+ */
47
+ export declare const RELATIVE_PATHS: {
48
+ /** Relative path to runs directory from project root */
49
+ readonly RUNS_DIR: ".fractary/faber/runs";
50
+ /** Template for run directory path */
51
+ readonly RUN_DIR_TEMPLATE: ".fractary/faber/runs/{run_id}";
52
+ /** Template for plan file path */
53
+ readonly PLAN_PATH_TEMPLATE: ".fractary/faber/runs/{run_id}/plan.json";
54
+ /** Template for state file path */
55
+ readonly STATE_PATH_TEMPLATE: ".fractary/faber/runs/{run_id}/state.json";
56
+ };
57
+ //# sourceMappingURL=paths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH;;GAEG;AACH,eAAO,MAAM,cAAc,yBAAyB,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAGrE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAExE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;IACzB,wDAAwD;;IAExD,sCAAsC;;IAEtC,kCAAkC;;IAElC,mCAAmC;;CAE3B,CAAC"}
package/dist/paths.js ADDED
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Centralized path definitions for FABER
3
+ *
4
+ * This module provides the single source of truth for all FABER run-related paths.
5
+ * All run files (plan.json, state.json) are stored in a unified directory structure:
6
+ * .fractary/faber/runs/{run_id}/
7
+ *
8
+ * These paths are committable (not gitignored) to enable:
9
+ * - Workflow state persistence across sessions
10
+ * - Team visibility into workflow progress
11
+ * - Historical tracking of workflow runs
12
+ */
13
+ import * as path from 'path';
14
+ /**
15
+ * Base directory for all FABER runs (relative to project root)
16
+ */
17
+ export const FABER_RUNS_DIR = '.fractary/faber/runs';
18
+ /**
19
+ * Get the runs directory path
20
+ * @param projectRoot - Optional project root path (defaults to current working directory)
21
+ * @returns Absolute path to the runs directory
22
+ */
23
+ export function getRunsDir(projectRoot) {
24
+ const root = projectRoot || process.cwd();
25
+ return path.join(root, FABER_RUNS_DIR);
26
+ }
27
+ /**
28
+ * Get the directory path for a specific run
29
+ * @param runId - The run identifier
30
+ * @param projectRoot - Optional project root path (defaults to current working directory)
31
+ * @returns Absolute path to the run directory
32
+ */
33
+ export function getRunDir(runId, projectRoot) {
34
+ const root = projectRoot || process.cwd();
35
+ return path.join(root, FABER_RUNS_DIR, runId);
36
+ }
37
+ /**
38
+ * Get the plan file path for a specific run
39
+ * @param runId - The run identifier
40
+ * @param projectRoot - Optional project root path (defaults to current working directory)
41
+ * @returns Absolute path to the plan.json file
42
+ */
43
+ export function getPlanPath(runId, projectRoot) {
44
+ return path.join(getRunDir(runId, projectRoot), 'plan.json');
45
+ }
46
+ /**
47
+ * Get the state file path for a specific run
48
+ * @param runId - The run identifier
49
+ * @param projectRoot - Optional project root path (defaults to current working directory)
50
+ * @returns Absolute path to the state.json file
51
+ */
52
+ export function getStatePath(runId, projectRoot) {
53
+ return path.join(getRunDir(runId, projectRoot), 'state.json');
54
+ }
55
+ /**
56
+ * Get relative path constants (for documentation and gitignore)
57
+ */
58
+ export const RELATIVE_PATHS = {
59
+ /** Relative path to runs directory from project root */
60
+ RUNS_DIR: FABER_RUNS_DIR,
61
+ /** Template for run directory path */
62
+ RUN_DIR_TEMPLATE: `${FABER_RUNS_DIR}/{run_id}`,
63
+ /** Template for plan file path */
64
+ PLAN_PATH_TEMPLATE: `${FABER_RUNS_DIR}/{run_id}/plan.json`,
65
+ /** Template for state file path */
66
+ STATE_PATH_TEMPLATE: `${FABER_RUNS_DIR}/{run_id}/state.json`,
67
+ };
68
+ //# sourceMappingURL=paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,WAAoB;IAC7C,MAAM,IAAI,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;AACzC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,WAAoB;IAC3D,MAAM,IAAI,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa,EAAE,WAAoB;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,WAAoB;IAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,YAAY,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,wDAAwD;IACxD,QAAQ,EAAE,cAAc;IACxB,sCAAsC;IACtC,gBAAgB,EAAE,GAAG,cAAc,WAAW;IAC9C,kCAAkC;IAClC,kBAAkB,EAAE,GAAG,cAAc,qBAAqB;IAC1D,mCAAmC;IACnC,mBAAmB,EAAE,GAAG,cAAc,sBAAsB;CACpD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fractary/faber",
3
- "version": "2.4.0",
3
+ "version": "2.4.1",
4
4
  "description": "FABER SDK - Development toolkit for AI-assisted workflows",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",