@yattalo/task-system 0.1.0
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 +66 -0
- package/dist/commands/dashboard.d.ts +7 -0
- package/dist/commands/dashboard.d.ts.map +1 -0
- package/dist/commands/dashboard.js +30 -0
- package/dist/commands/dashboard.js.map +1 -0
- package/dist/commands/init.d.ts +8 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +316 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/kanban.d.ts +7 -0
- package/dist/commands/kanban.d.ts.map +1 -0
- package/dist/commands/kanban.js +68 -0
- package/dist/commands/kanban.js.map +1 -0
- package/dist/commands/report.d.ts +8 -0
- package/dist/commands/report.d.ts.map +1 -0
- package/dist/commands/report.js +60 -0
- package/dist/commands/report.js.map +1 -0
- package/dist/commands/seed.d.ts +6 -0
- package/dist/commands/seed.d.ts.map +1 -0
- package/dist/commands/seed.js +30 -0
- package/dist/commands/seed.js.map +1 -0
- package/dist/commands/status.d.ts +6 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +62 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/generators/agent-ops-scripts.d.ts +8 -0
- package/dist/generators/agent-ops-scripts.d.ts.map +1 -0
- package/dist/generators/agent-ops-scripts.js +843 -0
- package/dist/generators/agent-ops-scripts.js.map +1 -0
- package/dist/generators/agent-ops.d.ts +6 -0
- package/dist/generators/agent-ops.d.ts.map +1 -0
- package/dist/generators/agent-ops.js +290 -0
- package/dist/generators/agent-ops.js.map +1 -0
- package/dist/generators/claude-hooks.d.ts +6 -0
- package/dist/generators/claude-hooks.d.ts.map +1 -0
- package/dist/generators/claude-hooks.js +260 -0
- package/dist/generators/claude-hooks.js.map +1 -0
- package/dist/generators/cli-aliases.d.ts +6 -0
- package/dist/generators/cli-aliases.d.ts.map +1 -0
- package/dist/generators/cli-aliases.js +187 -0
- package/dist/generators/cli-aliases.js.map +1 -0
- package/dist/generators/dashboard.d.ts +6 -0
- package/dist/generators/dashboard.d.ts.map +1 -0
- package/dist/generators/dashboard.js +732 -0
- package/dist/generators/dashboard.js.map +1 -0
- package/dist/generators/git-hook.d.ts +6 -0
- package/dist/generators/git-hook.d.ts.map +1 -0
- package/dist/generators/git-hook.js +163 -0
- package/dist/generators/git-hook.js.map +1 -0
- package/dist/generators/http.d.ts +6 -0
- package/dist/generators/http.d.ts.map +1 -0
- package/dist/generators/http.js +175 -0
- package/dist/generators/http.js.map +1 -0
- package/dist/generators/orchestrator.d.ts +6 -0
- package/dist/generators/orchestrator.d.ts.map +1 -0
- package/dist/generators/orchestrator.js +391 -0
- package/dist/generators/orchestrator.js.map +1 -0
- package/dist/generators/schema.d.ts +8 -0
- package/dist/generators/schema.d.ts.map +1 -0
- package/dist/generators/schema.js +470 -0
- package/dist/generators/schema.js.map +1 -0
- package/dist/generators/skill.d.ts +6 -0
- package/dist/generators/skill.d.ts.map +1 -0
- package/dist/generators/skill.js +147 -0
- package/dist/generators/skill.js.map +1 -0
- package/dist/generators/slash-commands.d.ts +6 -0
- package/dist/generators/slash-commands.d.ts.map +1 -0
- package/dist/generators/slash-commands.js +268 -0
- package/dist/generators/slash-commands.js.map +1 -0
- package/dist/generators/tasks.d.ts +6 -0
- package/dist/generators/tasks.d.ts.map +1 -0
- package/dist/generators/tasks.js +451 -0
- package/dist/generators/tasks.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +54 -0
- package/dist/index.js.map +1 -0
- package/dist/presets/research.d.ts +3 -0
- package/dist/presets/research.d.ts.map +1 -0
- package/dist/presets/research.js +56 -0
- package/dist/presets/research.js.map +1 -0
- package/dist/presets/software.d.ts +3 -0
- package/dist/presets/software.d.ts.map +1 -0
- package/dist/presets/software.js +56 -0
- package/dist/presets/software.js.map +1 -0
- package/dist/utils/detect.d.ts +3 -0
- package/dist/utils/detect.d.ts.map +1 -0
- package/dist/utils/detect.js +76 -0
- package/dist/utils/detect.js.map +1 -0
- package/dist/utils/merge.d.ts +14 -0
- package/dist/utils/merge.d.ts.map +1 -0
- package/dist/utils/merge.js +43 -0
- package/dist/utils/merge.js.map +1 -0
- package/package.json +39 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/generators/dashboard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-hook.d.ts","sourceRoot":"","sources":["../../src/generators/git-hook.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,wBAAgB,eAAe,CAAC,GAAG,EAAE,gBAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAyItF"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// Generator: Layer 5 — Git Post-Commit Hook
|
|
3
|
+
// Generates scripts/auto-task-tracker.js
|
|
4
|
+
// ============================================================
|
|
5
|
+
import { writeFileSync, chmodSync, existsSync } from "node:fs";
|
|
6
|
+
import { join } from "node:path";
|
|
7
|
+
import { getTableName } from "@yattalo/task-system-core";
|
|
8
|
+
export function generateGitHook(ctx) {
|
|
9
|
+
const { config, targetDir, detection, dryRun } = ctx;
|
|
10
|
+
const tableName = getTableName(config);
|
|
11
|
+
const pattern = config.taskIdPattern;
|
|
12
|
+
const lines = [];
|
|
13
|
+
lines.push(`#!/usr/bin/env node`);
|
|
14
|
+
lines.push(`// ============================================================`);
|
|
15
|
+
lines.push(`// Auto Task Tracker — Git post-commit hook`);
|
|
16
|
+
lines.push(`// Generated by @yattalo/task-system for ${config.projectName}`);
|
|
17
|
+
lines.push(`// ============================================================`);
|
|
18
|
+
lines.push(``);
|
|
19
|
+
lines.push(`const { execSync } = require("child_process");`);
|
|
20
|
+
lines.push(``);
|
|
21
|
+
lines.push(`// Task ID pattern from config`);
|
|
22
|
+
lines.push(`const TASK_ID_PATTERN = /${pattern}/g;`);
|
|
23
|
+
lines.push(``);
|
|
24
|
+
lines.push(`// Status keywords (supports English + Italian)`);
|
|
25
|
+
lines.push(`const DONE_KEYWORDS = [`);
|
|
26
|
+
lines.push(` "done", "complete", "completed", "finish", "finished", "close", "closed",`);
|
|
27
|
+
lines.push(` "fix", "fixed", "resolve", "resolved",`);
|
|
28
|
+
lines.push(` "fatto", "completato", "finito", "chiuso", "risolto",`);
|
|
29
|
+
lines.push(`];`);
|
|
30
|
+
lines.push(`const START_KEYWORDS = [`);
|
|
31
|
+
lines.push(` "start", "started", "begin", "wip", "working",`);
|
|
32
|
+
lines.push(` "inizio", "iniziato", "lavoro",`);
|
|
33
|
+
lines.push(`];`);
|
|
34
|
+
lines.push(``);
|
|
35
|
+
lines.push(`function main() {`);
|
|
36
|
+
lines.push(` try {`);
|
|
37
|
+
lines.push(` // Get the last commit message`);
|
|
38
|
+
lines.push(` const message = execSync("git log -1 --pretty=%B", { encoding: "utf-8" }).trim();`);
|
|
39
|
+
lines.push(` const hash = execSync("git log -1 --pretty=%H", { encoding: "utf-8" }).trim().slice(0, 8);`);
|
|
40
|
+
lines.push(` const filesRaw = execSync("git diff-tree --no-commit-id --name-only -r HEAD", { encoding: "utf-8" }).trim();`);
|
|
41
|
+
lines.push(` const files = filesRaw ? filesRaw.split("\\n") : [];`);
|
|
42
|
+
lines.push(``);
|
|
43
|
+
lines.push(` // Extract task IDs from commit message`);
|
|
44
|
+
lines.push(` const taskIds = [...new Set(message.match(TASK_ID_PATTERN) || [])];`);
|
|
45
|
+
lines.push(` if (taskIds.length === 0) return;`);
|
|
46
|
+
lines.push(``);
|
|
47
|
+
lines.push(` const lowerMsg = message.toLowerCase();`);
|
|
48
|
+
lines.push(` const isDone = DONE_KEYWORDS.some((k) => lowerMsg.includes(k));`);
|
|
49
|
+
lines.push(` const isStart = START_KEYWORDS.some((k) => lowerMsg.includes(k));`);
|
|
50
|
+
lines.push(``);
|
|
51
|
+
lines.push(` // Detect agent from git config or environment`);
|
|
52
|
+
lines.push(` const agent = detectAgent();`);
|
|
53
|
+
lines.push(``);
|
|
54
|
+
lines.push(` for (const taskId of taskIds) {`);
|
|
55
|
+
lines.push(` console.log(\`[task-tracker] Processing \${taskId} (commit: \${hash})\`);`);
|
|
56
|
+
lines.push(``);
|
|
57
|
+
lines.push(` // Add commit to task`);
|
|
58
|
+
lines.push(` try {`);
|
|
59
|
+
lines.push(` execSync(`);
|
|
60
|
+
lines.push(` \`npx convex run taskSystem/tasks:addCommit '\${JSON.stringify({`);
|
|
61
|
+
lines.push(` taskId,`);
|
|
62
|
+
lines.push(` hash,`);
|
|
63
|
+
lines.push(` message: message.slice(0, 200),`);
|
|
64
|
+
lines.push(` filesChanged: files.slice(0, 20),`);
|
|
65
|
+
lines.push(` agent,`);
|
|
66
|
+
lines.push(` })}'\`,`);
|
|
67
|
+
lines.push(` { encoding: "utf-8", stdio: "pipe" }`);
|
|
68
|
+
lines.push(` );`);
|
|
69
|
+
lines.push(` } catch {`);
|
|
70
|
+
lines.push(` // addCommit may not exist if commitTracking is disabled`);
|
|
71
|
+
lines.push(` }`);
|
|
72
|
+
lines.push(``);
|
|
73
|
+
lines.push(` // Auto status transition`);
|
|
74
|
+
lines.push(` if (isDone) {`);
|
|
75
|
+
lines.push(` try {`);
|
|
76
|
+
lines.push(` execSync(`);
|
|
77
|
+
lines.push(` \`npx convex run taskSystem/tasks:changeStatus '\${JSON.stringify({`);
|
|
78
|
+
lines.push(` taskId,`);
|
|
79
|
+
lines.push(` newStatus: "done",`);
|
|
80
|
+
lines.push(` note: \`Auto-completed by commit \${hash}\`,`);
|
|
81
|
+
lines.push(` agent,`);
|
|
82
|
+
lines.push(` })}'\`,`);
|
|
83
|
+
lines.push(` { encoding: "utf-8", stdio: "pipe" }`);
|
|
84
|
+
lines.push(` );`);
|
|
85
|
+
lines.push(` console.log(\`[task-tracker] \${taskId} → done\`);`);
|
|
86
|
+
lines.push(` } catch (e) {`);
|
|
87
|
+
lines.push(` console.log(\`[task-tracker] Failed to update \${taskId}: \${e.message}\`);`);
|
|
88
|
+
lines.push(` }`);
|
|
89
|
+
lines.push(` } else if (isStart) {`);
|
|
90
|
+
lines.push(` try {`);
|
|
91
|
+
lines.push(` execSync(`);
|
|
92
|
+
lines.push(` \`npx convex run taskSystem/tasks:changeStatus '\${JSON.stringify({`);
|
|
93
|
+
lines.push(` taskId,`);
|
|
94
|
+
lines.push(` newStatus: "in_progress",`);
|
|
95
|
+
lines.push(` note: \`Auto-started by commit \${hash}\`,`);
|
|
96
|
+
lines.push(` agent,`);
|
|
97
|
+
lines.push(` })}'\`,`);
|
|
98
|
+
lines.push(` { encoding: "utf-8", stdio: "pipe" }`);
|
|
99
|
+
lines.push(` );`);
|
|
100
|
+
lines.push(` console.log(\`[task-tracker] \${taskId} → in_progress\`);`);
|
|
101
|
+
lines.push(` } catch (e) {`);
|
|
102
|
+
lines.push(` console.log(\`[task-tracker] Failed to update \${taskId}: \${e.message}\`);`);
|
|
103
|
+
lines.push(` }`);
|
|
104
|
+
lines.push(` }`);
|
|
105
|
+
lines.push(` }`);
|
|
106
|
+
lines.push(` } catch (e) {`);
|
|
107
|
+
lines.push(` // Never block commits — fail silently`);
|
|
108
|
+
lines.push(` console.log(\`[task-tracker] Warning: \${e.message}\`);`);
|
|
109
|
+
lines.push(` }`);
|
|
110
|
+
lines.push(`}`);
|
|
111
|
+
lines.push(``);
|
|
112
|
+
lines.push(`function detectAgent() {`);
|
|
113
|
+
lines.push(` // Check environment variables set by agent CLIs`);
|
|
114
|
+
lines.push(` if (process.env.CLAUDE_CODE) return "claude";`);
|
|
115
|
+
lines.push(` if (process.env.GEMINI_CLI) return "gemini";`);
|
|
116
|
+
lines.push(` if (process.env.CODEX_CLI) return "codex";`);
|
|
117
|
+
lines.push(``);
|
|
118
|
+
lines.push(` // Check git author`);
|
|
119
|
+
lines.push(` try {`);
|
|
120
|
+
lines.push(` const author = execSync("git log -1 --pretty=%an", { encoding: "utf-8" }).trim().toLowerCase();`);
|
|
121
|
+
lines.push(` if (author.includes("claude")) return "claude";`);
|
|
122
|
+
lines.push(` if (author.includes("gemini")) return "gemini";`);
|
|
123
|
+
lines.push(` if (author.includes("codex")) return "codex";`);
|
|
124
|
+
lines.push(` } catch {}`);
|
|
125
|
+
lines.push(``);
|
|
126
|
+
lines.push(` return "unknown";`);
|
|
127
|
+
lines.push(`}`);
|
|
128
|
+
lines.push(``);
|
|
129
|
+
lines.push(`main();`);
|
|
130
|
+
const content = lines.join("\n");
|
|
131
|
+
if (!dryRun) {
|
|
132
|
+
const scriptPath = join(targetDir, "scripts", "auto-task-tracker.js");
|
|
133
|
+
writeFileSync(scriptPath, content, "utf-8");
|
|
134
|
+
chmodSync(scriptPath, 0o755);
|
|
135
|
+
// Install git hook
|
|
136
|
+
installGitHook(targetDir, detection.hasHusky);
|
|
137
|
+
}
|
|
138
|
+
return { file: "scripts/auto-task-tracker.js", lines: lines.length };
|
|
139
|
+
}
|
|
140
|
+
function installGitHook(targetDir, hasHusky) {
|
|
141
|
+
const hookContent = `#!/bin/sh\nnode scripts/auto-task-tracker.js\n`;
|
|
142
|
+
if (hasHusky) {
|
|
143
|
+
const huskyDir = join(targetDir, ".husky");
|
|
144
|
+
if (existsSync(huskyDir)) {
|
|
145
|
+
const hookPath = join(huskyDir, "post-commit");
|
|
146
|
+
if (!existsSync(hookPath)) {
|
|
147
|
+
writeFileSync(hookPath, hookContent, "utf-8");
|
|
148
|
+
chmodSync(hookPath, 0o755);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
const hooksDir = join(targetDir, ".git", "hooks");
|
|
154
|
+
if (existsSync(hooksDir)) {
|
|
155
|
+
const hookPath = join(hooksDir, "post-commit");
|
|
156
|
+
if (!existsSync(hookPath)) {
|
|
157
|
+
writeFileSync(hookPath, hookContent, "utf-8");
|
|
158
|
+
chmodSync(hookPath, 0o755);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=git-hook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-hook.js","sourceRoot":"","sources":["../../src/generators/git-hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/generators/http.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,wBAAgB,YAAY,CAAC,GAAG,EAAE,gBAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAqLnF"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// Generator: Layer 3 — Convex HTTP API
|
|
3
|
+
// Generates convex/taskSystem/http.ts
|
|
4
|
+
// ============================================================
|
|
5
|
+
import { writeFileSync } from "node:fs";
|
|
6
|
+
import { join } from "node:path";
|
|
7
|
+
import { getTableName, hasSoftwareExtensions } from "@yattalo/task-system-core";
|
|
8
|
+
export function generateHttp(ctx) {
|
|
9
|
+
const { config, targetDir, dryRun } = ctx;
|
|
10
|
+
const tableName = getTableName(config);
|
|
11
|
+
const isSoftware = hasSoftwareExtensions(config);
|
|
12
|
+
const lines = [];
|
|
13
|
+
lines.push(`// ============================================================`);
|
|
14
|
+
lines.push(`// Task System HTTP API — generated by @yattalo/task-system`);
|
|
15
|
+
lines.push(`// Project: ${config.projectName}`);
|
|
16
|
+
lines.push(`// ============================================================`);
|
|
17
|
+
lines.push(``);
|
|
18
|
+
lines.push(`import { httpRouter } from "convex/server";`);
|
|
19
|
+
lines.push(`import { httpAction } from "./_generated/server";`);
|
|
20
|
+
lines.push(`import { api } from "./_generated/api";`);
|
|
21
|
+
lines.push(``);
|
|
22
|
+
lines.push(`// NOTE: Import this router in your main convex/http.ts:`);
|
|
23
|
+
lines.push(`// import { taskSystemRoutes } from "./taskSystem/http";`);
|
|
24
|
+
lines.push(`// taskSystemRoutes.forEach((route) => http.route(route));`);
|
|
25
|
+
lines.push(`// Or merge manually.`);
|
|
26
|
+
lines.push(``);
|
|
27
|
+
lines.push(`const corsHeaders = {`);
|
|
28
|
+
lines.push(` "Access-Control-Allow-Origin": "*",`);
|
|
29
|
+
lines.push(` "Access-Control-Allow-Methods": "GET, POST, OPTIONS",`);
|
|
30
|
+
lines.push(` "Access-Control-Allow-Headers": "Content-Type",`);
|
|
31
|
+
lines.push(`};`);
|
|
32
|
+
lines.push(``);
|
|
33
|
+
lines.push(`function jsonResponse(data: unknown, status = 200): Response {`);
|
|
34
|
+
lines.push(` return new Response(JSON.stringify(data), {`);
|
|
35
|
+
lines.push(` status,`);
|
|
36
|
+
lines.push(` headers: { "Content-Type": "application/json", ...corsHeaders },`);
|
|
37
|
+
lines.push(` });`);
|
|
38
|
+
lines.push(`}`);
|
|
39
|
+
lines.push(``);
|
|
40
|
+
lines.push(`function errorResponse(message: string, status = 400): Response {`);
|
|
41
|
+
lines.push(` return jsonResponse({ error: message }, status);`);
|
|
42
|
+
lines.push(`}`);
|
|
43
|
+
lines.push(``);
|
|
44
|
+
// OPTIONS handler
|
|
45
|
+
lines.push(`const optionsHandler = httpAction(async () => {`);
|
|
46
|
+
lines.push(` return new Response(null, { status: 204, headers: corsHeaders });`);
|
|
47
|
+
lines.push(`});`);
|
|
48
|
+
lines.push(``);
|
|
49
|
+
// GET /api/tasks/list
|
|
50
|
+
lines.push(`const listTasks = httpAction(async (ctx, request) => {`);
|
|
51
|
+
lines.push(` const url = new URL(request.url);`);
|
|
52
|
+
lines.push(` const agent = url.searchParams.get("agent") || undefined;`);
|
|
53
|
+
lines.push(` const status = url.searchParams.get("status") || undefined;`);
|
|
54
|
+
lines.push(` const priority = url.searchParams.get("priority") || undefined;`);
|
|
55
|
+
lines.push(` const wave = url.searchParams.get("wave") ? Number(url.searchParams.get("wave")) : undefined;`);
|
|
56
|
+
lines.push(` const category = url.searchParams.get("category") || undefined;`);
|
|
57
|
+
lines.push(` const limit = url.searchParams.get("limit") ? Number(url.searchParams.get("limit")) : undefined;`);
|
|
58
|
+
lines.push(``);
|
|
59
|
+
lines.push(` const tasks = await ctx.runQuery(api.taskSystem.tasks.list, {`);
|
|
60
|
+
lines.push(` agent: agent as any,`);
|
|
61
|
+
lines.push(` status,`);
|
|
62
|
+
lines.push(` priority,`);
|
|
63
|
+
lines.push(` wave,`);
|
|
64
|
+
lines.push(` category,`);
|
|
65
|
+
lines.push(` limit,`);
|
|
66
|
+
lines.push(` });`);
|
|
67
|
+
lines.push(` return jsonResponse(tasks);`);
|
|
68
|
+
lines.push(`});`);
|
|
69
|
+
lines.push(``);
|
|
70
|
+
// GET /api/tasks/get
|
|
71
|
+
lines.push(`const getTask = httpAction(async (ctx, request) => {`);
|
|
72
|
+
lines.push(` const url = new URL(request.url);`);
|
|
73
|
+
lines.push(` const taskId = url.searchParams.get("taskId");`);
|
|
74
|
+
lines.push(` if (!taskId) return errorResponse("taskId is required");`);
|
|
75
|
+
lines.push(``);
|
|
76
|
+
lines.push(` const task = await ctx.runQuery(api.taskSystem.tasks.get, { taskId });`);
|
|
77
|
+
lines.push(` if (!task) return errorResponse("Task not found", 404);`);
|
|
78
|
+
lines.push(` return jsonResponse(task);`);
|
|
79
|
+
lines.push(`});`);
|
|
80
|
+
lines.push(``);
|
|
81
|
+
// GET /api/tasks/stats
|
|
82
|
+
lines.push(`const getStats = httpAction(async (ctx) => {`);
|
|
83
|
+
lines.push(` const stats = await ctx.runQuery(api.taskSystem.orchestrator.getStats);`);
|
|
84
|
+
lines.push(` return jsonResponse(stats);`);
|
|
85
|
+
lines.push(`});`);
|
|
86
|
+
lines.push(``);
|
|
87
|
+
// GET /api/tasks/kanban
|
|
88
|
+
lines.push(`const getKanban = httpAction(async (ctx) => {`);
|
|
89
|
+
lines.push(` const kanban = await ctx.runQuery(api.taskSystem.orchestrator.getKanban);`);
|
|
90
|
+
lines.push(` return jsonResponse(kanban);`);
|
|
91
|
+
lines.push(`});`);
|
|
92
|
+
lines.push(``);
|
|
93
|
+
// GET /api/tasks/checkDependencies
|
|
94
|
+
lines.push(`const checkDeps = httpAction(async (ctx, request) => {`);
|
|
95
|
+
lines.push(` const url = new URL(request.url);`);
|
|
96
|
+
lines.push(` const taskId = url.searchParams.get("taskId");`);
|
|
97
|
+
lines.push(` if (!taskId) return errorResponse("taskId is required");`);
|
|
98
|
+
lines.push(``);
|
|
99
|
+
lines.push(` const result = await ctx.runQuery(api.taskSystem.orchestrator.checkDependencies, { taskId });`);
|
|
100
|
+
lines.push(` return jsonResponse(result);`);
|
|
101
|
+
lines.push(`});`);
|
|
102
|
+
lines.push(``);
|
|
103
|
+
// POST /api/tasks/changeStatus
|
|
104
|
+
lines.push(`const changeStatus = httpAction(async (ctx, request) => {`);
|
|
105
|
+
lines.push(` try {`);
|
|
106
|
+
lines.push(` const body = await request.json();`);
|
|
107
|
+
lines.push(` const { taskId, newStatus, note, agent } = body;`);
|
|
108
|
+
lines.push(` if (!taskId || !newStatus) return errorResponse("taskId and newStatus are required");`);
|
|
109
|
+
lines.push(``);
|
|
110
|
+
lines.push(` await ctx.runMutation(api.taskSystem.orchestrator.updateStatus, {`);
|
|
111
|
+
lines.push(` taskId,`);
|
|
112
|
+
lines.push(` newStatus,`);
|
|
113
|
+
lines.push(` note: note || undefined,`);
|
|
114
|
+
lines.push(` agent: agent || undefined,`);
|
|
115
|
+
lines.push(` });`);
|
|
116
|
+
lines.push(` return jsonResponse({ success: true });`);
|
|
117
|
+
lines.push(` } catch (e: any) {`);
|
|
118
|
+
lines.push(` return errorResponse(e.message || "Failed to update status", 500);`);
|
|
119
|
+
lines.push(` }`);
|
|
120
|
+
lines.push(`});`);
|
|
121
|
+
lines.push(``);
|
|
122
|
+
// POST /api/tasks/create
|
|
123
|
+
lines.push(`const createTask = httpAction(async (ctx, request) => {`);
|
|
124
|
+
lines.push(` try {`);
|
|
125
|
+
lines.push(` const body = await request.json();`);
|
|
126
|
+
lines.push(` const result = await ctx.runMutation(api.taskSystem.tasks.create, body);`);
|
|
127
|
+
lines.push(` return jsonResponse(result);`);
|
|
128
|
+
lines.push(` } catch (e: any) {`);
|
|
129
|
+
lines.push(` return errorResponse(e.message || "Failed to create task", 500);`);
|
|
130
|
+
lines.push(` }`);
|
|
131
|
+
lines.push(`});`);
|
|
132
|
+
lines.push(``);
|
|
133
|
+
// POST /api/tasks/update
|
|
134
|
+
lines.push(`const updateTask = httpAction(async (ctx, request) => {`);
|
|
135
|
+
lines.push(` try {`);
|
|
136
|
+
lines.push(` const body = await request.json();`);
|
|
137
|
+
lines.push(` const { taskId, ...fields } = body;`);
|
|
138
|
+
lines.push(` if (!taskId) return errorResponse("taskId is required");`);
|
|
139
|
+
lines.push(``);
|
|
140
|
+
lines.push(` await ctx.runMutation(api.taskSystem.tasks.update, { taskId, ...fields });`);
|
|
141
|
+
lines.push(` return jsonResponse({ success: true });`);
|
|
142
|
+
lines.push(` } catch (e: any) {`);
|
|
143
|
+
lines.push(` return errorResponse(e.message || "Failed to update task", 500);`);
|
|
144
|
+
lines.push(` }`);
|
|
145
|
+
lines.push(`});`);
|
|
146
|
+
lines.push(``);
|
|
147
|
+
// Export the router configuration
|
|
148
|
+
lines.push(`// Route definitions for integration into main http.ts`);
|
|
149
|
+
lines.push(`export const taskSystemRoutes = [`);
|
|
150
|
+
lines.push(` { path: "/api/tasks/list", method: "GET" as const, handler: listTasks },`);
|
|
151
|
+
lines.push(` { path: "/api/tasks/list", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
152
|
+
lines.push(` { path: "/api/tasks/get", method: "GET" as const, handler: getTask },`);
|
|
153
|
+
lines.push(` { path: "/api/tasks/get", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
154
|
+
lines.push(` { path: "/api/tasks/stats", method: "GET" as const, handler: getStats },`);
|
|
155
|
+
lines.push(` { path: "/api/tasks/stats", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
156
|
+
lines.push(` { path: "/api/tasks/kanban", method: "GET" as const, handler: getKanban },`);
|
|
157
|
+
lines.push(` { path: "/api/tasks/kanban", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
158
|
+
lines.push(` { path: "/api/tasks/checkDependencies", method: "GET" as const, handler: checkDeps },`);
|
|
159
|
+
lines.push(` { path: "/api/tasks/checkDependencies", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
160
|
+
lines.push(` { path: "/api/tasks/changeStatus", method: "POST" as const, handler: changeStatus },`);
|
|
161
|
+
lines.push(` { path: "/api/tasks/changeStatus", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
162
|
+
lines.push(` { path: "/api/tasks/create", method: "POST" as const, handler: createTask },`);
|
|
163
|
+
lines.push(` { path: "/api/tasks/create", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
164
|
+
lines.push(` { path: "/api/tasks/update", method: "POST" as const, handler: updateTask },`);
|
|
165
|
+
lines.push(` { path: "/api/tasks/update", method: "OPTIONS" as const, handler: optionsHandler },`);
|
|
166
|
+
lines.push(`];`);
|
|
167
|
+
lines.push(``);
|
|
168
|
+
const content = lines.join("\n");
|
|
169
|
+
const filePath = join(targetDir, "convex", "taskSystem", "http.ts");
|
|
170
|
+
if (!dryRun) {
|
|
171
|
+
writeFileSync(filePath, content, "utf-8");
|
|
172
|
+
}
|
|
173
|
+
return { file: "convex/taskSystem/http.ts", lines: lines.length };
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/generators/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/generators/orchestrator.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAOlE,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,gBAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CA6Z3F"}
|