@hasna/todos 0.11.69 → 0.11.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.
@@ -0,0 +1,69 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import type { Plan, Project, Task } from "../types/index.js";
3
+ export declare const PLAN_MARKDOWN_SCHEMA = "hasna.todos.plan/v1";
4
+ export interface PlanArtifactPaths {
5
+ project_id: string;
6
+ project_root: string;
7
+ directory: string;
8
+ file_path: string;
9
+ }
10
+ export interface ResolvePlanArtifactPathInput {
11
+ project_id?: string | null;
12
+ project_ref?: string | null;
13
+ plan_id?: string | null;
14
+ db?: Database;
15
+ }
16
+ export interface PlanArtifactTaskReference {
17
+ task_id: string;
18
+ title: string;
19
+ status: Task["status"];
20
+ priority: Task["priority"];
21
+ }
22
+ export interface PlanArtifactMetadata {
23
+ schema: typeof PLAN_MARKDOWN_SCHEMA;
24
+ plan_id: string;
25
+ project_id: string;
26
+ task_list_id: string | null;
27
+ agent_id: string | null;
28
+ stable_id: string;
29
+ name: string;
30
+ status: Plan["status"];
31
+ created_at: string;
32
+ updated_at: string;
33
+ artifact_updated_at: string;
34
+ }
35
+ export interface PlanArtifactSnapshot {
36
+ metadata: PlanArtifactMetadata;
37
+ task_references: PlanArtifactTaskReference[];
38
+ body: string;
39
+ }
40
+ export interface PlanArtifactReadResult extends PlanArtifactSnapshot {
41
+ path: string;
42
+ markdown: string;
43
+ }
44
+ export interface PlanArtifactConflict {
45
+ field: string;
46
+ database: string | null;
47
+ artifact: string | null;
48
+ }
49
+ export interface PlanArtifactInspection {
50
+ path: string;
51
+ exists: boolean;
52
+ parse_error: string | null;
53
+ metadata: PlanArtifactMetadata | null;
54
+ task_references: PlanArtifactTaskReference[];
55
+ conflicts: PlanArtifactConflict[];
56
+ }
57
+ export interface WritePlanArtifactResult {
58
+ path: string;
59
+ snapshot: PlanArtifactSnapshot;
60
+ }
61
+ export declare function resolvePlanArtifactProject(input: ResolvePlanArtifactPathInput): Project;
62
+ export declare function resolvePlanArtifactPaths(input: ResolvePlanArtifactPathInput): PlanArtifactPaths;
63
+ export declare function buildPlanArtifactSnapshot(plan: Plan, tasks?: Task[], artifactUpdatedAt?: string): PlanArtifactSnapshot;
64
+ export declare function renderPlanArtifactMarkdown(snapshot: PlanArtifactSnapshot): string;
65
+ export declare function parsePlanArtifactMarkdown(markdown: string): PlanArtifactSnapshot;
66
+ export declare function writePlanArtifact(plan: Plan, db?: Database): WritePlanArtifactResult | null;
67
+ export declare function readPlanArtifact(plan: Plan, db?: Database): PlanArtifactReadResult | null;
68
+ export declare function inspectPlanArtifact(plan: Plan, db?: Database): PlanArtifactInspection | null;
69
+ //# sourceMappingURL=plan-artifacts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-artifacts.d.ts","sourceRoot":"","sources":["../../src/lib/plan-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAM3C,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE7D,eAAO,MAAM,oBAAoB,wBAAwB,CAAC;AAE1D,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,EAAE,CAAC,EAAE,QAAQ,CAAC;CACf;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,OAAO,oBAAoB,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,eAAe,EAAE,yBAAyB,EAAE,CAAC;IAC7C,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACtC,eAAe,EAAE,yBAAyB,EAAE,CAAC;IAC7C,SAAS,EAAE,oBAAoB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,oBAAoB,CAAC;CAChC;AAwCD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,4BAA4B,GAAG,OAAO,CAkBvF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,4BAA4B,GAAG,iBAAiB,CAY/F;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,IAAI,EACV,KAAK,GAAE,IAAI,EAAO,EAClB,iBAAiB,SAA2B,GAC3C,oBAAoB,CA0BtB;AAqBD,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAoBjF;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,CAoChF;AAsBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,uBAAuB,GAAG,IAAI,CAS3F;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,sBAAsB,GAAG,IAAI,CAWzF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,sBAAsB,GAAG,IAAI,CAmC5F"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "packageName": "@hasna/todos",
3
- "packageVersion": "0.11.69",
3
+ "packageVersion": "0.11.70",
4
4
  "repository": "https://github.com/hasna/todos.git",
5
5
  "gitCommit": "8de441cfe66d5e61839983b91ed42868d214b8b1",
6
- "generatedAt": "2026-06-29T19:21:19.104Z"
6
+ "generatedAt": "2026-06-30T11:02:03.672Z"
7
7
  }
@@ -15565,7 +15565,7 @@ class JSONSchemaGenerator {
15565
15565
  if (val === undefined) {
15566
15566
  if (this.unrepresentable === "throw") {
15567
15567
  throw new Error("Literal `undefined` cannot be represented in JSON Schema");
15568
- } else {}
15568
+ }
15569
15569
  } else if (typeof val === "bigint") {
15570
15570
  if (this.unrepresentable === "throw") {
15571
15571
  throw new Error("BigInt literals cannot be represented in JSON Schema");
@@ -58652,7 +58652,7 @@ var require_to_json_schema = __commonJS((exports) => {
58652
58652
  if (val === undefined) {
58653
58653
  if (this.unrepresentable === "throw") {
58654
58654
  throw new Error("Literal `undefined` cannot be represented in JSON Schema");
58655
- } else {}
58655
+ }
58656
58656
  } else if (typeof val === "bigint") {
58657
58657
  if (this.unrepresentable === "throw") {
58658
58658
  throw new Error("BigInt literals cannot be represented in JSON Schema");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hasna/todos",
3
- "version": "0.11.69",
3
+ "version": "0.11.70",
4
4
  "description": "Universal task management for AI coding agents - CLI + MCP server + interactive TUI",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",