ferix-code 0.0.2-beta.9 → 0.0.3-beta.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.
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ areAllTasksComplete,
4
+ buildDiscoveryPrompt,
5
+ buildPrompt,
6
+ buildSessionState
7
+ } from "./chunk-XIEB473E.js";
8
+ import "./chunk-ILHJ3OBF.js";
9
+ export {
10
+ areAllTasksComplete,
11
+ buildDiscoveryPrompt,
12
+ buildPrompt,
13
+ buildSessionState
14
+ };
@@ -0,0 +1,50 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ PlanStoreError,
4
+ formatTasksJson
5
+ } from "./chunk-ENDDBBCW.js";
6
+ import {
7
+ init_esm_shims
8
+ } from "./chunk-ILHJ3OBF.js";
9
+
10
+ // src/commands/code/layers/plan/task-generation.ts
11
+ init_esm_shims();
12
+ import { mkdir, writeFile } from "fs/promises";
13
+ import { join } from "path";
14
+ import { Effect } from "effect";
15
+ var PLANS_DIR = ".ferix/plans";
16
+ function ensureDir(dirPath) {
17
+ return Effect.tryPromise({
18
+ try: () => mkdir(dirPath, { recursive: true }),
19
+ catch: (error) => new PlanStoreError({
20
+ message: `Failed to create directory: ${dirPath}`,
21
+ operation: "create",
22
+ cause: error
23
+ })
24
+ }).pipe(Effect.asVoid);
25
+ }
26
+ function getSessionDir(sessionId) {
27
+ return join(process.cwd(), PLANS_DIR, sessionId);
28
+ }
29
+ function getTasksJsonPath(sessionId) {
30
+ return join(getSessionDir(sessionId), "tasks.json");
31
+ }
32
+ function writeTasksJson(sessionId, tasksFile) {
33
+ return Effect.gen(function* () {
34
+ const sessionDir = getSessionDir(sessionId);
35
+ yield* ensureDir(sessionDir);
36
+ const tasksJsonPath = getTasksJsonPath(sessionId);
37
+ const content = formatTasksJson(tasksFile);
38
+ yield* Effect.tryPromise({
39
+ try: () => writeFile(tasksJsonPath, content, "utf-8"),
40
+ catch: (error) => new PlanStoreError({
41
+ message: `Failed to write tasks.json: ${tasksJsonPath}`,
42
+ operation: "create",
43
+ cause: error
44
+ })
45
+ });
46
+ });
47
+ }
48
+ export {
49
+ writeTasksJson
50
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ferix-code",
3
- "version": "0.0.2-beta.9",
3
+ "version": "0.0.3-beta.1",
4
4
  "description": "Composable RALPH loops for AI coding agents - v2 with Effect",
5
5
  "type": "module",
6
6
  "bin": {
@@ -16,17 +16,27 @@
16
16
  "check-types": "tsc --noEmit",
17
17
  "test": "bun test",
18
18
  "test:watch": "bun test --watch",
19
- "bump": "npm version prerelease --preid=beta --workspaces=false && bun run build && bun publish --tag beta"
19
+ "test:unit": "bun test tests/unit",
20
+ "test:integration": "bun test tests/integration",
21
+ "test:errors": "bun test tests/error-paths",
22
+ "test:properties": "bun test tests/properties",
23
+ "bump": "npm version prerelease --preid=beta --workspaces=false && bun run build && bun publish --tag beta",
24
+ "patch": "npm version patch --workspaces=false && bun run build && bun publish --tag latest"
20
25
  },
21
26
  "dependencies": {
27
+ "@clack/prompts": "^0.10.0",
22
28
  "commander": "^14.0.0",
29
+ "convex": "^1.25.0",
23
30
  "effect": "^3.19.15",
24
31
  "human-id": "^4.1.3",
32
+ "ora": "^9.1.0",
25
33
  "picocolors": "^1.1.1"
26
34
  },
27
35
  "devDependencies": {
36
+ "@ferix/server": "*",
28
37
  "@types/bun": "latest",
29
38
  "@types/node": "^22.15.3",
39
+ "fast-check": "^3.22.0",
30
40
  "tsup": "^8.4.0",
31
41
  "typescript": "5.9.2"
32
42
  },