@nitra/cursor 4.1.1 → 5.0.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/CHANGELOG.md +20 -0
- package/bin/docs/n-cursor.md +1 -9
- package/bin/n-cursor.js +3 -25
- package/docs/stryker.config.md +37 -0
- package/docs/vitest.config.md +23 -0
- package/package.json +2 -1
- package/rules/docker/lib/docs/docker-mirror.md +1 -1
- package/rules/docker/lib/docs/docker-native-addon.md +1 -1
- package/rules/test/coverage/coverage.mjs +9 -19
- package/rules/test/test.mdc +1 -1
- package/scripts/dispatcher/trace.mjs +4 -16
- package/scripts/docs/build-agents-commands.md +1 -1
- package/scripts/docs/worktree-cli.md +1 -1
- package/scripts/lib/changed-files.mjs +19 -3
- package/scripts/lib/sync-gitignore-worktree.mjs +4 -5
- package/scripts/worktree-cli.mjs +1 -2
- package/skills/docgen/js/docgen-gen.mjs +7 -7
- package/scripts/dispatcher/docs/graph.md +0 -346
- package/scripts/dispatcher/docs/index.md +0 -236
- package/scripts/dispatcher/docs/trace.md +0 -296
- package/scripts/dispatcher/graph/lib/cmd-init.mjs +0 -112
- package/scripts/dispatcher/graph/lib/cmd-invalidate.mjs +0 -96
- package/scripts/dispatcher/graph/lib/cmd-kill.mjs +0 -141
- package/scripts/dispatcher/graph/lib/cmd-plan.mjs +0 -142
- package/scripts/dispatcher/graph/lib/cmd-run.mjs +0 -328
- package/scripts/dispatcher/graph/lib/cmd-scan.mjs +0 -115
- package/scripts/dispatcher/graph/lib/cmd-setup.mjs +0 -111
- package/scripts/dispatcher/graph/lib/cmd-signals.mjs +0 -328
- package/scripts/dispatcher/graph/lib/cmd-status.mjs +0 -131
- package/scripts/dispatcher/graph/lib/cmd-verify.mjs +0 -100
- package/scripts/dispatcher/graph/lib/cmd-watch.mjs +0 -128
- package/scripts/dispatcher/graph/lib/config.mjs +0 -103
- package/scripts/dispatcher/graph/lib/frontmatter.mjs +0 -224
- package/scripts/dispatcher/graph/lib/nnn.mjs +0 -127
- package/scripts/dispatcher/graph/lib/node-state.mjs +0 -157
- package/scripts/dispatcher/graph/lib/scanner.mjs +0 -235
- package/scripts/dispatcher/graph/lib/worktree-ops.mjs +0 -193
- package/scripts/dispatcher/graph-tasks.mjs +0 -92
- package/scripts/dispatcher/graph.mjs +0 -212
- package/scripts/dispatcher/index.mjs +0 -45
- package/scripts/dispatcher/lib/docs/active.md +0 -348
- package/scripts/dispatcher/lib/docs/artifact.md +0 -232
- package/scripts/dispatcher/lib/docs/budget.md +0 -167
- package/scripts/dispatcher/lib/docs/capability.md +0 -196
- package/scripts/dispatcher/lib/docs/commands.md +0 -210
- package/scripts/dispatcher/lib/docs/events.md +0 -183
- package/scripts/dispatcher/lib/docs/executor.md +0 -190
- package/scripts/dispatcher/lib/docs/gate.md +0 -231
- package/scripts/dispatcher/lib/docs/level.md +0 -335
- package/scripts/dispatcher/lib/docs/plan-panel.md +0 -181
- package/scripts/dispatcher/lib/docs/plan.md +0 -200
- package/scripts/dispatcher/lib/docs/planner.md +0 -269
- package/scripts/dispatcher/lib/docs/review.md +0 -255
- package/scripts/dispatcher/lib/docs/reviewer.md +0 -240
- package/scripts/dispatcher/lib/docs/snapshot.md +0 -247
- package/scripts/dispatcher/lib/docs/spec.md +0 -203
- package/scripts/dispatcher/lib/docs/state-store.md +0 -303
- package/scripts/dispatcher/lib/docs/subagent-runner.md +0 -173
- package/scripts/dispatcher/lib/events.mjs +0 -67
- package/scripts/dispatcher/lib/executor.mjs +0 -107
- package/scripts/dispatcher/lib/plan-panel.mjs +0 -76
- package/scripts/dispatcher/lib/state-store.mjs +0 -173
- package/scripts/dispatcher/lib/subagent-runner.mjs +0 -53
- package/scripts/graph/index.mjs +0 -115
- package/scripts/graph/lib/config.mjs +0 -62
- package/scripts/graph/lib/dag.mjs +0 -161
- package/scripts/graph/lib/frontmatter.mjs +0 -70
- package/scripts/graph/lib/nnn.mjs +0 -77
- package/scripts/graph/lib/state.mjs +0 -110
- package/scripts/graph/scan.mjs +0 -64
- package/scripts/graph/status.mjs +0 -86
package/scripts/graph/status.mjs
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `graph status [path]` — стан одного вузла або всього графу.
|
|
3
|
-
*/
|
|
4
|
-
import { resolve } from 'node:path'
|
|
5
|
-
import { cwd } from 'node:process'
|
|
6
|
-
|
|
7
|
-
import { loadConfig } from './lib/config.mjs'
|
|
8
|
-
import { buildDag } from './lib/dag.mjs'
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @param {string | undefined} path відносний шлях до вузла або undefined для всього графу
|
|
12
|
-
* @param {{ json?: boolean }} opts
|
|
13
|
-
*/
|
|
14
|
-
export async function runStatus(path, opts = {}) {
|
|
15
|
-
const root = cwd()
|
|
16
|
-
const config = loadConfig(root)
|
|
17
|
-
const tasksDir = resolve(root, config.tasks_dir)
|
|
18
|
-
const worktreesDir = resolve(root, config.worktrees_dir)
|
|
19
|
-
|
|
20
|
-
const nodes = buildDag(tasksDir, worktreesDir)
|
|
21
|
-
|
|
22
|
-
if (path) {
|
|
23
|
-
// Normalize: tasks/foo → foo, tasks/foo/ → foo
|
|
24
|
-
const id = path.replace(/^tasks\//u, '').replace(/\/$/u, '')
|
|
25
|
-
const node = nodes.get(id)
|
|
26
|
-
if (!node) {
|
|
27
|
-
console.error(`Node not found: ${id}`)
|
|
28
|
-
return 1
|
|
29
|
-
}
|
|
30
|
-
if (opts.json) {
|
|
31
|
-
process.stdout.write(JSON.stringify({ id, ...node }, null, 2) + '\n')
|
|
32
|
-
} else {
|
|
33
|
-
printNode(id, node, nodes)
|
|
34
|
-
}
|
|
35
|
-
return 0
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Full graph
|
|
39
|
-
if (opts.json) {
|
|
40
|
-
const out = {}
|
|
41
|
-
for (const [id, node] of nodes) {
|
|
42
|
-
out[id] = { state: node.state, deps: node.deps, mode: node.mode, executor: node.executor }
|
|
43
|
-
}
|
|
44
|
-
process.stdout.write(JSON.stringify(out, null, 2) + '\n')
|
|
45
|
-
} else {
|
|
46
|
-
// Print as tree
|
|
47
|
-
const roots = [...nodes.values()].filter(n => !n.parentId)
|
|
48
|
-
const counts = {}
|
|
49
|
-
for (const { state } of nodes.values()) counts[state] = (counts[state] ?? 0) + 1
|
|
50
|
-
const summary = Object.entries(counts).map(([s, n]) => `${s}:${n}`).join(' ')
|
|
51
|
-
console.log(`graph — ${summary}\n`)
|
|
52
|
-
for (const root of roots) printTree(root.id, nodes, 0)
|
|
53
|
-
}
|
|
54
|
-
return 0
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
const ICON = {
|
|
58
|
-
'needs-plan': '⏳', waiting: '○', blocked: '○', running: '◉',
|
|
59
|
-
stalled: '⚠', 'pending-audit': '🔍', resolved: '✓', failed: '✗', invalidated: '⊘',
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/** @param {string} id @param {Map<string, import('./lib/dag.mjs').GraphNode>} nodes @param {number} depth */
|
|
63
|
-
function printTree(id, nodes, depth) {
|
|
64
|
-
const node = nodes.get(id)
|
|
65
|
-
if (!node) return
|
|
66
|
-
const icon = ICON[node.state] ?? '?'
|
|
67
|
-
const indent = ' '.repeat(depth)
|
|
68
|
-
let detail = ''
|
|
69
|
-
if (node.state === 'needs-plan') detail = ` run: graph plan tasks/${id}/`
|
|
70
|
-
else if (node.state === 'blocked') detail = ` blocked: ${node.deps.join(', ')}`
|
|
71
|
-
console.log(`${indent}${icon} ${id} [${node.state}]${detail}`)
|
|
72
|
-
for (const child of node.children) printTree(child, nodes, depth + 1)
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* @param {string} id
|
|
77
|
-
* @param {import('./lib/dag.mjs').GraphNode} node
|
|
78
|
-
* @param {Map<string, import('./lib/dag.mjs').GraphNode>} nodes
|
|
79
|
-
*/
|
|
80
|
-
function printNode(id, node, nodes) {
|
|
81
|
-
const icon = ICON[node.state] ?? '?'
|
|
82
|
-
console.log(`${icon} ${id} [${node.state}]`)
|
|
83
|
-
if (node.deps.length) console.log(` deps: ${node.deps.join(', ')}`)
|
|
84
|
-
if (node.children.length) console.log(` children: ${node.children.join(', ')}`)
|
|
85
|
-
console.log(` mode: ${node.mode} executor: ${node.executor.type}/${node.executor.model_tier}`)
|
|
86
|
-
}
|