@hasna/todos 0.11.44 → 0.11.46

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.
Files changed (167) hide show
  1. package/README.md +695 -11
  2. package/dist/cli/commands/agent-reliability-commands.d.ts +3 -0
  3. package/dist/cli/commands/agent-reliability-commands.d.ts.map +1 -0
  4. package/dist/cli/commands/audit-ledger-commands.d.ts +3 -0
  5. package/dist/cli/commands/audit-ledger-commands.d.ts.map +1 -0
  6. package/dist/cli/commands/capacity-commands.d.ts +3 -0
  7. package/dist/cli/commands/capacity-commands.d.ts.map +1 -0
  8. package/dist/cli/commands/config-serve-commands.d.ts.map +1 -1
  9. package/dist/cli/commands/help-commands.d.ts +3 -0
  10. package/dist/cli/commands/help-commands.d.ts.map +1 -0
  11. package/dist/cli/commands/knowledge-commands.d.ts +3 -0
  12. package/dist/cli/commands/knowledge-commands.d.ts.map +1 -0
  13. package/dist/cli/commands/local-backup-commands.d.ts +3 -0
  14. package/dist/cli/commands/local-backup-commands.d.ts.map +1 -0
  15. package/dist/cli/commands/local-snapshot-commands.d.ts +3 -0
  16. package/dist/cli/commands/local-snapshot-commands.d.ts.map +1 -0
  17. package/dist/cli/commands/machines.d.ts.map +1 -1
  18. package/dist/cli/commands/mcp-hooks-commands.d.ts.map +1 -1
  19. package/dist/cli/commands/onboarding-commands.d.ts +3 -0
  20. package/dist/cli/commands/onboarding-commands.d.ts.map +1 -0
  21. package/dist/cli/commands/project-commands.d.ts.map +1 -1
  22. package/dist/cli/commands/query-commands.d.ts.map +1 -1
  23. package/dist/cli/commands/release-compatibility-commands.d.ts +3 -0
  24. package/dist/cli/commands/release-compatibility-commands.d.ts.map +1 -0
  25. package/dist/cli/commands/retrospective-commands.d.ts +3 -0
  26. package/dist/cli/commands/retrospective-commands.d.ts.map +1 -0
  27. package/dist/cli/commands/review-queue-commands.d.ts +3 -0
  28. package/dist/cli/commands/review-queue-commands.d.ts.map +1 -0
  29. package/dist/cli/commands/risk-commands.d.ts +3 -0
  30. package/dist/cli/commands/risk-commands.d.ts.map +1 -0
  31. package/dist/cli/commands/roadmap-commands.d.ts +3 -0
  32. package/dist/cli/commands/roadmap-commands.d.ts.map +1 -0
  33. package/dist/cli/commands/scale-hardening-commands.d.ts +3 -0
  34. package/dist/cli/commands/scale-hardening-commands.d.ts.map +1 -0
  35. package/dist/cli/commands/sdk-fixture-commands.d.ts +3 -0
  36. package/dist/cli/commands/sdk-fixture-commands.d.ts.map +1 -0
  37. package/dist/cli/commands/task-commands.d.ts.map +1 -1
  38. package/dist/cli/commands/usage-ledger-commands.d.ts +3 -0
  39. package/dist/cli/commands/usage-ledger-commands.d.ts.map +1 -0
  40. package/dist/cli/components/Dashboard.d.ts.map +1 -1
  41. package/dist/cli/index.js +39446 -19769
  42. package/dist/cli-mcp-parity.d.ts +1 -1
  43. package/dist/cli-mcp-parity.d.ts.map +1 -1
  44. package/dist/contracts.d.ts +25 -0
  45. package/dist/contracts.d.ts.map +1 -1
  46. package/dist/contracts.js +14818 -3885
  47. package/dist/db/agent-metrics.d.ts +101 -0
  48. package/dist/db/agent-metrics.d.ts.map +1 -1
  49. package/dist/db/agent-names.d.ts +2 -1
  50. package/dist/db/agent-names.d.ts.map +1 -1
  51. package/dist/db/boards.d.ts +56 -0
  52. package/dist/db/boards.d.ts.map +1 -0
  53. package/dist/db/calendar.d.ts +52 -0
  54. package/dist/db/calendar.d.ts.map +1 -0
  55. package/dist/db/comments.d.ts.map +1 -1
  56. package/dist/db/handoffs.d.ts +25 -0
  57. package/dist/db/handoffs.d.ts.map +1 -1
  58. package/dist/db/machines.d.ts +19 -6
  59. package/dist/db/machines.d.ts.map +1 -1
  60. package/dist/db/migrations.d.ts.map +1 -1
  61. package/dist/db/project-knowledge.d.ts +88 -0
  62. package/dist/db/project-knowledge.d.ts.map +1 -0
  63. package/dist/db/project-risks.d.ts +139 -0
  64. package/dist/db/project-risks.d.ts.map +1 -0
  65. package/dist/db/retrospectives.d.ts +98 -0
  66. package/dist/db/retrospectives.d.ts.map +1 -0
  67. package/dist/db/schema.d.ts.map +1 -1
  68. package/dist/db/task-crud.d.ts.map +1 -1
  69. package/dist/db/task-relations.d.ts +69 -9
  70. package/dist/db/task-relations.d.ts.map +1 -1
  71. package/dist/db/task-runs.d.ts +3 -0
  72. package/dist/db/task-runs.d.ts.map +1 -1
  73. package/dist/db/tasks.d.ts +6 -2
  74. package/dist/db/tasks.d.ts.map +1 -1
  75. package/dist/index.d.ts +74 -11
  76. package/dist/index.d.ts.map +1 -1
  77. package/dist/index.js +24662 -11829
  78. package/dist/json-contracts.d.ts.map +1 -1
  79. package/dist/lib/agent-replay-simulator.d.ts +66 -0
  80. package/dist/lib/agent-replay-simulator.d.ts.map +1 -0
  81. package/dist/lib/audit-ledger.d.ts +59 -0
  82. package/dist/lib/audit-ledger.d.ts.map +1 -0
  83. package/dist/lib/branch-work-plans.d.ts +46 -0
  84. package/dist/lib/branch-work-plans.d.ts.map +1 -0
  85. package/dist/lib/capacity-forecasts.d.ts +70 -0
  86. package/dist/lib/capacity-forecasts.d.ts.map +1 -0
  87. package/dist/lib/cli-help.d.ts +38 -0
  88. package/dist/lib/cli-help.d.ts.map +1 -0
  89. package/dist/lib/config.d.ts +217 -0
  90. package/dist/lib/config.d.ts.map +1 -1
  91. package/dist/lib/context-packs.d.ts +26 -3
  92. package/dist/lib/context-packs.d.ts.map +1 -1
  93. package/dist/lib/event-hooks.d.ts +1 -1
  94. package/dist/lib/event-hooks.d.ts.map +1 -1
  95. package/dist/lib/external-issue-importers.d.ts +60 -0
  96. package/dist/lib/external-issue-importers.d.ts.map +1 -0
  97. package/dist/lib/extract.d.ts +57 -0
  98. package/dist/lib/extract.d.ts.map +1 -1
  99. package/dist/lib/local-backups.d.ts +129 -0
  100. package/dist/lib/local-backups.d.ts.map +1 -0
  101. package/dist/lib/local-bridge.d.ts +3 -1
  102. package/dist/lib/local-bridge.d.ts.map +1 -1
  103. package/dist/lib/local-extensions.d.ts +92 -0
  104. package/dist/lib/local-extensions.d.ts.map +1 -0
  105. package/dist/lib/local-notifications.d.ts +55 -0
  106. package/dist/lib/local-notifications.d.ts.map +1 -0
  107. package/dist/lib/local-reports.d.ts +149 -0
  108. package/dist/lib/local-reports.d.ts.map +1 -0
  109. package/dist/lib/local-snapshots.d.ts +66 -0
  110. package/dist/lib/local-snapshots.d.ts.map +1 -0
  111. package/dist/lib/mention-resolver.d.ts +43 -0
  112. package/dist/lib/mention-resolver.d.ts.map +1 -0
  113. package/dist/lib/natural-language-intake.d.ts +56 -0
  114. package/dist/lib/natural-language-intake.d.ts.map +1 -0
  115. package/dist/lib/onboarding-fixtures.d.ts +31 -0
  116. package/dist/lib/onboarding-fixtures.d.ts.map +1 -0
  117. package/dist/lib/public-release-gate.d.ts +7 -0
  118. package/dist/lib/public-release-gate.d.ts.map +1 -1
  119. package/dist/lib/redaction.d.ts +9 -0
  120. package/dist/lib/redaction.d.ts.map +1 -1
  121. package/dist/lib/release-compatibility.d.ts +59 -0
  122. package/dist/lib/release-compatibility.d.ts.map +1 -0
  123. package/dist/lib/release-notes.d.ts +81 -0
  124. package/dist/lib/release-notes.d.ts.map +1 -0
  125. package/dist/lib/retention-cleanup.d.ts +63 -0
  126. package/dist/lib/retention-cleanup.d.ts.map +1 -0
  127. package/dist/lib/review-queues.d.ts +98 -0
  128. package/dist/lib/review-queues.d.ts.map +1 -0
  129. package/dist/lib/roadmaps.d.ts +133 -0
  130. package/dist/lib/roadmaps.d.ts.map +1 -0
  131. package/dist/lib/scale-hardening.d.ts +74 -0
  132. package/dist/lib/scale-hardening.d.ts.map +1 -0
  133. package/dist/lib/sdk-integration-fixtures.d.ts +65 -0
  134. package/dist/lib/sdk-integration-fixtures.d.ts.map +1 -0
  135. package/dist/lib/terminal-notifications.d.ts +53 -0
  136. package/dist/lib/terminal-notifications.d.ts.map +1 -0
  137. package/dist/lib/todos-md.d.ts.map +1 -1
  138. package/dist/lib/tui-dashboard.d.ts +49 -0
  139. package/dist/lib/tui-dashboard.d.ts.map +1 -0
  140. package/dist/lib/usage-ledger.d.ts +82 -0
  141. package/dist/lib/usage-ledger.d.ts.map +1 -0
  142. package/dist/lib/workflow-prompts.d.ts +38 -0
  143. package/dist/lib/workflow-prompts.d.ts.map +1 -0
  144. package/dist/lib/workflow-states.d.ts +70 -0
  145. package/dist/lib/workflow-states.d.ts.map +1 -0
  146. package/dist/mcp/index.d.ts.map +1 -1
  147. package/dist/mcp/index.js +25922 -13067
  148. package/dist/mcp/token-utils.d.ts.map +1 -1
  149. package/dist/mcp/tools/code-tools.d.ts.map +1 -1
  150. package/dist/mcp/tools/machines.d.ts.map +1 -1
  151. package/dist/mcp/tools/task-adv-tools.d.ts.map +1 -1
  152. package/dist/mcp/tools/task-auto-tools.d.ts.map +1 -1
  153. package/dist/mcp/tools/task-crud.d.ts.map +1 -1
  154. package/dist/mcp/tools/task-meta-tools.d.ts.map +1 -1
  155. package/dist/mcp/tools/task-project-tools.d.ts.map +1 -1
  156. package/dist/mcp/tools/task-rel-tools.d.ts.map +1 -1
  157. package/dist/mcp/tools/task-resources.d.ts.map +1 -1
  158. package/dist/mcp/tools/workflow-prompts.d.ts +3 -0
  159. package/dist/mcp/tools/workflow-prompts.d.ts.map +1 -0
  160. package/dist/mcp.js +107 -2
  161. package/dist/registry.js +15919 -6050
  162. package/dist/server/index.js +645 -143
  163. package/dist/storage.js +2516 -159
  164. package/dist/types/index.d.ts +214 -0
  165. package/dist/types/index.d.ts.map +1 -1
  166. package/package.json +1 -1
  167. package/dist/release-provenance.json +0 -7
