@hasna/todos 0.11.44 → 0.11.45
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/README.md +573 -11
- package/dist/cli/commands/agent-reliability-commands.d.ts +3 -0
- package/dist/cli/commands/agent-reliability-commands.d.ts.map +1 -0
- package/dist/cli/commands/audit-ledger-commands.d.ts +3 -0
- package/dist/cli/commands/audit-ledger-commands.d.ts.map +1 -0
- package/dist/cli/commands/capacity-commands.d.ts +3 -0
- package/dist/cli/commands/capacity-commands.d.ts.map +1 -0
- package/dist/cli/commands/config-serve-commands.d.ts.map +1 -1
- package/dist/cli/commands/knowledge-commands.d.ts +3 -0
- package/dist/cli/commands/knowledge-commands.d.ts.map +1 -0
- package/dist/cli/commands/local-snapshot-commands.d.ts +3 -0
- package/dist/cli/commands/local-snapshot-commands.d.ts.map +1 -0
- package/dist/cli/commands/machines.d.ts.map +1 -1
- package/dist/cli/commands/mcp-hooks-commands.d.ts.map +1 -1
- package/dist/cli/commands/onboarding-commands.d.ts +3 -0
- package/dist/cli/commands/onboarding-commands.d.ts.map +1 -0
- package/dist/cli/commands/project-commands.d.ts.map +1 -1
- package/dist/cli/commands/query-commands.d.ts.map +1 -1
- package/dist/cli/commands/release-compatibility-commands.d.ts +3 -0
- package/dist/cli/commands/release-compatibility-commands.d.ts.map +1 -0
- package/dist/cli/commands/retrospective-commands.d.ts +3 -0
- package/dist/cli/commands/retrospective-commands.d.ts.map +1 -0
- package/dist/cli/commands/review-queue-commands.d.ts +3 -0
- package/dist/cli/commands/review-queue-commands.d.ts.map +1 -0
- package/dist/cli/commands/risk-commands.d.ts +3 -0
- package/dist/cli/commands/risk-commands.d.ts.map +1 -0
- package/dist/cli/commands/roadmap-commands.d.ts +3 -0
- package/dist/cli/commands/roadmap-commands.d.ts.map +1 -0
- package/dist/cli/commands/sdk-fixture-commands.d.ts +3 -0
- package/dist/cli/commands/sdk-fixture-commands.d.ts.map +1 -0
- package/dist/cli/commands/task-commands.d.ts.map +1 -1
- package/dist/cli/index.js +37378 -20976
- package/dist/cli-mcp-parity.d.ts +1 -1
- package/dist/cli-mcp-parity.d.ts.map +1 -1
- package/dist/contracts.d.ts +19 -0
- package/dist/contracts.d.ts.map +1 -1
- package/dist/contracts.js +10136 -685
- package/dist/db/agent-metrics.d.ts +101 -0
- package/dist/db/agent-metrics.d.ts.map +1 -1
- package/dist/db/boards.d.ts +56 -0
- package/dist/db/boards.d.ts.map +1 -0
- package/dist/db/calendar.d.ts +52 -0
- package/dist/db/calendar.d.ts.map +1 -0
- package/dist/db/comments.d.ts.map +1 -1
- package/dist/db/handoffs.d.ts +25 -0
- package/dist/db/handoffs.d.ts.map +1 -1
- package/dist/db/machines.d.ts +19 -6
- package/dist/db/machines.d.ts.map +1 -1
- package/dist/db/migrations.d.ts.map +1 -1
- package/dist/db/project-knowledge.d.ts +88 -0
- package/dist/db/project-knowledge.d.ts.map +1 -0
- package/dist/db/project-risks.d.ts +139 -0
- package/dist/db/project-risks.d.ts.map +1 -0
- package/dist/db/retrospectives.d.ts +98 -0
- package/dist/db/retrospectives.d.ts.map +1 -0
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/task-crud.d.ts.map +1 -1
- package/dist/db/task-relations.d.ts +69 -9
- package/dist/db/task-relations.d.ts.map +1 -1
- package/dist/db/tasks.d.ts +6 -2
- package/dist/db/tasks.d.ts.map +1 -1
- package/dist/index.d.ts +60 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19879 -9586
- package/dist/json-contracts.d.ts.map +1 -1
- package/dist/lib/agent-replay-simulator.d.ts +66 -0
- package/dist/lib/agent-replay-simulator.d.ts.map +1 -0
- package/dist/lib/audit-ledger.d.ts +59 -0
- package/dist/lib/audit-ledger.d.ts.map +1 -0
- package/dist/lib/branch-work-plans.d.ts +46 -0
- package/dist/lib/branch-work-plans.d.ts.map +1 -0
- package/dist/lib/capacity-forecasts.d.ts +70 -0
- package/dist/lib/capacity-forecasts.d.ts.map +1 -0
- package/dist/lib/config.d.ts +179 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/context-packs.d.ts +26 -3
- package/dist/lib/context-packs.d.ts.map +1 -1
- package/dist/lib/event-hooks.d.ts +1 -1
- package/dist/lib/event-hooks.d.ts.map +1 -1
- package/dist/lib/external-issue-importers.d.ts +60 -0
- package/dist/lib/external-issue-importers.d.ts.map +1 -0
- package/dist/lib/extract.d.ts +57 -0
- package/dist/lib/extract.d.ts.map +1 -1
- package/dist/lib/local-bridge.d.ts +3 -1
- package/dist/lib/local-bridge.d.ts.map +1 -1
- package/dist/lib/local-extensions.d.ts +75 -0
- package/dist/lib/local-extensions.d.ts.map +1 -0
- package/dist/lib/local-notifications.d.ts +55 -0
- package/dist/lib/local-notifications.d.ts.map +1 -0
- package/dist/lib/local-snapshots.d.ts +66 -0
- package/dist/lib/local-snapshots.d.ts.map +1 -0
- package/dist/lib/mention-resolver.d.ts +43 -0
- package/dist/lib/mention-resolver.d.ts.map +1 -0
- package/dist/lib/natural-language-intake.d.ts +56 -0
- package/dist/lib/natural-language-intake.d.ts.map +1 -0
- package/dist/lib/onboarding-fixtures.d.ts +31 -0
- package/dist/lib/onboarding-fixtures.d.ts.map +1 -0
- package/dist/lib/public-release-gate.d.ts +7 -0
- package/dist/lib/public-release-gate.d.ts.map +1 -1
- package/dist/lib/redaction.d.ts +9 -0
- package/dist/lib/redaction.d.ts.map +1 -1
- package/dist/lib/release-compatibility.d.ts +59 -0
- package/dist/lib/release-compatibility.d.ts.map +1 -0
- package/dist/lib/release-notes.d.ts +81 -0
- package/dist/lib/release-notes.d.ts.map +1 -0
- package/dist/lib/retention-cleanup.d.ts +63 -0
- package/dist/lib/retention-cleanup.d.ts.map +1 -0
- package/dist/lib/review-queues.d.ts +98 -0
- package/dist/lib/review-queues.d.ts.map +1 -0
- package/dist/lib/roadmaps.d.ts +133 -0
- package/dist/lib/roadmaps.d.ts.map +1 -0
- package/dist/lib/sdk-integration-fixtures.d.ts +65 -0
- package/dist/lib/sdk-integration-fixtures.d.ts.map +1 -0
- package/dist/lib/terminal-notifications.d.ts +53 -0
- package/dist/lib/terminal-notifications.d.ts.map +1 -0
- package/dist/lib/todos-md.d.ts.map +1 -1
- package/dist/lib/workflow-prompts.d.ts +38 -0
- package/dist/lib/workflow-prompts.d.ts.map +1 -0
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +20947 -9892
- package/dist/mcp/token-utils.d.ts.map +1 -1
- package/dist/mcp/tools/code-tools.d.ts.map +1 -1
- package/dist/mcp/tools/machines.d.ts.map +1 -1
- package/dist/mcp/tools/task-adv-tools.d.ts.map +1 -1
- package/dist/mcp/tools/task-auto-tools.d.ts.map +1 -1
- package/dist/mcp/tools/task-crud.d.ts.map +1 -1
- package/dist/mcp/tools/task-meta-tools.d.ts.map +1 -1
- package/dist/mcp/tools/task-project-tools.d.ts.map +1 -1
- package/dist/mcp/tools/task-rel-tools.d.ts.map +1 -1
- package/dist/mcp/tools/task-resources.d.ts.map +1 -1
- package/dist/mcp/tools/workflow-prompts.d.ts +3 -0
- package/dist/mcp/tools/workflow-prompts.d.ts.map +1 -0
- package/dist/mcp.js +95 -2
- package/dist/registry.js +14455 -6049
- package/dist/release-provenance.json +3 -3
- package/dist/server/index.js +493 -123
- package/dist/storage.js +2353 -139
- package/dist/types/index.d.ts +214 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -14,6 +14,97 @@ export interface AgentMetrics {
|
|
|
14
14
|
export interface LeaderboardEntry extends AgentMetrics {
|
|
15
15
|
rank: number;
|
|
16
16
|
}
|
|
17
|
+
export interface AgentReliabilityScorecardOptions {
|
|
18
|
+
project_id?: string;
|
|
19
|
+
since?: string;
|
|
20
|
+
stale_after_hours?: number;
|
|
21
|
+
}
|
|
22
|
+
export type AgentReliabilityGrade = "excellent" | "good" | "watch" | "at_risk";
|
|
23
|
+
export interface AgentReliabilityScorecard {
|
|
24
|
+
schema_version: 1;
|
|
25
|
+
local_only: true;
|
|
26
|
+
no_network: true;
|
|
27
|
+
generated_at: string;
|
|
28
|
+
agent_id: string;
|
|
29
|
+
agent_name: string;
|
|
30
|
+
scope: {
|
|
31
|
+
project_id: string | null;
|
|
32
|
+
since: string | null;
|
|
33
|
+
stale_after_hours: number;
|
|
34
|
+
};
|
|
35
|
+
score: number;
|
|
36
|
+
grade: AgentReliabilityGrade;
|
|
37
|
+
components: {
|
|
38
|
+
delivery: number;
|
|
39
|
+
verification: number;
|
|
40
|
+
run_reliability: number;
|
|
41
|
+
lock_hygiene: number;
|
|
42
|
+
retry_discipline: number;
|
|
43
|
+
handoff_hygiene: number;
|
|
44
|
+
};
|
|
45
|
+
signals: {
|
|
46
|
+
tasks_completed: number;
|
|
47
|
+
tasks_failed: number;
|
|
48
|
+
tasks_in_progress: number;
|
|
49
|
+
completion_rate: number;
|
|
50
|
+
passed_verifications: number;
|
|
51
|
+
failed_verifications: number;
|
|
52
|
+
unknown_verifications: number;
|
|
53
|
+
completed_tasks_with_passed_verification: number;
|
|
54
|
+
verification_coverage: number;
|
|
55
|
+
runs_completed: number;
|
|
56
|
+
runs_failed: number;
|
|
57
|
+
run_success_rate: number;
|
|
58
|
+
stale_task_locks: number;
|
|
59
|
+
stale_resource_locks: number;
|
|
60
|
+
handoffs_created: number;
|
|
61
|
+
handoffs_with_task_refs: number;
|
|
62
|
+
handoffs_with_blockers: number;
|
|
63
|
+
retry_count: number;
|
|
64
|
+
max_retry_count: number;
|
|
65
|
+
};
|
|
66
|
+
evidence: {
|
|
67
|
+
failed_tasks: Array<{
|
|
68
|
+
id: string;
|
|
69
|
+
short_id: string | null;
|
|
70
|
+
title: string;
|
|
71
|
+
updated_at: string;
|
|
72
|
+
}>;
|
|
73
|
+
failed_verifications: Array<{
|
|
74
|
+
id: string;
|
|
75
|
+
task_id: string;
|
|
76
|
+
command: string;
|
|
77
|
+
run_at: string;
|
|
78
|
+
}>;
|
|
79
|
+
failed_runs: Array<{
|
|
80
|
+
id: string;
|
|
81
|
+
task_id: string;
|
|
82
|
+
title: string | null;
|
|
83
|
+
completed_at: string | null;
|
|
84
|
+
}>;
|
|
85
|
+
stale_locks: Array<{
|
|
86
|
+
kind: "task" | "resource";
|
|
87
|
+
id: string;
|
|
88
|
+
locked_at: string;
|
|
89
|
+
resource_type?: string;
|
|
90
|
+
}>;
|
|
91
|
+
};
|
|
92
|
+
recommendations: string[];
|
|
93
|
+
}
|
|
94
|
+
export interface AgentReliabilityExport {
|
|
95
|
+
schema_version: 1;
|
|
96
|
+
local_only: true;
|
|
97
|
+
no_network: true;
|
|
98
|
+
generated_at: string;
|
|
99
|
+
filters: {
|
|
100
|
+
agent_id: string | null;
|
|
101
|
+
project_id: string | null;
|
|
102
|
+
since: string | null;
|
|
103
|
+
stale_after_hours: number;
|
|
104
|
+
};
|
|
105
|
+
count: number;
|
|
106
|
+
scorecards: AgentReliabilityScorecard[];
|
|
107
|
+
}
|
|
17
108
|
/**
|
|
18
109
|
* Compute metrics for a single agent from task data.
|
|
19
110
|
*/
|
|
@@ -31,4 +122,14 @@ export declare function getLeaderboard(opts?: {
|
|
|
31
122
|
* Score a task completion (store review score in metadata).
|
|
32
123
|
*/
|
|
33
124
|
export declare function scoreTask(taskId: string, score: number, reviewerId?: string, db?: Database): void;
|
|
125
|
+
export declare function getAgentReliabilityScorecard(agentId: string, options?: AgentReliabilityScorecardOptions, db?: Database): AgentReliabilityScorecard | null;
|
|
126
|
+
export declare function listAgentReliabilityScorecards(options?: AgentReliabilityScorecardOptions & {
|
|
127
|
+
agent_id?: string;
|
|
128
|
+
limit?: number;
|
|
129
|
+
}, db?: Database): AgentReliabilityScorecard[];
|
|
130
|
+
export declare function createAgentReliabilityExport(options?: AgentReliabilityScorecardOptions & {
|
|
131
|
+
agent_id?: string;
|
|
132
|
+
limit?: number;
|
|
133
|
+
}, db?: Database): AgentReliabilityExport;
|
|
134
|
+
export declare function renderAgentReliabilityMarkdown(report: AgentReliabilityExport | AgentReliabilityScorecard): string;
|
|
34
135
|
//# sourceMappingURL=agent-metrics.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-metrics.d.ts","sourceRoot":"","sources":["../../src/db/agent-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"agent-metrics.d.ts","sourceRoot":"","sources":["../../src/db/agent-metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { BoardCard, BoardLane, BoardScope, BoardSnapshot, TaskBoard } from "../types/index.js";
|
|
3
|
+
export interface CreateTaskBoardInput {
|
|
4
|
+
name: string;
|
|
5
|
+
scope?: BoardScope;
|
|
6
|
+
project_id?: string;
|
|
7
|
+
task_list_id?: string;
|
|
8
|
+
plan_id?: string;
|
|
9
|
+
agent_id?: string;
|
|
10
|
+
lanes?: BoardLane[];
|
|
11
|
+
filters?: Record<string, unknown>;
|
|
12
|
+
}
|
|
13
|
+
export interface UpdateTaskBoardInput {
|
|
14
|
+
name?: string;
|
|
15
|
+
project_id?: string | null;
|
|
16
|
+
task_list_id?: string | null;
|
|
17
|
+
plan_id?: string | null;
|
|
18
|
+
agent_id?: string | null;
|
|
19
|
+
lanes?: BoardLane[];
|
|
20
|
+
filters?: Record<string, unknown>;
|
|
21
|
+
}
|
|
22
|
+
export interface TaskBoardQuery {
|
|
23
|
+
scope?: BoardScope;
|
|
24
|
+
project_id?: string;
|
|
25
|
+
task_list_id?: string;
|
|
26
|
+
plan_id?: string;
|
|
27
|
+
agent_id?: string;
|
|
28
|
+
limit?: number;
|
|
29
|
+
}
|
|
30
|
+
export interface MoveBoardCardInput {
|
|
31
|
+
board_id: string;
|
|
32
|
+
card_id: string;
|
|
33
|
+
lane_id?: string;
|
|
34
|
+
status?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface TaskBoardBundle {
|
|
37
|
+
kind: "hasna.todos.task-board";
|
|
38
|
+
schemaVersion: 1;
|
|
39
|
+
exportedAt: string;
|
|
40
|
+
boards: TaskBoard[];
|
|
41
|
+
}
|
|
42
|
+
export declare function createTaskBoard(input: CreateTaskBoardInput, db?: Database): TaskBoard;
|
|
43
|
+
export declare function getTaskBoard(idOrName: string, db?: Database): TaskBoard | null;
|
|
44
|
+
export declare function listTaskBoards(query?: TaskBoardQuery, db?: Database): TaskBoard[];
|
|
45
|
+
export declare function updateTaskBoard(idOrName: string, input: UpdateTaskBoardInput, db?: Database): TaskBoard;
|
|
46
|
+
export declare function deleteTaskBoard(idOrName: string, db?: Database): boolean;
|
|
47
|
+
export declare function buildTaskBoardSnapshot(idOrBoard: string | TaskBoard, db?: Database): BoardSnapshot;
|
|
48
|
+
export declare function moveBoardCard(input: MoveBoardCardInput, db?: Database): BoardCard;
|
|
49
|
+
export declare function renderTaskBoard(snapshot: BoardSnapshot): string;
|
|
50
|
+
export declare function exportTaskBoardBundle(idOrName?: string, db?: Database): TaskBoardBundle;
|
|
51
|
+
export declare function importTaskBoardBundle(bundle: TaskBoardBundle, db?: Database): {
|
|
52
|
+
inserted: number;
|
|
53
|
+
updated: number;
|
|
54
|
+
skipped: number;
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=boards.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boards.d.ts","sourceRoot":"","sources":["../../src/db/boards.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { CalendarEvent, CalendarEventKind, LocalCalendarItem } from "../types/index.js";
|
|
3
|
+
export interface CreateCalendarItemInput {
|
|
4
|
+
kind?: CalendarEventKind;
|
|
5
|
+
title: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
starts_at: string;
|
|
8
|
+
ends_at?: string;
|
|
9
|
+
timezone?: string;
|
|
10
|
+
project_id?: string;
|
|
11
|
+
task_id?: string;
|
|
12
|
+
plan_id?: string;
|
|
13
|
+
run_id?: string;
|
|
14
|
+
recurrence_rule?: string;
|
|
15
|
+
metadata?: Record<string, unknown>;
|
|
16
|
+
}
|
|
17
|
+
export interface CalendarQuery {
|
|
18
|
+
project_id?: string;
|
|
19
|
+
task_id?: string;
|
|
20
|
+
plan_id?: string;
|
|
21
|
+
run_id?: string;
|
|
22
|
+
kind?: CalendarEventKind;
|
|
23
|
+
from?: string;
|
|
24
|
+
to?: string;
|
|
25
|
+
include_completed?: boolean;
|
|
26
|
+
include_runs?: boolean;
|
|
27
|
+
include_sla?: boolean;
|
|
28
|
+
include_local?: boolean;
|
|
29
|
+
limit?: number;
|
|
30
|
+
}
|
|
31
|
+
export interface IcsExportOptions extends CalendarQuery {
|
|
32
|
+
calendar_name?: string;
|
|
33
|
+
product_id?: string;
|
|
34
|
+
redact?: boolean;
|
|
35
|
+
generated_at?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface IcsImportResult {
|
|
38
|
+
imported: number;
|
|
39
|
+
skipped: number;
|
|
40
|
+
items: LocalCalendarItem[];
|
|
41
|
+
}
|
|
42
|
+
export declare function createCalendarItem(input: CreateCalendarItemInput, db?: Database): LocalCalendarItem;
|
|
43
|
+
export declare function getCalendarItem(id: string, db?: Database): LocalCalendarItem | null;
|
|
44
|
+
export declare function listCalendarItems(query?: CalendarQuery, db?: Database): LocalCalendarItem[];
|
|
45
|
+
export declare function listCalendarEvents(query?: CalendarQuery, db?: Database): CalendarEvent[];
|
|
46
|
+
export declare function exportCalendarIcs(options?: IcsExportOptions, db?: Database): {
|
|
47
|
+
filename: string;
|
|
48
|
+
content: string;
|
|
49
|
+
events: CalendarEvent[];
|
|
50
|
+
};
|
|
51
|
+
export declare function importCalendarIcs(content: string, db?: Database): IcsImportResult;
|
|
52
|
+
//# sourceMappingURL=calendar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/db/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,iBAAiB,EAA8B,MAAM,mBAAmB,CAAC;AAKzH,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,iBAAiB,EAAE,CAAC;CAC5B;AA6GD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,iBAAiB,CA6BnG;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,iBAAiB,GAAG,IAAI,CASnF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,GAAE,aAAkB,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,iBAAiB,EAAE,CAgB/F;AAED,wBAAgB,kBAAkB,CAAC,KAAK,GAAE,aAAkB,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,aAAa,EAAE,CAgC5F;AAsDD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,gBAAqB,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,aAAa,EAAE,CAAA;CAAE,CAoC/I;AAmBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,eAAe,CAgCjF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../src/db/comments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../src/db/comments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMzE,wBAAgB,UAAU,CACxB,KAAK,EAAE,kBAAkB,EACzB,EAAE,CAAC,EAAE,QAAQ,GACZ,WAAW,CA2Bb;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,EAChB,EAAE,CAAC,EAAE,QAAQ,GACZ,WAAW,CAEb;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,IAAI,CAKxE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,WAAW,EAAE,CAOzE;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,EAC1B,EAAE,CAAC,EAAE,QAAQ,GACZ,WAAW,CAQb;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAIhE"}
|
package/dist/db/handoffs.d.ts
CHANGED
|
@@ -42,7 +42,32 @@ export interface CreateSessionRecoveryHandoffInput {
|
|
|
42
42
|
reason?: string;
|
|
43
43
|
limit?: number;
|
|
44
44
|
}
|
|
45
|
+
export interface HandoffBundle {
|
|
46
|
+
schemaVersion: 1;
|
|
47
|
+
kind: "hasna.todos.handoff";
|
|
48
|
+
exported_at: string;
|
|
49
|
+
handoff: Handoff;
|
|
50
|
+
references: {
|
|
51
|
+
tasks: Array<Record<string, unknown>>;
|
|
52
|
+
files: Array<Record<string, unknown>>;
|
|
53
|
+
runs: Array<Record<string, unknown>>;
|
|
54
|
+
verifications: Array<Record<string, unknown>>;
|
|
55
|
+
commits: Array<Record<string, unknown>>;
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
export interface ImportHandoffBundleResult {
|
|
59
|
+
applied: boolean;
|
|
60
|
+
created: boolean;
|
|
61
|
+
existing: boolean;
|
|
62
|
+
handoff_id: string;
|
|
63
|
+
summary: string;
|
|
64
|
+
warnings: string[];
|
|
65
|
+
}
|
|
45
66
|
export declare function createHandoff(input: CreateHandoffInput, db?: Database): Handoff;
|
|
67
|
+
export declare function exportHandoffBundle(id: string, db?: Database, exportedAt?: Date): HandoffBundle;
|
|
68
|
+
export declare function importHandoffBundle(bundle: HandoffBundle, options?: {
|
|
69
|
+
apply?: boolean;
|
|
70
|
+
}, db?: Database): ImportHandoffBundleResult;
|
|
46
71
|
export declare function listHandoffs(projectIdOrOptions?: string | ListHandoffsOptions, limitOrDb?: number | Database, maybeDb?: Database): Handoff[];
|
|
47
72
|
export declare function getHandoff(id: string, db?: Database): Handoff | null;
|
|
48
73
|
export declare function acknowledgeHandoff(id: string, agentId: string, db?: Database): Handoff;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoffs.d.ts","sourceRoot":"","sources":["../../src/db/handoffs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAI7D,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAkC/E;AAoCD,wBAAgB,YAAY,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,mBAAmB,EAAE,SAAS,GAAE,MAAM,GAAG,QAAa,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,EAAE,CAwBhJ;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAMpE;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAStF;AAED,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CASpG;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,iCAAiC,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAyD7G"}
|
|
1
|
+
{"version":3,"file":"handoffs.d.ts","sourceRoot":"","sources":["../../src/db/handoffs.ts"],"names":[],"mappings":"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"}
|
package/dist/db/machines.d.ts
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
import type { Database } from "bun:sqlite";
|
|
2
|
-
import type { Machine } from "../types/index.js";
|
|
2
|
+
import type { Machine, MachineTopologyDiagnostics } from "../types/index.js";
|
|
3
|
+
export interface MachineTopologyOptions {
|
|
4
|
+
hostname?: string;
|
|
5
|
+
platform?: string;
|
|
6
|
+
ssh_address?: string;
|
|
7
|
+
primary?: boolean;
|
|
8
|
+
tailscale_name?: string;
|
|
9
|
+
tailscale_ip?: string;
|
|
10
|
+
lan_address?: string;
|
|
11
|
+
workspace_path?: string;
|
|
12
|
+
git_root?: string;
|
|
13
|
+
arch?: string;
|
|
14
|
+
}
|
|
3
15
|
/**
|
|
4
16
|
* Get or create the local machine entry.
|
|
5
17
|
* Uses TODOS_MACHINE_NAME env var, falls back to OS hostname.
|
|
@@ -15,11 +27,12 @@ export declare function listMachines(db?: Database, includeArchived?: boolean):
|
|
|
15
27
|
/**
|
|
16
28
|
* Register a new machine or update an existing one.
|
|
17
29
|
*/
|
|
18
|
-
export declare function registerMachine(name: string, opts:
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
30
|
+
export declare function registerMachine(name: string, opts: MachineTopologyOptions, db?: Database): Machine;
|
|
31
|
+
export declare function updateMachineHeartbeat(idOrName?: string, opts?: MachineTopologyOptions, db?: Database): Machine;
|
|
32
|
+
export declare function getMachineTopologyDiagnostics(opts?: {
|
|
33
|
+
stale_minutes?: number;
|
|
34
|
+
include_archived?: boolean;
|
|
35
|
+
}, db?: Database, at?: Date): MachineTopologyDiagnostics;
|
|
23
36
|
/**
|
|
24
37
|
* Set a machine as the primary machine.
|
|
25
38
|
* Clears is_primary on all other machines.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machines.d.ts","sourceRoot":"","sources":["../../src/db/machines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"machines.d.ts","sourceRoot":"","sources":["../../src/db/machines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EACV,OAAO,EAGP,0BAA0B,EAG3B,MAAM,mBAAmB,CAAC;AAO3B,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAoED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAuB9D;AAMD,wBAAgB,YAAY,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,CAKlD;AAED,2CAA2C;AAC3C,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAIpE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAI5E;AAED,wBAAgB,YAAY,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,UAAQ,GAAG,OAAO,EAAE,CAO9E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,sBAAsB,EAC5B,EAAE,CAAC,EAAE,QAAQ,GACZ,OAAO,CAsCT;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,CAAC,EAAE,MAAM,EACjB,IAAI,GAAE,sBAA2B,EACjC,EAAE,CAAC,EAAE,QAAQ,GACZ,OAAO,CA2BT;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,GAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,EACjE,EAAE,CAAC,EAAE,QAAQ,EACb,EAAE,GAAE,IAAiB,GACpB,0BAA0B,CAoG5B;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAUtE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAI/D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAe9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAI1E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAehE;AAaD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,UAAQ,GAAG,IAAI,CAgBnE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,UA0oCtB,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import { type SnapshotType } from "./snapshots.js";
|
|
3
|
+
export type KnowledgeRecordType = "decision" | "architecture_note" | "tradeoff" | "context_snapshot";
|
|
4
|
+
export type KnowledgeExportFormat = "json" | "markdown";
|
|
5
|
+
export interface ProjectKnowledgeRecord {
|
|
6
|
+
id: string;
|
|
7
|
+
record_type: KnowledgeRecordType;
|
|
8
|
+
title: string;
|
|
9
|
+
content: string | null;
|
|
10
|
+
decision: string | null;
|
|
11
|
+
rationale: string | null;
|
|
12
|
+
alternatives: string[];
|
|
13
|
+
task_id: string | null;
|
|
14
|
+
project_id: string | null;
|
|
15
|
+
plan_id: string | null;
|
|
16
|
+
agent_id: string | null;
|
|
17
|
+
snapshot_id: string | null;
|
|
18
|
+
tags: string[];
|
|
19
|
+
metadata: Record<string, unknown>;
|
|
20
|
+
created_at: string;
|
|
21
|
+
updated_at: string;
|
|
22
|
+
}
|
|
23
|
+
export interface CreateKnowledgeRecordInput {
|
|
24
|
+
record_type: KnowledgeRecordType;
|
|
25
|
+
title: string;
|
|
26
|
+
content?: string;
|
|
27
|
+
decision?: string;
|
|
28
|
+
rationale?: string;
|
|
29
|
+
alternatives?: string[];
|
|
30
|
+
task_id?: string;
|
|
31
|
+
project_id?: string;
|
|
32
|
+
plan_id?: string;
|
|
33
|
+
agent_id?: string;
|
|
34
|
+
snapshot_id?: string;
|
|
35
|
+
tags?: string[];
|
|
36
|
+
metadata?: Record<string, unknown>;
|
|
37
|
+
}
|
|
38
|
+
export interface ListKnowledgeRecordsOptions {
|
|
39
|
+
record_type?: KnowledgeRecordType;
|
|
40
|
+
task_id?: string;
|
|
41
|
+
project_id?: string;
|
|
42
|
+
plan_id?: string;
|
|
43
|
+
agent_id?: string;
|
|
44
|
+
snapshot_id?: string;
|
|
45
|
+
tag?: string;
|
|
46
|
+
limit?: number;
|
|
47
|
+
}
|
|
48
|
+
export interface SearchKnowledgeRecordsOptions extends ListKnowledgeRecordsOptions {
|
|
49
|
+
query: string;
|
|
50
|
+
}
|
|
51
|
+
export interface CreateKnowledgeSnapshotInput {
|
|
52
|
+
title?: string;
|
|
53
|
+
snapshot_type?: SnapshotType;
|
|
54
|
+
summary: string;
|
|
55
|
+
task_id?: string;
|
|
56
|
+
project_id?: string;
|
|
57
|
+
agent_id?: string;
|
|
58
|
+
files_open?: string[];
|
|
59
|
+
attempts?: string[];
|
|
60
|
+
blockers?: string[];
|
|
61
|
+
next_steps?: string;
|
|
62
|
+
tags?: string[];
|
|
63
|
+
metadata?: Record<string, unknown>;
|
|
64
|
+
}
|
|
65
|
+
export interface KnowledgeExportReport {
|
|
66
|
+
schema_version: 1;
|
|
67
|
+
local_only: true;
|
|
68
|
+
no_network: true;
|
|
69
|
+
generated_at: string;
|
|
70
|
+
filters: Omit<ListKnowledgeRecordsOptions, "limit"> & {
|
|
71
|
+
query?: string | null;
|
|
72
|
+
};
|
|
73
|
+
count: number;
|
|
74
|
+
records: ProjectKnowledgeRecord[];
|
|
75
|
+
}
|
|
76
|
+
export declare function createKnowledgeRecord(input: CreateKnowledgeRecordInput, db?: Database): ProjectKnowledgeRecord;
|
|
77
|
+
export declare function getKnowledgeRecord(id: string, db?: Database): ProjectKnowledgeRecord | null;
|
|
78
|
+
export declare function listKnowledgeRecords(options?: ListKnowledgeRecordsOptions, db?: Database): ProjectKnowledgeRecord[];
|
|
79
|
+
export declare function searchKnowledgeRecords(options: SearchKnowledgeRecordsOptions, db?: Database): ProjectKnowledgeRecord[];
|
|
80
|
+
export declare function createKnowledgeSnapshot(input: CreateKnowledgeSnapshotInput, db?: Database): {
|
|
81
|
+
snapshot_id: string;
|
|
82
|
+
record: ProjectKnowledgeRecord;
|
|
83
|
+
};
|
|
84
|
+
export declare function createKnowledgeExportReport(options: ListKnowledgeRecordsOptions & {
|
|
85
|
+
query?: string;
|
|
86
|
+
}, db?: Database): KnowledgeExportReport;
|
|
87
|
+
export declare function renderKnowledgeExportMarkdown(report: KnowledgeExportReport): string;
|
|
88
|
+
//# sourceMappingURL=project-knowledge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-knowledge.d.ts","sourceRoot":"","sources":["../../src/db/project-knowledge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
export type ProjectRiskStatus = "open" | "mitigating" | "resolved" | "accepted";
|
|
3
|
+
export type ProjectRiskSeverity = "low" | "medium" | "high" | "critical";
|
|
4
|
+
export type ProjectRiskProbability = "low" | "medium" | "high";
|
|
5
|
+
export type ProjectHealthStatus = "healthy" | "watch" | "at_risk" | "critical";
|
|
6
|
+
export type RiskExportFormat = "json" | "markdown";
|
|
7
|
+
export interface ProjectRiskRecord {
|
|
8
|
+
id: string;
|
|
9
|
+
title: string;
|
|
10
|
+
description: string | null;
|
|
11
|
+
status: ProjectRiskStatus;
|
|
12
|
+
severity: ProjectRiskSeverity;
|
|
13
|
+
probability: ProjectRiskProbability;
|
|
14
|
+
owner: string | null;
|
|
15
|
+
mitigation: string | null;
|
|
16
|
+
due_at: string | null;
|
|
17
|
+
project_id: string | null;
|
|
18
|
+
plan_id: string | null;
|
|
19
|
+
task_id: string | null;
|
|
20
|
+
tags: string[];
|
|
21
|
+
metadata: Record<string, unknown>;
|
|
22
|
+
created_at: string;
|
|
23
|
+
updated_at: string;
|
|
24
|
+
closed_at: string | null;
|
|
25
|
+
}
|
|
26
|
+
export interface CreateRiskInput {
|
|
27
|
+
title: string;
|
|
28
|
+
description?: string;
|
|
29
|
+
status?: ProjectRiskStatus;
|
|
30
|
+
severity?: ProjectRiskSeverity;
|
|
31
|
+
probability?: ProjectRiskProbability;
|
|
32
|
+
owner?: string;
|
|
33
|
+
mitigation?: string;
|
|
34
|
+
due_at?: string;
|
|
35
|
+
project_id?: string;
|
|
36
|
+
plan_id?: string;
|
|
37
|
+
task_id?: string;
|
|
38
|
+
tags?: string[];
|
|
39
|
+
metadata?: Record<string, unknown>;
|
|
40
|
+
}
|
|
41
|
+
export interface UpdateRiskInput {
|
|
42
|
+
title?: string;
|
|
43
|
+
description?: string | null;
|
|
44
|
+
status?: ProjectRiskStatus;
|
|
45
|
+
severity?: ProjectRiskSeverity;
|
|
46
|
+
probability?: ProjectRiskProbability;
|
|
47
|
+
owner?: string | null;
|
|
48
|
+
mitigation?: string | null;
|
|
49
|
+
due_at?: string | null;
|
|
50
|
+
project_id?: string | null;
|
|
51
|
+
plan_id?: string | null;
|
|
52
|
+
task_id?: string | null;
|
|
53
|
+
tags?: string[];
|
|
54
|
+
metadata?: Record<string, unknown>;
|
|
55
|
+
}
|
|
56
|
+
export interface ListRisksOptions {
|
|
57
|
+
status?: ProjectRiskStatus;
|
|
58
|
+
severity?: ProjectRiskSeverity;
|
|
59
|
+
probability?: ProjectRiskProbability;
|
|
60
|
+
owner?: string;
|
|
61
|
+
project_id?: string;
|
|
62
|
+
plan_id?: string;
|
|
63
|
+
task_id?: string;
|
|
64
|
+
tag?: string;
|
|
65
|
+
include_closed?: boolean;
|
|
66
|
+
limit?: number;
|
|
67
|
+
}
|
|
68
|
+
export interface ProjectHealthReport {
|
|
69
|
+
schema_version: 1;
|
|
70
|
+
local_only: true;
|
|
71
|
+
no_network: true;
|
|
72
|
+
generated_at: string;
|
|
73
|
+
scope: "plan" | "project";
|
|
74
|
+
scope_id: string;
|
|
75
|
+
score: number;
|
|
76
|
+
status: ProjectHealthStatus;
|
|
77
|
+
components: {
|
|
78
|
+
total_tasks: number;
|
|
79
|
+
blocked_tasks: number;
|
|
80
|
+
overdue_tasks: number;
|
|
81
|
+
failed_checks: number;
|
|
82
|
+
failed_runs: number;
|
|
83
|
+
dependency_depth: number;
|
|
84
|
+
open_risks: number;
|
|
85
|
+
critical_risks: number;
|
|
86
|
+
overdue_risks: number;
|
|
87
|
+
};
|
|
88
|
+
penalties: Record<string, number>;
|
|
89
|
+
blocked: Array<{
|
|
90
|
+
id: string;
|
|
91
|
+
short_id: string | null;
|
|
92
|
+
title: string;
|
|
93
|
+
blockers: Array<{
|
|
94
|
+
id: string;
|
|
95
|
+
short_id: string | null;
|
|
96
|
+
title: string;
|
|
97
|
+
status: string;
|
|
98
|
+
}>;
|
|
99
|
+
}>;
|
|
100
|
+
overdue: Array<{
|
|
101
|
+
id: string;
|
|
102
|
+
short_id: string | null;
|
|
103
|
+
title: string;
|
|
104
|
+
due_at: string;
|
|
105
|
+
}>;
|
|
106
|
+
failed_checks: Array<{
|
|
107
|
+
id: string;
|
|
108
|
+
task_id: string;
|
|
109
|
+
command: string;
|
|
110
|
+
run_at: string;
|
|
111
|
+
}>;
|
|
112
|
+
failed_runs: Array<{
|
|
113
|
+
id: string;
|
|
114
|
+
task_id: string;
|
|
115
|
+
title: string | null;
|
|
116
|
+
completed_at: string | null;
|
|
117
|
+
}>;
|
|
118
|
+
risks: ProjectRiskRecord[];
|
|
119
|
+
recommendations: string[];
|
|
120
|
+
}
|
|
121
|
+
export interface RiskRegisterExport {
|
|
122
|
+
schema_version: 1;
|
|
123
|
+
local_only: true;
|
|
124
|
+
no_network: true;
|
|
125
|
+
generated_at: string;
|
|
126
|
+
filters: Omit<ListRisksOptions, "limit">;
|
|
127
|
+
count: number;
|
|
128
|
+
risks: ProjectRiskRecord[];
|
|
129
|
+
}
|
|
130
|
+
export declare function createRisk(input: CreateRiskInput, db?: Database): ProjectRiskRecord;
|
|
131
|
+
export declare function getRisk(id: string, db?: Database): ProjectRiskRecord | null;
|
|
132
|
+
export declare function updateRisk(id: string, input: UpdateRiskInput, db?: Database): ProjectRiskRecord;
|
|
133
|
+
export declare function closeRisk(id: string, status?: "resolved" | "accepted", db?: Database): ProjectRiskRecord;
|
|
134
|
+
export declare function listRisks(options?: ListRisksOptions, db?: Database): ProjectRiskRecord[];
|
|
135
|
+
export declare function scorePlanHealth(planId: string, db?: Database): ProjectHealthReport;
|
|
136
|
+
export declare function scoreProjectHealth(projectId: string, db?: Database): ProjectHealthReport;
|
|
137
|
+
export declare function createRiskRegisterExport(options?: ListRisksOptions, db?: Database): RiskRegisterExport;
|
|
138
|
+
export declare function renderRiskRegisterMarkdown(report: RiskRegisterExport): string;
|
|
139
|
+
//# sourceMappingURL=project-risks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-risks.d.ts","sourceRoot":"","sources":["../../src/db/project-risks.ts"],"names":[],"mappings":"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"}
|