@@ -0,0 +1,98 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import type { TaskPriority, TaskStatus } from "../types/index.js";
3
+ import { type ReviewRoutingRuleConfig } from "./config.js";
4
+ import { type TaskReview } from "./task-contracts.js";
5
+ export type ReviewQueueState = "requested" | "claimed" | "approved" | "changes_requested" | "returned" | "reopened";
6
+ export interface ReviewQueueHistoryEntry {
7
+ state: ReviewQueueState;
8
+ actor: string;
9
+ note: string | null;
10
+ at: string;
11
+ }
12
+ export interface ReviewQueueMetadata {
13
+ schema_version: 1;
14
+ state: ReviewQueueState;
15
+ queue: string;
16
+ requester: string | null;
17
+ reviewer: string | null;
18
+ claimed_by: string | null;
19
+ reason: string | null;
20
+ notes: string | null;
21
+ changes_requested: string[];
22
+ routing_rule: string | null;
23
+ requested_at: string | null;
24
+ claimed_at: string | null;
25
+ decided_at: string | null;
26
+ updated_at: string;
27
+ history: ReviewQueueHistoryEntry[];
28
+ }
29
+ export interface ReviewQueueItem {
30
+ task_id: string;
31
+ short_id: string | null;
32
+ title: string;
33
+ status: TaskStatus;
34
+ priority: TaskPriority;
35
+ project_id: string | null;
36
+ assigned_to: string | null;
37
+ tags: string[];
38
+ queue: string;
39
+ state: ReviewQueueState;
40
+ requester: string | null;
41
+ reviewer: string | null;
42
+ claimed_by: string | null;
43
+ reason: string | null;
44
+ notes: string | null;
45
+ changes_requested: string[];
46
+ routing_rule: string | null;
47
+ requested_at: string | null;
48
+ claimed_at: string | null;
49
+ decided_at: string | null;
50
+ updated_at: string;
51
+ review: TaskReview | null;
52
+ }
53
+ export interface ReviewQueueListOptions {
54
+ queue?: string;
55
+ state?: ReviewQueueState;
56
+ reviewer?: string;
57
+ requester?: string;
58
+ project_id?: string;
59
+ limit?: number;
60
+ }
61
+ export interface RequestReviewQueueInput {
62
+ task_id: string;
63
+ requester: string;
64
+ reviewer?: string;
65
+ queue?: string;
66
+ reason?: string;
67
+ notes?: string;
68
+ }
69
+ export interface ClaimReviewInput {
70
+ task_id: string;
71
+ reviewer: string;
72
+ note?: string;
73
+ }
74
+ export interface DecideReviewInput {
75
+ task_id: string;
76
+ reviewer: string;
77
+ note?: string;
78
+ changes_requested?: string[];
79
+ }
80
+ export interface UpsertReviewRoutingRuleInput {
81
+ name: string;
82
+ queue?: string;
83
+ reviewers?: string[];
84
+ tags?: string[];
85
+ priorities?: TaskPriority[];
86
+ project_id?: string;
87
+ enabled?: boolean;
88
+ }
89
+ export declare function listReviewRoutingRules(): ReviewRoutingRuleConfig[];
90
+ export declare function upsertReviewRoutingRule(input: UpsertReviewRoutingRuleInput): ReviewRoutingRuleConfig;
91
+ export declare function removeReviewRoutingRule(name: string): boolean;
92
+ export declare function requestReviewQueue(input: RequestReviewQueueInput, db?: Database): ReviewQueueItem;
93
+ export declare function claimReviewItem(input: ClaimReviewInput, db?: Database): ReviewQueueItem;
94
+ export declare function approveReviewItem(input: DecideReviewInput, db?: Database): ReviewQueueItem;
95
+ export declare function returnReviewItem(input: DecideReviewInput, db?: Database): ReviewQueueItem;
96
+ export declare function reopenReviewItem(input: DecideReviewInput, db?: Database): ReviewQueueItem;
97
+ export declare function listReviewQueue(options?: ReviewQueueListOptions, db?: Database): ReviewQueueItem[];
98
+ //# sourceMappingURL=review-queues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review-queues.d.ts","sourceRoot":"","sources":["../../src/lib/review-queues.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import { getTaskRun } from "../db/task-runs.js";
3
+ import type { Task, Plan } from "../types/index.js";
4
+ import { type LocalMilestoneConfig, type LocalMilestoneStatus, type LocalReleaseGroupConfig, type LocalRoadmapConfig, type LocalRoadmapStatus } from "./config.js";
5
+ export type { LocalMilestoneConfig, LocalMilestoneStatus, LocalReleaseGroupConfig, LocalRoadmapConfig, LocalRoadmapStatus, LocalRoadmapStoreConfig, } from "./config.js";
6
+ export declare const LOCAL_ROADMAP_SCHEMA_VERSION = 1;
7
+ export interface CreateRoadmapInput {
8
+ name: string;
9
+ description?: string;
10
+ project_id?: string;
11
+ status?: LocalRoadmapStatus;
12
+ owner?: string;
13
+ agent_id?: string;
14
+ release?: string;
15
+ }
16
+ export interface UpdateRoadmapInput {
17
+ name?: string;
18
+ description?: string | null;
19
+ project_id?: string | null;
20
+ status?: LocalRoadmapStatus;
21
+ owner?: string | null;
22
+ agent_id?: string | null;
23
+ release?: string | null;
24
+ }
25
+ export interface CreateMilestoneInput {
26
+ roadmap_id: string;
27
+ title: string;
28
+ description?: string;
29
+ due_at?: string;
30
+ status?: LocalMilestoneStatus;
31
+ owner?: string;
32
+ agent_id?: string;
33
+ task_ids?: string[];
34
+ plan_ids?: string[];
35
+ run_ids?: string[];
36
+ release?: string;
37
+ tags?: string[];
38
+ }
39
+ export interface UpdateMilestoneInput {
40
+ title?: string;
41
+ description?: string | null;
42
+ due_at?: string | null;
43
+ status?: LocalMilestoneStatus;
44
+ owner?: string | null;
45
+ agent_id?: string | null;
46
+ task_ids?: string[];
47
+ plan_ids?: string[];
48
+ run_ids?: string[];
49
+ release?: string | null;
50
+ tags?: string[];
51
+ }
52
+ export interface UpsertReleaseGroupInput {
53
+ roadmap_id: string;
54
+ name: string;
55
+ version?: string;
56
+ status?: LocalMilestoneStatus;
57
+ milestone_ids?: string[];
58
+ task_ids?: string[];
59
+ plan_ids?: string[];
60
+ run_ids?: string[];
61
+ notes?: string;
62
+ }
63
+ export interface RoadmapProgressSummary {
64
+ task_count: number;
65
+ completed_count: number;
66
+ in_progress_count: number;
67
+ pending_count: number;
68
+ blocked_count: number;
69
+ plan_count: number;
70
+ run_count: number;
71
+ percent_complete: number;
72
+ readiness: "empty" | "ready" | "blocked" | "in_progress" | "complete";
73
+ }
74
+ export interface MilestoneSummary extends LocalMilestoneConfig {
75
+ tasks: Task[];
76
+ plans: Plan[];
77
+ runs: Array<NonNullable<ReturnType<typeof getTaskRun>>>;
78
+ blockers: Array<{
79
+ task_id: string;
80
+ blockers: Array<{
81
+ id: string;
82
+ title: string;
83
+ status: string;
84
+ }>;
85
+ }>;
86
+ progress: RoadmapProgressSummary;
87
+ }
88
+ export interface RoadmapSummary extends LocalRoadmapConfig {
89
+ milestones: MilestoneSummary[];
90
+ releases: LocalReleaseGroupConfig[];
91
+ progress: RoadmapProgressSummary;
92
+ }
93
+ export interface RoadmapBundle {
94
+ schema_version: typeof LOCAL_ROADMAP_SCHEMA_VERSION;
95
+ kind: "hasna.todos.roadmap-bundle";
96
+ local_only: true;
97
+ exported_at: string;
98
+ roadmap: LocalRoadmapConfig;
99
+ milestones: LocalMilestoneConfig[];
100
+ releases: LocalReleaseGroupConfig[];
101
+ }
102
+ export interface ImportRoadmapBundleResult {
103
+ applied: boolean;
104
+ roadmap_id: string;
105
+ milestones: number;
106
+ releases: number;
107
+ }
108
+ export declare function createRoadmap(input: CreateRoadmapInput): LocalRoadmapConfig;
109
+ export declare function listRoadmaps(options?: {
110
+ project_id?: string;
111
+ status?: LocalRoadmapStatus;
112
+ }): LocalRoadmapConfig[];
113
+ export declare function getRoadmap(idOrName: string): LocalRoadmapConfig | null;
114
+ export declare function updateRoadmap(idOrName: string, input: UpdateRoadmapInput): LocalRoadmapConfig;
115
+ export declare function deleteRoadmap(idOrName: string): boolean;
116
+ export declare function createMilestone(input: CreateMilestoneInput): LocalMilestoneConfig;
117
+ export declare function listMilestones(options?: {
118
+ roadmap_id?: string;
119
+ release?: string;
120
+ status?: LocalMilestoneStatus;
121
+ }): LocalMilestoneConfig[];
122
+ export declare function updateMilestone(idOrTitle: string, input: UpdateMilestoneInput): LocalMilestoneConfig;
123
+ export declare function deleteMilestone(idOrTitle: string): boolean;
124
+ export declare function upsertReleaseGroup(input: UpsertReleaseGroupInput): LocalReleaseGroupConfig;
125
+ export declare function listReleaseGroups(roadmapId?: string): LocalReleaseGroupConfig[];
126
+ export declare function summarizeMilestone(idOrTitle: string, db?: Database): MilestoneSummary;
127
+ export declare function summarizeRoadmap(idOrName: string, db?: Database): RoadmapSummary;
128
+ export declare function exportRoadmapBundle(idOrName: string): RoadmapBundle;
129
+ export declare function importRoadmapBundle(bundle: RoadmapBundle, options?: {
130
+ apply?: boolean;
131
+ }): ImportRoadmapBundleResult;
132
+ export declare function renderRoadmapMarkdown(idOrName: string, db?: Database): string;
133
+ //# sourceMappingURL=roadmaps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roadmaps.d.ts","sourceRoot":"","sources":["../../src/lib/roadmaps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import type { Database } from "bun:sqlite";
2
+ export interface ScaleBenchmark {
3
+ name: string;
4
+ rows: number;
5
+ elapsed_ms: number;
6
+ threshold_ms: number;
7
+ ok: boolean;
8
+ }
9
+ export interface ScalePerformanceReport {
10
+ schema_version: 1;
11
+ local_only: true;
12
+ no_network: true;
13
+ generated_at: string;
14
+ database_path: string;
15
+ counts: {
16
+ tasks: number;
17
+ archived_tasks: number;
18
+ projects: number;
19
+ agents: number;
20
+ plans: number;
21
+ runs: number;
22
+ run_events: number;
23
+ comments: number;
24
+ dependencies: number;
25
+ };
26
+ benchmarks: ScaleBenchmark[];
27
+ archive: {
28
+ terminal_unarchived_tasks: number;
29
+ older_than_days: number;
30
+ older_terminal_unarchived_tasks: number;
31
+ archived_tasks_visible_with_include_archived: boolean;
32
+ };
33
+ compaction: {
34
+ page_count: number;
35
+ freelist_count: number;
36
+ freelist_ratio: number;
37
+ recommended: boolean;
38
+ commands: string[];
39
+ };
40
+ integrity: {
41
+ quick_check: string;
42
+ foreign_key_violations: number;
43
+ missing_indexes: string[];
44
+ ok: boolean;
45
+ };
46
+ warnings: string[];
47
+ }
48
+ export interface ScaleCompactionResult {
49
+ schema_version: 1;
50
+ local_only: true;
51
+ no_network: true;
52
+ dry_run: boolean;
53
+ database_path: string;
54
+ before: {
55
+ page_count: number;
56
+ freelist_count: number;
57
+ };
58
+ after: {
59
+ page_count: number;
60
+ freelist_count: number;
61
+ };
62
+ actions: string[];
63
+ }
64
+ export interface CreateScalePerformanceReportOptions {
65
+ older_than_days?: number;
66
+ generated_at?: string;
67
+ }
68
+ export interface CompactScaleStorageOptions {
69
+ apply?: boolean;
70
+ }
71
+ export declare function createScalePerformanceReport(options?: CreateScalePerformanceReportOptions, db?: Database): ScalePerformanceReport;
72
+ export declare function compactScaleStorage(options?: CompactScaleStorageOptions, db?: Database): ScaleCompactionResult;
73
+ export declare function renderScalePerformanceReportMarkdown(report: ScalePerformanceReport): string;
74
+ //# sourceMappingURL=scale-hardening.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scale-hardening.d.ts","sourceRoot":"","sources":["../../src/lib/scale-hardening.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAK3C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,EAAE,OAAO,CAAC;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,CAAC,CAAC;IAClB,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,OAAO,EAAE;QACP,yBAAyB,EAAE,MAAM,CAAC;QAClC,eAAe,EAAE,MAAM,CAAC;QACxB,+BAA+B,EAAE,MAAM,CAAC;QACxC,4CAA4C,EAAE,OAAO,CAAC;KACvD,CAAC;IACF,UAAU,EAAE;QACV,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,OAAO,CAAC;QACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;IACF,SAAS,EAAE;QACT,WAAW,EAAE,MAAM,CAAC;QACpB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,EAAE,EAAE,OAAO,CAAC;KACb,CAAC;IACF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,CAAC,CAAC;IAClB,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,mCAAmC;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAgFD,wBAAgB,4BAA4B,CAAC,OAAO,GAAE,mCAAwC,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,sBAAsB,CAsErI;AAED,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,0BAA+B,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,qBAAqB,CAyBlH;AAED,wBAAgB,oCAAoC,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,CAkD3F"}
@@ -0,0 +1,65 @@
1
+ import { createCliMcpParityManifest } from "../cli-mcp-parity.js";
2
+ import { createJsonContractsManifest } from "../json-contracts.js";
3
+ import { createAgentContextPack } from "./context-packs.js";
4
+ import { getLocalSnapshot, listLocalSnapshotResources } from "./local-snapshots.js";
5
+ export declare const TODOS_SDK_INTEGRATION_FIXTURE_SCHEMA_VERSION = 1;
6
+ export declare const TODOS_SDK_INTEGRATION_FIXTURE_GENERATED_AT = "2026-05-22T00:00:00.000Z";
7
+ export type SdkIntegrationExampleSurface = "sdk" | "cli-json" | "mcp" | "agent-adapter";
8
+ export interface SdkIntegrationExample {
9
+ id: string;
10
+ surface: SdkIntegrationExampleSurface;
11
+ file: string;
12
+ command: string;
13
+ consumes: string[];
14
+ }
15
+ export interface SdkIntegrationFixtureDatabase {
16
+ mode: "local-sqlite";
17
+ seed: "onboarding-bridge-import";
18
+ seed_command: string;
19
+ reset_command: string;
20
+ project_id: string;
21
+ task_ids: string[];
22
+ plan_id: string;
23
+ run_id: string;
24
+ }
25
+ export interface SdkIntegrationFixturePack {
26
+ schema_version: typeof TODOS_SDK_INTEGRATION_FIXTURE_SCHEMA_VERSION;
27
+ local_only: true;
28
+ no_network_required: true;
29
+ generated_at: string;
30
+ package: {
31
+ packageName: "@hasna/todos";
32
+ repository: "hasna/todos";
33
+ version: string;
34
+ };
35
+ fixture_database: SdkIntegrationFixtureDatabase;
36
+ examples: SdkIntegrationExample[];
37
+ contract_snapshots: {
38
+ json_contracts: ReturnType<typeof createJsonContractsManifest>;
39
+ cli_mcp_parity: ReturnType<typeof createCliMcpParityManifest>;
40
+ local_snapshot_resources: ReturnType<typeof listLocalSnapshotResources>;
41
+ snapshots: {
42
+ projects: ReturnType<typeof getLocalSnapshot>;
43
+ tasks: ReturnType<typeof getLocalSnapshot>;
44
+ plans: ReturnType<typeof getLocalSnapshot>;
45
+ runs: ReturnType<typeof getLocalSnapshot>;
46
+ evidence: ReturnType<typeof getLocalSnapshot>;
47
+ };
48
+ context_pack: ReturnType<typeof createAgentContextPack>;
49
+ };
50
+ }
51
+ export interface WriteSdkIntegrationFixturesResult {
52
+ directory: string;
53
+ files: string[];
54
+ pack: SdkIntegrationFixturePack;
55
+ }
56
+ export declare function listSdkIntegrationExamples(): SdkIntegrationExample[];
57
+ export declare function createSdkIntegrationFixturePack(options?: {
58
+ generatedAt?: string;
59
+ version?: string;
60
+ }): SdkIntegrationFixturePack;
61
+ export declare function writeSdkIntegrationFixtures(directory: string, options?: {
62
+ generatedAt?: string;
63
+ version?: string;
64
+ }): WriteSdkIntegrationFixturesResult;
65
+ //# sourceMappingURL=sdk-integration-fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-integration-fixtures.d.ts","sourceRoot":"","sources":["../../src/lib/sdk-integration-fixtures.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAEpF,eAAO,MAAM,4CAA4C,IAAI,CAAC;AAC9D,eAAO,MAAM,0CAA0C,6BAA6B,CAAC;AAErF,MAAM,MAAM,4BAA4B,GAAG,KAAK,GAAG,UAAU,GAAG,KAAK,GAAG,eAAe,CAAC;AAExF,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,4BAA4B,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,0BAA0B,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,OAAO,4CAA4C,CAAC;IACpE,UAAU,EAAE,IAAI,CAAC;IACjB,mBAAmB,EAAE,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QACP,WAAW,EAAE,cAAc,CAAC;QAC5B,UAAU,EAAE,aAAa,CAAC;QAC1B,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,kBAAkB,EAAE;QAClB,cAAc,EAAE,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC;QAC/D,cAAc,EAAE,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;QAC9D,wBAAwB,EAAE,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACxE,SAAS,EAAE;YACT,QAAQ,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;YAC9C,KAAK,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;YAC3C,KAAK,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;YAC3C,IAAI,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;YAC1C,QAAQ,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;SAC/C,CAAC;QACF,YAAY,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;KACzD,CAAC;CACH;AAED,MAAM,WAAW,iCAAiC;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,yBAAyB,CAAC;CACjC;AAUD,wBAAgB,0BAA0B,IAAI,qBAAqB,EAAE,CA+BpE;AAwBD,wBAAgB,+BAA+B,CAAC,OAAO,GAAE;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GAAG,yBAAyB,CAkCjC;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GAAG,iCAAiC,CAiBzC"}
@@ -0,0 +1,53 @@
1
+ import { type TerminalNotificationFormat, type TerminalNotificationQuietHoursConfig, type TerminalNotificationRuleConfig, type TerminalNotificationSeverity } from "./config.js";
2
+ import { type LocalEventType } from "./event-hooks.js";
3
+ export interface TerminalNotificationRuleInput {
4
+ name: string;
5
+ events: string[];
6
+ enabled?: boolean;
7
+ min_severity?: TerminalNotificationSeverity;
8
+ format?: TerminalNotificationFormat;
9
+ bell?: boolean;
10
+ task_statuses?: string[];
11
+ priorities?: string[];
12
+ agent_ids?: string[];
13
+ project_ids?: string[];
14
+ contains?: string[];
15
+ quiet_hours?: TerminalNotificationQuietHoursConfig;
16
+ }
17
+ export interface TerminalWatchEventInput {
18
+ type: LocalEventType;
19
+ payload?: Record<string, unknown>;
20
+ timestamp?: string;
21
+ }
22
+ export interface TerminalNotification {
23
+ rule: string;
24
+ event_type: LocalEventType;
25
+ severity: TerminalNotificationSeverity;
26
+ title: string;
27
+ message: string;
28
+ timestamp: string;
29
+ task_id?: string;
30
+ project_id?: string;
31
+ agent_id?: string;
32
+ bell: boolean;
33
+ payload: Record<string, unknown>;
34
+ }
35
+ export interface TerminalNotificationEvaluation {
36
+ rule: string;
37
+ matched: boolean;
38
+ skipped_reasons: string[];
39
+ notifications: TerminalNotification[];
40
+ }
41
+ export declare function parseQuietHours(value: string | undefined, timezone?: "utc" | "local"): TerminalNotificationQuietHoursConfig | undefined;
42
+ export declare function upsertTerminalNotificationRule(input: TerminalNotificationRuleInput): TerminalNotificationRuleConfig;
43
+ export declare function listTerminalNotificationRules(): TerminalNotificationRuleConfig[];
44
+ export declare function getTerminalNotificationRule(name: string): TerminalNotificationRuleConfig | null;
45
+ export declare function removeTerminalNotificationRule(name: string): boolean;
46
+ export declare function evaluateTerminalWatchRules(input: TerminalWatchEventInput, rules?: TerminalNotificationRuleConfig[]): TerminalNotificationEvaluation[];
47
+ export declare function testTerminalNotificationRule(name: string, input: TerminalWatchEventInput): TerminalNotificationEvaluation;
48
+ export declare function renderTerminalNotification(notification: TerminalNotification, format?: TerminalNotificationFormat): string;
49
+ export declare function describeTerminalNotificationRule(rule: TerminalNotificationRuleConfig): {
50
+ rule: TerminalNotificationRuleConfig;
51
+ warnings: string[];
52
+ };
53
+ //# sourceMappingURL=terminal-notifications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-notifications.d.ts","sourceRoot":"","sources":["../../src/lib/terminal-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,0BAA0B,EAC/B,KAAK,oCAAoC,EACzC,KAAK,8BAA8B,EACnC,KAAK,4BAA4B,EAClC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAG1E,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,4BAA4B,CAAC;IAC5C,MAAM,CAAC,EAAE,0BAA0B,CAAC;IACpC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,oCAAoC,CAAC;CACpD;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,cAAc,CAAC;IAC3B,QAAQ,EAAE,4BAA4B,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,oBAAoB,EAAE,CAAC;CACvC;AAwCD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,GAAE,KAAK,GAAG,OAAiB,GAAG,oCAAoC,GAAG,SAAS,CAOhJ;AAwED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,6BAA6B,GAAG,8BAA8B,CAYnH;AAED,wBAAgB,6BAA6B,IAAI,8BAA8B,EAAE,CAEhF;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,8BAA8B,GAAG,IAAI,CAE/F;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQpE;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,uBAAuB,EAAE,KAAK,mCAAkC,GAAG,8BAA8B,EAAE,CAuCpJ;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,GAAG,8BAA8B,CAIzH;AAED,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,oBAAoB,EAAE,MAAM,GAAE,0BAAmC,GAAG,MAAM,CAMlI;AAED,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,8BAA8B,GAAG;IAAE,IAAI,EAAE,8BAA8B,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAMnJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"todos-md.d.ts","sourceRoot":"","sources":["../../src/lib/todos-md.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQ3C,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAE5B,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AACzD,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AAEjE,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,iBAAiB,GAAG,gBAAgB,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC,MAAM,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC,MAAM,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACnD,OAAO,EAAE,MAAM,CAAC,MAAM,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACpD,SAAS,EAAE,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAsID,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,wBAA6B,EACtC,EAAE,CAAC,EAAE,QAAQ,GACZ,MAAM,CAqDR;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,0BAA+B,EACxC,EAAE,CAAC,EAAE,QAAQ,GACZ,yBAAyB,CA4E3B"}
1
+ {"version":3,"file":"todos-md.d.ts","sourceRoot":"","sources":["../../src/lib/todos-md.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQ3C,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAE5B,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AACzD,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AAEjE,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,iBAAiB,GAAG,gBAAgB,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC,MAAM,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC,MAAM,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACnD,OAAO,EAAE,MAAM,CAAC,MAAM,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACpD,SAAS,EAAE,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAwID,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,wBAA6B,EACtC,EAAE,CAAC,EAAE,QAAQ,GACZ,MAAM,CAqDR;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,0BAA+B,EACxC,EAAE,CAAC,EAAE,QAAQ,GACZ,yBAAyB,CA4E3B"}
@@ -0,0 +1,49 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import { type InboxItem } from "../db/inbox.js";
3
+ import { type TaskRun } from "../db/task-runs.js";
4
+ import type { Plan, Project, Task, TaskStatus } from "../types/index.js";
5
+ export type TuiDashboardView = "overview" | "projects" | "tasks" | "plans" | "runs" | "dependencies" | "inbox" | "search";
6
+ export declare const TUI_DASHBOARD_VIEWS: TuiDashboardView[];
7
+ export interface TuiDashboardProject extends Pick<Project, "id" | "name" | "path"> {
8
+ open_tasks: number;
9
+ }
10
+ export interface TuiDashboardPlan extends Pick<Plan, "id" | "name" | "status" | "project_id"> {
11
+ open_tasks: number;
12
+ }
13
+ export interface TuiDashboardDependency {
14
+ task_id: string;
15
+ task_title: string;
16
+ task_status: TaskStatus;
17
+ depends_on: string;
18
+ depends_on_title: string;
19
+ depends_on_status: TaskStatus;
20
+ blocking: boolean;
21
+ }
22
+ export interface TuiDashboardSnapshot {
23
+ generated_at: string;
24
+ local_only: true;
25
+ project_id: string | null;
26
+ active_view: TuiDashboardView;
27
+ keymap: string[];
28
+ counts: Record<TaskStatus | "total", number>;
29
+ projects: TuiDashboardProject[];
30
+ tasks: Task[];
31
+ plans: TuiDashboardPlan[];
32
+ runs: TaskRun[];
33
+ dependencies: TuiDashboardDependency[];
34
+ inbox: InboxItem[];
35
+ search: {
36
+ query: string;
37
+ total: number;
38
+ results: Task[];
39
+ };
40
+ }
41
+ export interface CreateTuiDashboardSnapshotOptions {
42
+ project_id?: string;
43
+ search?: string;
44
+ active_view?: TuiDashboardView;
45
+ limit?: number;
46
+ }
47
+ export declare function createTuiDashboardSnapshot(options?: CreateTuiDashboardSnapshotOptions, db?: Database): TuiDashboardSnapshot;
48
+ export declare function renderTuiDashboardSnapshot(snapshot: TuiDashboardSnapshot): string;
49
+ //# sourceMappingURL=tui-dashboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-dashboard.d.ts","sourceRoot":"","sources":["../../src/lib/tui-dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhE,OAAO,EAAgB,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAIhE,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE1H,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,EAA0F,CAAC;AAE7I,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAChF,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;IAC3F,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,UAAU,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,gBAAgB,CAAC;IAC9B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7C,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACvC,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,CAAC;KACjB,CAAC;CACH;AAED,MAAM,WAAW,iCAAiC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA0CD,wBAAgB,0BAA0B,CAAC,OAAO,GAAE,iCAAsC,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,oBAAoB,CAgE/H;AAMD,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAkCjF"}
@@ -0,0 +1,82 @@
1
+ import type { Database } from "bun:sqlite";
2
+ export declare const LOCAL_USAGE_LEDGER_SCHEMA_VERSION = 1;
3
+ export interface UsageLedgerQuotaInput {
4
+ max_tasks?: number;
5
+ max_projects?: number;
6
+ max_runs?: number;
7
+ max_commands?: number;
8
+ max_tokens?: number;
9
+ max_cost_usd?: number;
10
+ max_storage_bytes?: number;
11
+ }
12
+ export interface UsageLedgerOptions {
13
+ project_id?: string;
14
+ agent_id?: string;
15
+ since?: string;
16
+ until?: string;
17
+ generated_at?: string;
18
+ quotas?: UsageLedgerQuotaInput;
19
+ }
20
+ export interface UsageLedgerQuotaResult {
21
+ name: keyof UsageLedgerQuotaInput;
22
+ limit: number;
23
+ used: number;
24
+ remaining: number;
25
+ exceeded: boolean;
26
+ }
27
+ export interface UsageLedgerReport {
28
+ schema_version: number;
29
+ local_only: true;
30
+ no_network: true;
31
+ generated_at: string;
32
+ scope: {
33
+ project_id: string | null;
34
+ agent_id: string | null;
35
+ since: string | null;
36
+ until: string | null;
37
+ };
38
+ counts: {
39
+ tasks: number;
40
+ projects: number;
41
+ runs: number;
42
+ commands: number;
43
+ artifacts: number;
44
+ traces: number;
45
+ metadata_records: number;
46
+ };
47
+ durations: {
48
+ completed_run_ms: number;
49
+ open_run_ms: number;
50
+ trace_ms: number;
51
+ total_observed_ms: number;
52
+ };
53
+ usage: {
54
+ task_tokens: number;
55
+ trace_tokens: number;
56
+ metadata_tokens: number;
57
+ total_tokens: number;
58
+ task_cost_usd: number;
59
+ trace_cost_usd: number;
60
+ metadata_cost_usd: number;
61
+ total_cost_usd: number;
62
+ };
63
+ storage: {
64
+ artifact_bytes: number;
65
+ evidence_bytes: number;
66
+ };
67
+ quota: {
68
+ simulated: boolean;
69
+ limits: UsageLedgerQuotaResult[];
70
+ exceeded: string[];
71
+ allowed: boolean;
72
+ };
73
+ redaction: {
74
+ raw_commands_included: false;
75
+ raw_artifact_paths_included: false;
76
+ aggregate_only: true;
77
+ };
78
+ sources: string[];
79
+ }
80
+ export declare function createLocalUsageLedger(options?: UsageLedgerOptions, db?: Database): UsageLedgerReport;
81
+ export declare function renderLocalUsageLedgerMarkdown(report: UsageLedgerReport): string;
82
+ //# sourceMappingURL=usage-ledger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage-ledger.d.ts","sourceRoot":"","sources":["../../src/lib/usage-ledger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAG7D,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,qBAAqB,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KACtB,CAAC;IACF,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,SAAS,EAAE;QACT,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,OAAO,EAAE;QACP,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,KAAK,EAAE;QACL,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,sBAAsB,EAAE,CAAC;QACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,SAAS,EAAE;QACT,qBAAqB,EAAE,KAAK,CAAC;QAC7B,2BAA2B,EAAE,KAAK,CAAC;QACnC,cAAc,EAAE,IAAI,CAAC;KACtB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAwMD,wBAAgB,sBAAsB,CAAC,OAAO,GAAE,kBAAuB,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,iBAAiB,CAyKzG;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAkChF"}
@@ -0,0 +1,38 @@
1
+ export interface WorkflowPromptArgument {
2
+ name: string;
3
+ description: string;
4
+ required: boolean;
5
+ }
6
+ export interface WorkflowPromptDefinition {
7
+ id: string;
8
+ title: string;
9
+ description: string;
10
+ arguments: WorkflowPromptArgument[];
11
+ tags: string[];
12
+ template: string;
13
+ }
14
+ export interface WorkflowPromptRenderInput {
15
+ objective?: string;
16
+ task_id?: string;
17
+ agent_id?: string;
18
+ context?: string;
19
+ }
20
+ export interface WorkflowPromptRender {
21
+ id: string;
22
+ title: string;
23
+ description: string;
24
+ local_only: true;
25
+ messages: Array<{
26
+ role: "user";
27
+ content: {
28
+ type: "text";
29
+ text: string;
30
+ };
31
+ }>;
32
+ }
33
+ export declare const WORKFLOW_PROMPTS: WorkflowPromptDefinition[];
34
+ export declare function listWorkflowPrompts(): WorkflowPromptDefinition[];
35
+ export declare function getWorkflowPrompt(id: string): WorkflowPromptDefinition | null;
36
+ export declare function renderWorkflowPrompt(id: string, input?: WorkflowPromptRenderInput): WorkflowPromptRender;
37
+ export declare function renderWorkflowPromptMarkdown(id: string, input?: WorkflowPromptRenderInput): string;
38
+ //# sourceMappingURL=workflow-prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-prompts.d.ts","sourceRoot":"","sources":["../../src/lib/workflow-prompts.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,sBAAsB,EAAE,CAAC;IACpC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,IAAI,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;CAC5E;AASD,eAAO,MAAM,gBAAgB,EAAE,wBAAwB,EAiEtD,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,wBAAwB,EAAE,CAEhE;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,wBAAwB,GAAG,IAAI,CAG7E;AAYD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,yBAA8B,GAAG,oBAAoB,CAgB5G;AAED,wBAAgB,4BAA4B,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,yBAA8B,GAAG,MAAM,CAWtG"}