@amsterdamdatalabs/adl-agent-control-linux-x64 0.1.35 → 0.1.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.
- package/bin/adl +2 -2
- package/bin/reconcile +3 -11
- package/bin/setup +15 -15
- package/package.json +1 -1
- package/packages/agent-hooks/deploy-profile.json +1 -1
- package/packages/agent-hooks/package.json +1 -1
- package/packages/agent-hooks/src/main.ts +23 -2
- package/packages/agent-hooks/src/pre-tool-use/handler.ts +2 -2
- package/packages/agent-hooks/src/rules/impl/adl-build-run-role.ts +116 -0
- package/packages/agent-hooks/src/rules/impl/adl-git-user-override-block.ts +159 -0
- package/packages/agent-hooks/src/rules/impl/adl-mcp-cli.ts +22 -12
- package/packages/agent-hooks/src/rules/impl/adl-pr-complete-pending.ts +9 -9
- package/packages/agent-hooks/src/rules/impl/adl-pr-role.ts +6 -5
- package/packages/agent-hooks/src/rules/impl/adl-run-required.ts +11 -5
- package/packages/agent-hooks/src/rules/impl/adl-workitem-role.ts +18 -5
- package/packages/agent-hooks/src/rules/impl/agent-tamper-protection.ts +30 -25
- package/packages/agent-hooks/src/rules/impl/git-core.ts +4 -8
- package/packages/agent-hooks/src/rules/impl/git-target.ts +5 -0
- package/packages/agent-hooks/src/rules/impl/mcp-tool.ts +4 -2
- package/packages/agent-hooks/src/rules/impl/tool-frontend.ts +230 -11
- package/packages/agent-hooks/src/rules/registry.ts +11 -2
- package/packages/agent-hooks/src/rules/shell/git-identity.ts +1 -1
- package/packages/agent-hooks/src/rules/shell/invocation.ts +14 -2
- package/packages/agent-hooks/src/rules/shell/protected-carriers.ts +10 -7
- package/packages/agent-settings/assets/TARUN-GLOBAL-AGENTS-INSTRUCTIONS.md +2 -2
- package/packages/agent-settings/package.json +1 -1
- package/packages/agent-settings/src/deploy/agents-deploy.ts +19 -1
- package/packages/agent-settings/src/deploy/index.ts +1 -0
- package/packages/agent-skills/assets/agent-search-tool-audit/SKILL.md +4 -6
- package/packages/agent-skills/assets/code-review/SKILL.md +84 -66
- package/packages/agent-skills/assets/diagnosing-bugs/SKILL.md +23 -2
- package/packages/agent-skills/assets/diagnosing-bugs/references/FEEDBACK-LOOP-TACTICS.md +1 -1
- package/packages/agent-skills/assets/explore-codebase/SKILL.md +3 -2
- package/packages/agent-skills/assets/finalize-feature/SKILL.md +63 -0
- package/packages/agent-skills/assets/fix-ci/SKILL.md +58 -0
- package/packages/agent-skills/assets/handoff/SKILL.md +1 -1
- package/packages/agent-skills/assets/implement-feature/SKILL.md +150 -0
- package/packages/agent-skills/assets/implement-feature/references/briefs.md +94 -0
- package/packages/agent-skills/assets/implement-item/SKILL.md +71 -0
- package/packages/agent-skills/assets/mechanics/SKILL.md +38 -0
- package/packages/agent-skills/assets/plan-feature/SKILL.md +141 -0
- package/packages/agent-skills/assets/prepare-promotion/SKILL.md +90 -0
- package/packages/agent-skills/assets/ralplan/SKILL.md +149 -0
- package/packages/agent-skills/assets/refactor-safely/SKILL.md +4 -3
- package/packages/agent-skills/assets/report-bug/SKILL.md +72 -0
- package/packages/agent-skills/assets/review-change/SKILL.md +82 -0
- package/packages/agent-skills/assets/review-plan/SKILL.md +124 -0
- package/packages/agent-skills/assets/triage-workitems/SKILL.md +99 -0
- package/packages/agent-skills/assets/ultragoal/SKILL.md +77 -0
- package/packages/agent-skills/assets/validate-design/SKILL.md +64 -0
- package/packages/agent-skills/assets/verify-item/SKILL.md +71 -0
- package/packages/agent-skills/assets/wayfinder/SKILL.md +1 -1
- package/packages/agent-skills/assets/workitems-process/SKILL.md +145 -0
- package/packages/agent-skills/assets/workitems-process/references/ado-and-git.md +227 -0
- package/packages/agent-skills/assets/workitems-process/references/evidence.md +74 -0
- package/packages/agent-skills/assets/workitems-process/references/workitem-states.md +92 -0
- package/packages/agent-skills/assets/write-feature/SKILL.md +94 -0
- package/packages/agent-skills/dist/deploy.d.ts +52 -0
- package/packages/agent-skills/dist/deploy.d.ts.map +1 -1
- package/packages/agent-skills/dist/deploy.js +218 -7
- package/packages/agent-skills/dist/deploy.js.map +1 -1
- package/packages/agent-skills/dist/index.d.ts +1 -1
- package/packages/agent-skills/dist/index.d.ts.map +1 -1
- package/packages/agent-skills/dist/index.js +1 -1
- package/packages/agent-skills/dist/index.js.map +1 -1
- package/packages/agent-skills/package.json +1 -1
- package/packages/agent-skills/src/deploy.ts +288 -6
- package/packages/agent-skills/src/index.ts +10 -1
- package/packages/azdo/README.md +13 -4
- package/packages/azdo/bunfig.toml +6 -0
- package/packages/azdo/package.json +1 -1
- package/packages/azdo/scripts/probe-ado-rules.ts +1 -1
- package/packages/azdo/src/activity-log.ts +118 -0
- package/packages/azdo/src/azdo-attachments.ts +109 -0
- package/packages/azdo/src/azdo-pl.ts +100 -3
- package/packages/azdo/src/azdo-pr.ts +376 -17
- package/packages/azdo/src/azdo-wit.ts +594 -34
- package/packages/azdo/src/cli.ts +119 -12
- package/packages/azdo/src/lib/client.ts +95 -17
- package/packages/azdo/src/lib/validate-pr-metadata.ts +14 -5
- package/packages/azdo/src/mcp-server.ts +121 -8
- package/packages/azdo/src/tool-dispatch.ts +107 -23
- package/packages/azdo/src/workflow-ladder.csv +125 -107
- package/packages/azdo/src/workflow-rules.ts +254 -97
- package/packages/fleet/src/install-adl-package.ts +4 -3
- package/packages/repo-controls/README.md +12 -4
- package/packages/repo-controls/assets/promote.ts +1 -0
- package/packages/repo-controls/assets/scaffold/docs/AGENTS.md +5 -5
- package/packages/repo-controls/assets/scaffold/plans/AGENTS.md +42 -13
- package/packages/repo-controls/assets/scaffold/root/CONTRIBUTING.md +5 -5
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/closed_set/test_check.py +0 -11
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/filename/test_check.py +4 -6
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/ledger/test_check.py +15 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/docs-okf-profiles.yaml +1 -17
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-profile-untyped/docs/research/no-type.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-profile-untyped/docs/research/typed-experiment.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-profile-untyped/docs/research/typed-research.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/extra-key.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/extra-keys.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/missing-created.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/missing-description.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/missing-last-update.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/missing-status.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/missing-title.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/optional-keys.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/fixtures/okf-research/docs/research/research-ok.md +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/docs/okf_profile/test_check.py +3 -22
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/open_work_cap/check.py +39 -182
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/open_work_cap/fixtures/open-work-cap-clean/plans/features/az601-clean/intent.md +17 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/open_work_cap/test_check.py +90 -321
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plan_metadata.py +31 -5
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/check.py +282 -54
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/fixtures/plans-layout-clean/plans/features/az347-test-coverage/design.md +35 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/fixtures/plans-layout-clean/plans/features/az347-test-coverage/file-map-reference.md +19 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/fixtures/plans-layout-clean/plans/features/az347-test-coverage/intent.md +25 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/fixtures/plans-layout-clean/plans/features/az347-test-coverage/items/az351-restore-entrypoint.md +25 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/fixtures/plans-layout-clean/plans/features/az347-test-coverage/requirements.md +44 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/fixtures/plans-layout-violation/plans/features/az347-test-coverage/requirements.md +44 -0
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/checks/layout/plans_layout/test_check.py +646 -53
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/cli.py +3 -3
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/policy/docs_shape.py +1 -12
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/policy/gate-registry.alt.yaml +1 -1
- package/packages/repo-controls/package/adl-compliance/src/adl_compliance/policy/gate-registry.yaml +1 -1
- package/packages/repo-controls/package.json +1 -1
- package/packages/repo-controls/src/config.ts +21 -2
- package/packages/repo-controls/src/doctor.ts +9 -14
- package/packages/repo-controls/src/findings-ratchet.ts +12 -0
- package/packages/repo-controls/src/hook.ts +61 -4
|
@@ -4,10 +4,13 @@ import {
|
|
|
4
4
|
validatePullRequestMetadata,
|
|
5
5
|
validatePullRequestTitle,
|
|
6
6
|
} from './lib/validate-pr-metadata.ts';
|
|
7
|
-
import { prCreateOrUpdate, prListOrGet, type PrCreateOrUpdateArgs } from './azdo-pr.ts';
|
|
7
|
+
import { prCreateOrUpdate, prListOrGet, derivePrKind, type PrCreateOrUpdateArgs } from './azdo-pr.ts';
|
|
8
|
+
import { currentBranch } from './lib/client.ts';
|
|
8
9
|
import { prReview, VOTE_NAMES, type PrReviewArgs, type VoteName } from './azdo-pr-review.ts';
|
|
9
10
|
import { buildListOrGet, buildRun } from './azdo-pl.ts';
|
|
10
|
-
import {
|
|
11
|
+
import { workitemAttachments } from './azdo-attachments.ts';
|
|
12
|
+
import { activityAdd, activityList } from './activity-log.ts';
|
|
13
|
+
import { workitemCommentsRead, workitemCreateOrUpdateBug, workitemCreateOrUpdateFeature, workitemCreateOrUpdatePbi, workitemListOrGet, type WorkItemWriteArgs } from './azdo-wit.ts';
|
|
11
14
|
|
|
12
15
|
type PullRequestWriteArguments = {
|
|
13
16
|
action?: unknown;
|
|
@@ -17,6 +20,9 @@ type PullRequestWriteArguments = {
|
|
|
17
20
|
autoComplete?: unknown;
|
|
18
21
|
mergeStrategy?: unknown;
|
|
19
22
|
deleteSourceBranch?: unknown;
|
|
23
|
+
attachmentContent?: unknown;
|
|
24
|
+
addWorkItems?: unknown;
|
|
25
|
+
removeWorkItems?: unknown;
|
|
20
26
|
repository?: unknown;
|
|
21
27
|
sourceBranch?: unknown;
|
|
22
28
|
targetBranch?: unknown;
|
|
@@ -34,6 +40,9 @@ export function pullRequestWriteArgs(args: PullRequestWriteArguments): PrCreateO
|
|
|
34
40
|
...validatePullRequestMetadata(
|
|
35
41
|
typeof args.title === 'string' ? args.title : '',
|
|
36
42
|
typeof args.description === 'string' ? args.description : '',
|
|
43
|
+
// P3: a planning branch may write "none (docs-only)" in the last two
|
|
44
|
+
// body sections; the branch is this process's own checkout.
|
|
45
|
+
derivePrKind(currentBranch() ?? '').kind === 'planning',
|
|
37
46
|
),
|
|
38
47
|
);
|
|
39
48
|
}
|
|
@@ -41,12 +50,16 @@ export function pullRequestWriteArgs(args: PullRequestWriteArguments): PrCreateO
|
|
|
41
50
|
if (!Number.isInteger(args.pullRequestId)) errors.push('pullRequestId is required for update');
|
|
42
51
|
if (typeof args.title === 'string') errors.push(...validatePullRequestTitle(args.title));
|
|
43
52
|
if (typeof args.description === 'string') errors.push(...validatePullRequestDescription(args.description));
|
|
53
|
+
const hasAdd = Array.isArray(args.addWorkItems) && (args.addWorkItems as unknown[]).length > 0;
|
|
54
|
+
const hasRemove = Array.isArray(args.removeWorkItems) && (args.removeWorkItems as unknown[]).length > 0;
|
|
44
55
|
if (
|
|
45
56
|
args.title === undefined &&
|
|
46
57
|
args.description === undefined &&
|
|
47
58
|
args.autoComplete !== true &&
|
|
48
59
|
args.mergeStrategy === undefined &&
|
|
49
|
-
args.deleteSourceBranch !== true
|
|
60
|
+
args.deleteSourceBranch !== true &&
|
|
61
|
+
!hasAdd &&
|
|
62
|
+
!hasRemove
|
|
50
63
|
) {
|
|
51
64
|
errors.push('update requires metadata or completion options');
|
|
52
65
|
}
|
|
@@ -54,6 +67,15 @@ export function pullRequestWriteArgs(args: PullRequestWriteArguments): PrCreateO
|
|
|
54
67
|
if (args.mergeStrategy !== undefined && args.mergeStrategy !== 'Squash') {
|
|
55
68
|
errors.push('mergeStrategy must be Squash');
|
|
56
69
|
}
|
|
70
|
+
if (args.attachmentContent !== undefined && typeof args.attachmentContent !== 'string') {
|
|
71
|
+
errors.push('attachmentContent must be a string');
|
|
72
|
+
}
|
|
73
|
+
if (args.addWorkItems !== undefined && (!Array.isArray(args.addWorkItems) || (args.addWorkItems as unknown[]).some((value) => !Number.isInteger(value)))) {
|
|
74
|
+
errors.push('addWorkItems must be an array of integers');
|
|
75
|
+
}
|
|
76
|
+
if (args.removeWorkItems !== undefined && (!Array.isArray(args.removeWorkItems) || (args.removeWorkItems as unknown[]).some((value) => !Number.isInteger(value)))) {
|
|
77
|
+
errors.push('removeWorkItems must be an array of integers');
|
|
78
|
+
}
|
|
57
79
|
if (errors.length > 0) throw new Error(`Invalid pull request write:\n- ${errors.join('\n- ')}`);
|
|
58
80
|
|
|
59
81
|
return {
|
|
@@ -65,6 +87,9 @@ export function pullRequestWriteArgs(args: PullRequestWriteArguments): PrCreateO
|
|
|
65
87
|
: {}),
|
|
66
88
|
...(args.mergeStrategy === 'Squash' ? { mergeStrategy: args.mergeStrategy } : {}),
|
|
67
89
|
...(args.deleteSourceBranch === true ? { deleteSourceBranch: true } : {}),
|
|
90
|
+
...(typeof args.attachmentContent === 'string' ? { attachmentContent: args.attachmentContent } : {}),
|
|
91
|
+
...(Array.isArray(args.addWorkItems) ? { addWorkItems: args.addWorkItems as number[] } : {}),
|
|
92
|
+
...(Array.isArray(args.removeWorkItems) ? { removeWorkItems: args.removeWorkItems as number[] } : {}),
|
|
68
93
|
...(typeof args.repository === 'string' ? { repository: args.repository } : {}),
|
|
69
94
|
};
|
|
70
95
|
}
|
|
@@ -112,6 +137,33 @@ export function pullRequestReviewArgs(args: PullRequestReviewArguments): PrRevie
|
|
|
112
137
|
|
|
113
138
|
export type ToolArguments = Record<string, unknown>;
|
|
114
139
|
|
|
140
|
+
/** The three per-type work-item write tools take the same arguments — only the
|
|
141
|
+
* name differs — so the raw MCP/CLI arguments are narrowed once, here. */
|
|
142
|
+
function workItemWriteArgs(args: ToolArguments): WorkItemWriteArgs {
|
|
143
|
+
return {
|
|
144
|
+
...(Number.isInteger(args.id) ? { id: args.id as number } : {}),
|
|
145
|
+
...(typeof args.title === 'string' ? { title: args.title } : {}),
|
|
146
|
+
...(typeof args.description === 'string' ? { description: args.description } : {}),
|
|
147
|
+
...(Number.isInteger(args.parentId) ? { parentId: args.parentId as number } : {}),
|
|
148
|
+
...(Array.isArray(args.predecessors) ? { predecessors: args.predecessors as number[] } : {}),
|
|
149
|
+
...(Array.isArray(args.related) ? { related: args.related as number[] } : {}),
|
|
150
|
+
...(args.fields && typeof args.fields === 'object' && !Array.isArray(args.fields) ? { fields: args.fields as Record<string, unknown> } : {}),
|
|
151
|
+
...(typeof args.state === 'string' ? { state: args.state } : {}),
|
|
152
|
+
...(typeof args.comment === 'string' ? { comment: args.comment } : {}),
|
|
153
|
+
...(typeof args.assignedTo === 'string' ? { assignedTo: args.assignedTo } : {}),
|
|
154
|
+
...(typeof args.acceptanceCriteria === 'string' ? { acceptanceCriteria: args.acceptanceCriteria } : {}),
|
|
155
|
+
...(Number.isInteger(args.priority) ? { priority: args.priority as number } : {}),
|
|
156
|
+
...(typeof args.effort === 'number' ? { effort: args.effort } : {}),
|
|
157
|
+
...(typeof args.startDate === 'string' ? { startDate: args.startDate } : {}),
|
|
158
|
+
...(typeof args.targetDate === 'string' ? { targetDate: args.targetDate } : {}),
|
|
159
|
+
...(Number.isInteger(args.planRevision) ? { planRevision: args.planRevision as number } : {}),
|
|
160
|
+
...(typeof args.planHash === 'string' ? { planHash: args.planHash } : {}),
|
|
161
|
+
...(typeof args.baselineSha === 'string' ? { baselineSha: args.baselineSha } : {}),
|
|
162
|
+
...(Number.isInteger(args.removePredecessor) ? { removePredecessor: args.removePredecessor as number } : {}),
|
|
163
|
+
...(Number.isInteger(args.removeRelated) ? { removeRelated: args.removeRelated as number } : {}),
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
|
|
115
167
|
function assertString(args: ToolArguments, key: string, allowNumber = false): void {
|
|
116
168
|
const value = args[key];
|
|
117
169
|
if (value !== undefined && typeof value !== 'string' && !(allowNumber && typeof value === 'number')) {
|
|
@@ -131,14 +183,34 @@ function validateToolArguments(name: string, args: ToolArguments): void {
|
|
|
131
183
|
switch (name) {
|
|
132
184
|
case 'build_list_or_get': ['buildId', 'top', 'tail'].forEach((key) => assertString(args, key, true)); assertString(args, 'branch'); return;
|
|
133
185
|
case 'build_run': assertString(args, 'id', true); assertString(args, 'branch'); return;
|
|
186
|
+
case 'pr_create_or_update':
|
|
187
|
+
['pullRequestId'].forEach((key) => assertInteger(args, key));
|
|
188
|
+
['addWorkItems', 'removeWorkItems'].forEach((key) => assertIntegerArray(args, key));
|
|
189
|
+
return;
|
|
134
190
|
case 'workitem_list_or_get':
|
|
135
191
|
['id', 'limit'].forEach((key) => assertInteger(args, key)); assertIntegerArray(args, 'ids');
|
|
136
192
|
['type', 'state', 'assignedTo'].forEach((key) => assertString(args, key)); assertBoolean(args, 'raw'); return;
|
|
137
|
-
case '
|
|
138
|
-
|
|
139
|
-
|
|
193
|
+
case 'workitem_create_or_update_feature':
|
|
194
|
+
case 'workitem_create_or_update_pbi':
|
|
195
|
+
case 'workitem_create_or_update_bug':
|
|
196
|
+
['id', 'parentId', 'priority', 'planRevision', 'removePredecessor', 'removeRelated'].forEach((key) => assertInteger(args, key));
|
|
197
|
+
['predecessors', 'related'].forEach((key) => assertIntegerArray(args, key));
|
|
198
|
+
['title', 'description', 'state', 'comment', 'assignedTo', 'acceptanceCriteria', 'startDate', 'targetDate', 'planHash', 'baselineSha'].forEach((key) => assertString(args, key));
|
|
199
|
+
// Effort is days and accepts fractions, so it is a plain number, not an integer.
|
|
200
|
+
if (args.effort !== undefined && typeof args.effort !== 'number') throw new Error('effort must be a number (days)');
|
|
140
201
|
if (args.fields !== undefined && (typeof args.fields !== 'object' || args.fields === null || Array.isArray(args.fields))) throw new Error('fields must be an object');
|
|
141
202
|
return;
|
|
203
|
+
case 'workitem_comments_read':
|
|
204
|
+
assertInteger(args, 'id'); return;
|
|
205
|
+
case 'workitem_attachments':
|
|
206
|
+
assertInteger(args, 'id');
|
|
207
|
+
if (args.action !== undefined && args.action !== 'read' && args.action !== 'upload' && args.action !== 'delete') {
|
|
208
|
+
throw new Error('action must be read, upload or delete');
|
|
209
|
+
}
|
|
210
|
+
['fileName', 'content'].forEach((key) => assertString(args, key));
|
|
211
|
+
return;
|
|
212
|
+
case 'activity_add': assertString(args, 'note'); return;
|
|
213
|
+
case 'activity_list': return;
|
|
142
214
|
default: return;
|
|
143
215
|
}
|
|
144
216
|
}
|
|
@@ -180,24 +252,36 @@ export async function dispatchTool(name: string, args: ToolArguments = {}): Prom
|
|
|
180
252
|
...(Number.isInteger(args.limit) ? { limit: args.limit as number } : {}),
|
|
181
253
|
...(typeof args.raw === 'boolean' ? { raw: args.raw } : {}),
|
|
182
254
|
});
|
|
183
|
-
case '
|
|
184
|
-
return
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
255
|
+
case 'workitem_create_or_update_feature':
|
|
256
|
+
return workitemCreateOrUpdateFeature(workItemWriteArgs(args));
|
|
257
|
+
case 'workitem_create_or_update_pbi':
|
|
258
|
+
return workitemCreateOrUpdatePbi(workItemWriteArgs(args));
|
|
259
|
+
case 'workitem_create_or_update_bug':
|
|
260
|
+
return workitemCreateOrUpdateBug(workItemWriteArgs(args));
|
|
261
|
+
case 'workitem_comments_read':
|
|
262
|
+
if (!Number.isInteger(args.id)) throw new Error('id is required (a work item id)');
|
|
263
|
+
return workitemCommentsRead({ id: args.id as number });
|
|
264
|
+
case 'workitem_attachments': {
|
|
265
|
+
if (!Number.isInteger(args.id)) throw new Error('id is required (a work item id)');
|
|
266
|
+
const action = args.action;
|
|
267
|
+
if (action !== 'read' && action !== 'upload' && action !== 'delete') {
|
|
268
|
+
throw new Error('action is required and must be read, upload or delete');
|
|
269
|
+
}
|
|
270
|
+
return workitemAttachments({
|
|
271
|
+
id: args.id as number,
|
|
272
|
+
action,
|
|
273
|
+
...(typeof args.fileName === 'string' ? { fileName: args.fileName } : {}),
|
|
274
|
+
...(typeof args.content === 'string' ? { content: args.content } : {}),
|
|
200
275
|
});
|
|
276
|
+
}
|
|
277
|
+
case 'activity_add': {
|
|
278
|
+
if (typeof args.note !== 'string' || args.note.trim() === '') {
|
|
279
|
+
throw new Error('note is required (a non-empty string)');
|
|
280
|
+
}
|
|
281
|
+
return activityAdd(args.note);
|
|
282
|
+
}
|
|
283
|
+
case 'activity_list':
|
|
284
|
+
return activityList();
|
|
201
285
|
default:
|
|
202
286
|
throw new Error(`Unknown tool: ${name}`);
|
|
203
287
|
}
|
|
@@ -2,11 +2,11 @@ work_item_type,from_state,to_state,rule,skipped_states,owner,note
|
|
|
2
2
|
Product Backlog Item,New,In Planning,allowed,,,
|
|
3
3
|
Product Backlog Item,New,Awaiting Approval,skipped,In Planning,,
|
|
4
4
|
Product Backlog Item,New,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
5
|
-
Product Backlog Item,New,
|
|
6
|
-
Product Backlog Item,New,In Implementation,skipped,In Planning;Awaiting Approval;Approved;
|
|
7
|
-
Product Backlog Item,New,In Testing,skipped,In Planning;Awaiting Approval;Approved;
|
|
8
|
-
Product Backlog Item,New,In Review,skipped,In Planning;Awaiting Approval;Approved;
|
|
9
|
-
Product Backlog Item,New,Updating Docs,skipped,In Planning;Awaiting Approval;Approved;
|
|
5
|
+
Product Backlog Item,New,Design Validation,skipped,In Planning;Awaiting Approval;Approved,,
|
|
6
|
+
Product Backlog Item,New,In Implementation,skipped,In Planning;Awaiting Approval;Approved;Design Validation,,
|
|
7
|
+
Product Backlog Item,New,In Testing,skipped,In Planning;Awaiting Approval;Approved;Design Validation;In Implementation,,
|
|
8
|
+
Product Backlog Item,New,In Review,skipped,In Planning;Awaiting Approval;Approved;Design Validation;In Implementation;In Testing,,
|
|
9
|
+
Product Backlog Item,New,Updating Docs,skipped,In Planning;Awaiting Approval;Approved;Design Validation;In Implementation;In Testing;In Review,,
|
|
10
10
|
Product Backlog Item,New,Done,human-only,,entered only by PR merge automation into integration,
|
|
11
11
|
Product Backlog Item,New,Parked for Removal,allowed,,,
|
|
12
12
|
Product Backlog Item,New,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
@@ -14,51 +14,52 @@ Product Backlog Item,New,Committed,no-transition,,,Committed is a retired state
|
|
|
14
14
|
Product Backlog Item,In Planning,New,allowed,,,
|
|
15
15
|
Product Backlog Item,In Planning,Awaiting Approval,allowed,,,
|
|
16
16
|
Product Backlog Item,In Planning,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
17
|
-
Product Backlog Item,In Planning,
|
|
18
|
-
Product Backlog Item,In Planning,In Implementation,skipped,Awaiting Approval;Approved;
|
|
19
|
-
Product Backlog Item,In Planning,In Testing,skipped,Awaiting Approval;Approved;
|
|
20
|
-
Product Backlog Item,In Planning,In Review,skipped,Awaiting Approval;Approved;
|
|
21
|
-
Product Backlog Item,In Planning,Updating Docs,skipped,Awaiting Approval;Approved;
|
|
17
|
+
Product Backlog Item,In Planning,Design Validation,skipped,Awaiting Approval;Approved,,
|
|
18
|
+
Product Backlog Item,In Planning,In Implementation,skipped,Awaiting Approval;Approved;Design Validation,,
|
|
19
|
+
Product Backlog Item,In Planning,In Testing,skipped,Awaiting Approval;Approved;Design Validation;In Implementation,,
|
|
20
|
+
Product Backlog Item,In Planning,In Review,skipped,Awaiting Approval;Approved;Design Validation;In Implementation;In Testing,,
|
|
21
|
+
Product Backlog Item,In Planning,Updating Docs,skipped,Awaiting Approval;Approved;Design Validation;In Implementation;In Testing;In Review,,
|
|
22
22
|
Product Backlog Item,In Planning,Done,human-only,,entered only by PR merge automation into integration,
|
|
23
23
|
Product Backlog Item,In Planning,Parked for Removal,allowed,,,
|
|
24
24
|
Product Backlog Item,In Planning,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
25
25
|
Product Backlog Item,In Planning,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
26
26
|
Product Backlog Item,Awaiting Approval,New,allowed,,,
|
|
27
27
|
Product Backlog Item,Awaiting Approval,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
28
|
-
Product Backlog Item,Awaiting Approval,
|
|
29
|
-
Product Backlog Item,Awaiting Approval,In Implementation,skipped,Approved;
|
|
30
|
-
Product Backlog Item,Awaiting Approval,In Testing,skipped,Approved;
|
|
31
|
-
Product Backlog Item,Awaiting Approval,In Review,skipped,Approved;
|
|
32
|
-
Product Backlog Item,Awaiting Approval,Updating Docs,skipped,Approved;
|
|
28
|
+
Product Backlog Item,Awaiting Approval,Design Validation,skipped,Approved,,
|
|
29
|
+
Product Backlog Item,Awaiting Approval,In Implementation,skipped,Approved;Design Validation,,
|
|
30
|
+
Product Backlog Item,Awaiting Approval,In Testing,skipped,Approved;Design Validation;In Implementation,,
|
|
31
|
+
Product Backlog Item,Awaiting Approval,In Review,skipped,Approved;Design Validation;In Implementation;In Testing,,
|
|
32
|
+
Product Backlog Item,Awaiting Approval,Updating Docs,skipped,Approved;Design Validation;In Implementation;In Testing;In Review,,
|
|
33
33
|
Product Backlog Item,Awaiting Approval,Done,human-only,,entered only by PR merge automation into integration,
|
|
34
34
|
Product Backlog Item,Awaiting Approval,Parked for Removal,allowed,,,
|
|
35
35
|
Product Backlog Item,Awaiting Approval,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
36
36
|
Product Backlog Item,Awaiting Approval,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
37
37
|
Product Backlog Item,Approved,New,allowed,,,
|
|
38
|
-
Product Backlog Item,Approved,
|
|
39
|
-
Product Backlog Item,Approved,In Implementation,skipped,
|
|
40
|
-
Product Backlog Item,Approved,In Testing,skipped,
|
|
41
|
-
Product Backlog Item,Approved,In Review,skipped,
|
|
42
|
-
Product Backlog Item,Approved,Updating Docs,skipped,
|
|
38
|
+
Product Backlog Item,Approved,Design Validation,allowed,,,
|
|
39
|
+
Product Backlog Item,Approved,In Implementation,skipped,Design Validation,,
|
|
40
|
+
Product Backlog Item,Approved,In Testing,skipped,Design Validation;In Implementation,,
|
|
41
|
+
Product Backlog Item,Approved,In Review,skipped,Design Validation;In Implementation;In Testing,,
|
|
42
|
+
Product Backlog Item,Approved,Updating Docs,skipped,Design Validation;In Implementation;In Testing;In Review,,
|
|
43
43
|
Product Backlog Item,Approved,Done,human-only,,entered only by PR merge automation into integration,
|
|
44
44
|
Product Backlog Item,Approved,Parked for Removal,allowed,,,
|
|
45
45
|
Product Backlog Item,Approved,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
46
46
|
Product Backlog Item,Approved,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
47
|
-
Product Backlog Item,
|
|
48
|
-
Product Backlog Item,
|
|
49
|
-
Product Backlog Item,
|
|
50
|
-
Product Backlog Item,
|
|
51
|
-
Product Backlog Item,
|
|
52
|
-
Product Backlog Item,
|
|
53
|
-
Product Backlog Item,
|
|
54
|
-
Product Backlog Item,
|
|
55
|
-
Product Backlog Item,
|
|
56
|
-
Product Backlog Item,
|
|
47
|
+
Product Backlog Item,Design Validation,New,allowed,,,
|
|
48
|
+
Product Backlog Item,Design Validation,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
49
|
+
Product Backlog Item,Design Validation,In Implementation,allowed,,,
|
|
50
|
+
Product Backlog Item,Design Validation,In Testing,skipped,In Implementation,,
|
|
51
|
+
Product Backlog Item,Design Validation,In Review,skipped,In Implementation;In Testing,,
|
|
52
|
+
Product Backlog Item,Design Validation,Updating Docs,skipped,In Implementation;In Testing;In Review,,
|
|
53
|
+
Product Backlog Item,Design Validation,Done,human-only,,entered only by PR merge automation into integration,
|
|
54
|
+
Product Backlog Item,Design Validation,Parked for Removal,allowed,,,
|
|
55
|
+
Product Backlog Item,Design Validation,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
56
|
+
Product Backlog Item,Design Validation,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
57
57
|
Product Backlog Item,In Implementation,New,allowed,,,
|
|
58
58
|
Product Backlog Item,In Implementation,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
59
59
|
Product Backlog Item,In Implementation,In Testing,allowed,,,
|
|
60
|
-
Product Backlog Item,In Implementation,
|
|
61
|
-
Product Backlog Item,In Implementation,
|
|
60
|
+
Product Backlog Item,In Implementation,Design Validation,allowed,,,
|
|
61
|
+
Product Backlog Item,In Implementation,In Review,allowed,,,
|
|
62
|
+
Product Backlog Item,In Implementation,Updating Docs,allowed,,,
|
|
62
63
|
Product Backlog Item,In Implementation,Done,human-only,,entered only by PR merge automation into integration,
|
|
63
64
|
Product Backlog Item,In Implementation,Parked for Removal,allowed,,,
|
|
64
65
|
Product Backlog Item,In Implementation,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
@@ -66,7 +67,8 @@ Product Backlog Item,In Implementation,Committed,no-transition,,,Committed is a
|
|
|
66
67
|
Product Backlog Item,In Testing,New,allowed,,,
|
|
67
68
|
Product Backlog Item,In Testing,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
68
69
|
Product Backlog Item,In Testing,In Review,allowed,,,
|
|
69
|
-
Product Backlog Item,In Testing,
|
|
70
|
+
Product Backlog Item,In Testing,In Implementation,allowed,,,
|
|
71
|
+
Product Backlog Item,In Testing,Updating Docs,allowed,,,
|
|
70
72
|
Product Backlog Item,In Testing,Done,human-only,,entered only by PR merge automation into integration,
|
|
71
73
|
Product Backlog Item,In Testing,Parked for Removal,allowed,,,
|
|
72
74
|
Product Backlog Item,In Testing,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
@@ -75,6 +77,7 @@ Product Backlog Item,In Review,New,allowed,,,
|
|
|
75
77
|
Product Backlog Item,In Review,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
76
78
|
Product Backlog Item,In Review,In Implementation,allowed,,,
|
|
77
79
|
Product Backlog Item,In Review,Updating Docs,allowed,,,
|
|
80
|
+
Product Backlog Item,In Review,In Testing,allowed,,,
|
|
78
81
|
Product Backlog Item,In Review,Done,human-only,,entered only by PR merge automation into integration,
|
|
79
82
|
Product Backlog Item,In Review,Parked for Removal,allowed,,,
|
|
80
83
|
Product Backlog Item,In Review,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
@@ -83,35 +86,38 @@ Product Backlog Item,Updating Docs,New,allowed,,,
|
|
|
83
86
|
Product Backlog Item,Updating Docs,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
84
87
|
Product Backlog Item,Updating Docs,Done,human-only,,entered only by PR merge automation into integration,
|
|
85
88
|
Product Backlog Item,Updating Docs,Parked for Removal,allowed,,,
|
|
89
|
+
Product Backlog Item,Updating Docs,In Implementation,allowed,,,
|
|
90
|
+
Product Backlog Item,Updating Docs,In Review,allowed,,,
|
|
91
|
+
Product Backlog Item,Updating Docs,In Testing,allowed,,,
|
|
86
92
|
Product Backlog Item,Updating Docs,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
87
93
|
Product Backlog Item,Updating Docs,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
88
|
-
Product Backlog Item,Done,In Planning,
|
|
94
|
+
Product Backlog Item,Done,In Planning,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
89
95
|
Product Backlog Item,Done,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
90
|
-
Product Backlog Item,Done,Parked for Removal,
|
|
96
|
+
Product Backlog Item,Done,Parked for Removal,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
91
97
|
Product Backlog Item,Done,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
92
98
|
Product Backlog Item,Done,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
93
|
-
Product Backlog Item,Parked for Removal,New,
|
|
94
|
-
Product Backlog Item,Parked for Removal,In Planning,no-transition,,,Parked for Removal exits only to New (
|
|
95
|
-
Product Backlog Item,Parked for Removal,Awaiting Approval,no-transition,,,Parked for Removal exits only to New (
|
|
99
|
+
Product Backlog Item,Parked for Removal,New,human-only,,human revive only; agents cannot move items from Parked for Removal back to New,
|
|
100
|
+
Product Backlog Item,Parked for Removal,In Planning,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
101
|
+
Product Backlog Item,Parked for Removal,Awaiting Approval,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
96
102
|
Product Backlog Item,Parked for Removal,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
97
|
-
Product Backlog Item,Parked for Removal,
|
|
98
|
-
Product Backlog Item,Parked for Removal,In Implementation,no-transition,,,Parked for Removal exits only to New (
|
|
99
|
-
Product Backlog Item,Parked for Removal,In Testing,no-transition,,,Parked for Removal exits only to New (
|
|
100
|
-
Product Backlog Item,Parked for Removal,In Review,no-transition,,,Parked for Removal exits only to New (
|
|
101
|
-
Product Backlog Item,Parked for Removal,Updating Docs,no-transition,,,Parked for Removal exits only to New (
|
|
103
|
+
Product Backlog Item,Parked for Removal,Design Validation,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
104
|
+
Product Backlog Item,Parked for Removal,In Implementation,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
105
|
+
Product Backlog Item,Parked for Removal,In Testing,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
106
|
+
Product Backlog Item,Parked for Removal,In Review,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
107
|
+
Product Backlog Item,Parked for Removal,Updating Docs,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
102
108
|
Product Backlog Item,Parked for Removal,Done,human-only,,entered only by PR merge automation into integration,
|
|
103
109
|
Product Backlog Item,Parked for Removal,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
104
110
|
Product Backlog Item,Parked for Removal,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
105
|
-
Product Backlog Item,Removed,New,
|
|
111
|
+
Product Backlog Item,Removed,New,no-transition,,,Removed is terminal
|
|
106
112
|
Product Backlog Item,Removed,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
107
113
|
Product Backlog Item,Removed,Done,human-only,,entered only by PR merge automation into integration,
|
|
108
|
-
Product Backlog Item,Removed,Parked for Removal,
|
|
114
|
+
Product Backlog Item,Removed,Parked for Removal,no-transition,,,Removed is terminal
|
|
109
115
|
Product Backlog Item,Removed,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
110
116
|
Product Backlog Item,Committed,New,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
111
117
|
Product Backlog Item,Committed,In Planning,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
112
118
|
Product Backlog Item,Committed,Awaiting Approval,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
113
119
|
Product Backlog Item,Committed,Approved,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
114
|
-
Product Backlog Item,Committed,
|
|
120
|
+
Product Backlog Item,Committed,Design Validation,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
115
121
|
Product Backlog Item,Committed,In Implementation,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
116
122
|
Product Backlog Item,Committed,In Testing,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
117
123
|
Product Backlog Item,Committed,In Review,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
@@ -119,120 +125,132 @@ Product Backlog Item,Committed,Updating Docs,no-transition,,,Committed is a reti
|
|
|
119
125
|
Product Backlog Item,Committed,Done,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
120
126
|
Product Backlog Item,Committed,Parked for Removal,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
121
127
|
Product Backlog Item,Committed,Removed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
122
|
-
|
|
123
|
-
|
|
128
|
+
Product Backlog Item,In Reproduction,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
129
|
+
Product Backlog Item,In Reproduction,Done,human-only,,entered only by PR merge automation into integration,
|
|
130
|
+
Product Backlog Item,In Reproduction,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
131
|
+
Product Backlog Item,In Reproduction,Parked for Removal,allowed,,,
|
|
132
|
+
Product Backlog Item,In Reproduction,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
133
|
+
Product Backlog Item,In Fixing,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
134
|
+
Product Backlog Item,In Fixing,Done,human-only,,entered only by PR merge automation into integration,
|
|
135
|
+
Product Backlog Item,In Fixing,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
136
|
+
Product Backlog Item,In Fixing,Parked for Removal,allowed,,,
|
|
137
|
+
Product Backlog Item,In Fixing,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
138
|
+
Product Backlog Item,Committed,In Reproduction,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
139
|
+
Product Backlog Item,Committed,In Fixing,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
124
140
|
Bug,New,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
125
|
-
Bug,New,Spec Validation,skipped,In Planning;Awaiting Approval;Approved,,
|
|
126
|
-
Bug,New,In Implementation,skipped,In Planning;Awaiting Approval;Approved;Spec Validation,,
|
|
127
|
-
Bug,New,In Testing,skipped,In Planning;Awaiting Approval;Approved;Spec Validation;In Implementation,,
|
|
128
|
-
Bug,New,In Review,skipped,In Planning;Awaiting Approval;Approved;Spec Validation;In Implementation;In Testing,,
|
|
129
|
-
Bug,New,Updating Docs,skipped,In Planning;Awaiting Approval;Approved;Spec Validation;In Implementation;In Testing;In Review,,
|
|
130
141
|
Bug,New,Done,human-only,,entered only by PR merge automation into integration,
|
|
131
142
|
Bug,New,Parked for Removal,allowed,,,
|
|
132
143
|
Bug,New,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
133
144
|
Bug,New,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
134
|
-
Bug,In Planning,New,allowed,,,
|
|
135
|
-
Bug,In Planning,Awaiting Approval,allowed,,,
|
|
136
145
|
Bug,In Planning,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
137
|
-
Bug,In Planning,Spec Validation,skipped,Awaiting Approval;Approved,,
|
|
138
|
-
Bug,In Planning,In Implementation,skipped,Awaiting Approval;Approved;Spec Validation,,
|
|
139
|
-
Bug,In Planning,In Testing,skipped,Awaiting Approval;Approved;Spec Validation;In Implementation,,
|
|
140
|
-
Bug,In Planning,In Review,skipped,Awaiting Approval;Approved;Spec Validation;In Implementation;In Testing,,
|
|
141
|
-
Bug,In Planning,Updating Docs,skipped,Awaiting Approval;Approved;Spec Validation;In Implementation;In Testing;In Review,,
|
|
142
146
|
Bug,In Planning,Done,human-only,,entered only by PR merge automation into integration,
|
|
143
|
-
Bug,In Planning,Parked for Removal,allowed,,,
|
|
144
147
|
Bug,In Planning,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
145
148
|
Bug,In Planning,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
146
|
-
Bug,Awaiting Approval,New,allowed,,,
|
|
147
149
|
Bug,Awaiting Approval,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
148
|
-
Bug,Awaiting Approval,Spec Validation,skipped,Approved,,
|
|
149
|
-
Bug,Awaiting Approval,In Implementation,skipped,Approved;Spec Validation,,
|
|
150
|
-
Bug,Awaiting Approval,In Testing,skipped,Approved;Spec Validation;In Implementation,,
|
|
151
|
-
Bug,Awaiting Approval,In Review,skipped,Approved;Spec Validation;In Implementation;In Testing,,
|
|
152
|
-
Bug,Awaiting Approval,Updating Docs,skipped,Approved;Spec Validation;In Implementation;In Testing;In Review,,
|
|
153
150
|
Bug,Awaiting Approval,Done,human-only,,entered only by PR merge automation into integration,
|
|
154
|
-
Bug,Awaiting Approval,Parked for Removal,allowed,,,
|
|
155
151
|
Bug,Awaiting Approval,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
156
152
|
Bug,Awaiting Approval,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
157
|
-
Bug,Approved,
|
|
158
|
-
Bug,Approved,Spec Validation,allowed,,,
|
|
159
|
-
Bug,Approved,In Implementation,skipped,Spec Validation,,
|
|
160
|
-
Bug,Approved,In Testing,skipped,Spec Validation;In Implementation,,
|
|
161
|
-
Bug,Approved,In Review,skipped,Spec Validation;In Implementation;In Testing,,
|
|
162
|
-
Bug,Approved,Updating Docs,skipped,Spec Validation;In Implementation;In Testing;In Review,,
|
|
153
|
+
Bug,Approved,In Reproduction,allowed,,,
|
|
163
154
|
Bug,Approved,Done,human-only,,entered only by PR merge automation into integration,
|
|
164
155
|
Bug,Approved,Parked for Removal,allowed,,,
|
|
165
156
|
Bug,Approved,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
166
157
|
Bug,Approved,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
167
|
-
Bug,
|
|
168
|
-
Bug,
|
|
169
|
-
Bug,
|
|
170
|
-
Bug,
|
|
171
|
-
Bug,Spec Validation,In Review,skipped,In Implementation;In Testing,,
|
|
172
|
-
Bug,Spec Validation,Updating Docs,skipped,In Implementation;In Testing;In Review,,
|
|
173
|
-
Bug,Spec Validation,Done,human-only,,entered only by PR merge automation into integration,
|
|
174
|
-
Bug,Spec Validation,Parked for Removal,allowed,,,
|
|
175
|
-
Bug,Spec Validation,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
176
|
-
Bug,Spec Validation,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
177
|
-
Bug,In Implementation,New,allowed,,,
|
|
158
|
+
Bug,Design Validation,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
159
|
+
Bug,Design Validation,Done,human-only,,entered only by PR merge automation into integration,
|
|
160
|
+
Bug,Design Validation,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
161
|
+
Bug,Design Validation,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
178
162
|
Bug,In Implementation,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
179
|
-
Bug,In Implementation,In Testing,allowed,,,
|
|
180
|
-
Bug,In Implementation,In Review,skipped,In Testing,,
|
|
181
|
-
Bug,In Implementation,Updating Docs,skipped,In Testing;In Review,,
|
|
182
163
|
Bug,In Implementation,Done,human-only,,entered only by PR merge automation into integration,
|
|
183
|
-
Bug,In Implementation,Parked for Removal,allowed,,,
|
|
184
164
|
Bug,In Implementation,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
185
165
|
Bug,In Implementation,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
186
|
-
Bug,In
|
|
166
|
+
Bug,In Reproduction,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
167
|
+
Bug,In Reproduction,In Fixing,allowed,,,
|
|
168
|
+
Bug,In Reproduction,Done,human-only,,entered only by PR merge automation into integration,
|
|
169
|
+
Bug,In Reproduction,Parked for Removal,allowed,,,
|
|
170
|
+
Bug,In Reproduction,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
171
|
+
Bug,In Reproduction,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
172
|
+
Bug,In Fixing,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
173
|
+
Bug,In Fixing,In Testing,allowed,,,
|
|
174
|
+
Bug,In Fixing,In Review,allowed,,,
|
|
175
|
+
Bug,In Fixing,Updating Docs,allowed,,,
|
|
176
|
+
Bug,In Fixing,Done,human-only,,entered only by PR merge automation into integration,
|
|
177
|
+
Bug,In Fixing,Parked for Removal,allowed,,,
|
|
178
|
+
Bug,In Fixing,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
179
|
+
Bug,In Fixing,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
187
180
|
Bug,In Testing,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
181
|
+
Bug,In Testing,In Fixing,allowed,,,
|
|
188
182
|
Bug,In Testing,In Review,allowed,,,
|
|
189
|
-
Bug,In Testing,Updating Docs,
|
|
183
|
+
Bug,In Testing,Updating Docs,allowed,,,
|
|
190
184
|
Bug,In Testing,Done,human-only,,entered only by PR merge automation into integration,
|
|
191
185
|
Bug,In Testing,Parked for Removal,allowed,,,
|
|
192
186
|
Bug,In Testing,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
193
187
|
Bug,In Testing,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
194
|
-
Bug,In Review,New,allowed,,,
|
|
195
188
|
Bug,In Review,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
196
|
-
Bug,In Review,In
|
|
189
|
+
Bug,In Review,In Fixing,allowed,,,
|
|
190
|
+
Bug,In Review,In Testing,allowed,,,
|
|
197
191
|
Bug,In Review,Updating Docs,allowed,,,
|
|
198
192
|
Bug,In Review,Done,human-only,,entered only by PR merge automation into integration,
|
|
199
193
|
Bug,In Review,Parked for Removal,allowed,,,
|
|
200
194
|
Bug,In Review,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
201
195
|
Bug,In Review,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
202
|
-
Bug,Updating Docs,New,allowed,,,
|
|
203
196
|
Bug,Updating Docs,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
197
|
+
Bug,Updating Docs,In Fixing,allowed,,,
|
|
198
|
+
Bug,Updating Docs,In Testing,allowed,,,
|
|
199
|
+
Bug,Updating Docs,In Review,allowed,,,
|
|
204
200
|
Bug,Updating Docs,Done,human-only,,entered only by PR merge automation into integration,
|
|
205
201
|
Bug,Updating Docs,Parked for Removal,allowed,,,
|
|
206
202
|
Bug,Updating Docs,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
207
203
|
Bug,Updating Docs,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
208
|
-
Bug,Done,
|
|
204
|
+
Bug,Done,New,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
205
|
+
Bug,Done,In Planning,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
206
|
+
Bug,Done,Awaiting Approval,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
209
207
|
Bug,Done,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
210
|
-
Bug,Done,
|
|
208
|
+
Bug,Done,Design Validation,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
209
|
+
Bug,Done,In Implementation,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
210
|
+
Bug,Done,In Reproduction,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
211
|
+
Bug,Done,In Fixing,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
212
|
+
Bug,Done,In Testing,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
213
|
+
Bug,Done,In Review,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
214
|
+
Bug,Done,Updating Docs,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
215
|
+
Bug,Done,Parked for Removal,no-transition,,,completed items stay Done; a G2 rejection gets its own linked item
|
|
211
216
|
Bug,Done,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
212
217
|
Bug,Done,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
213
|
-
Bug,Parked for Removal,New,
|
|
214
|
-
Bug,Parked for Removal,In Planning,no-transition,,,Parked for Removal exits only to New (
|
|
215
|
-
Bug,Parked for Removal,Awaiting Approval,no-transition,,,Parked for Removal exits only to New (
|
|
218
|
+
Bug,Parked for Removal,New,human-only,,human revive only; agents cannot move items from Parked for Removal back to New,
|
|
219
|
+
Bug,Parked for Removal,In Planning,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
220
|
+
Bug,Parked for Removal,Awaiting Approval,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
216
221
|
Bug,Parked for Removal,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
217
|
-
Bug,Parked for Removal,
|
|
218
|
-
Bug,Parked for Removal,In Implementation,no-transition,,,Parked for Removal exits only to New (
|
|
219
|
-
Bug,Parked for Removal,In
|
|
220
|
-
Bug,Parked for Removal,In
|
|
221
|
-
Bug,Parked for Removal,
|
|
222
|
+
Bug,Parked for Removal,Design Validation,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
223
|
+
Bug,Parked for Removal,In Implementation,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
224
|
+
Bug,Parked for Removal,In Reproduction,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
225
|
+
Bug,Parked for Removal,In Fixing,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
226
|
+
Bug,Parked for Removal,In Testing,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
227
|
+
Bug,Parked for Removal,In Review,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
228
|
+
Bug,Parked for Removal,Updating Docs,no-transition,,,Parked for Removal exits only to New (human-only revive) or Removed (G3 human)
|
|
222
229
|
Bug,Parked for Removal,Done,human-only,,entered only by PR merge automation into integration,
|
|
223
230
|
Bug,Parked for Removal,Removed,human-only,,G3 — human removal only; agents cannot move items to Removed,
|
|
224
231
|
Bug,Parked for Removal,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
225
|
-
Bug,Removed,New,
|
|
232
|
+
Bug,Removed,New,no-transition,,,Removed is terminal
|
|
233
|
+
Bug,Removed,In Planning,no-transition,,,Removed is terminal
|
|
234
|
+
Bug,Removed,Awaiting Approval,no-transition,,,Removed is terminal
|
|
226
235
|
Bug,Removed,Approved,human-only,,G1 — human approval only; agents cannot move items to Approved,
|
|
236
|
+
Bug,Removed,Design Validation,no-transition,,,Removed is terminal
|
|
237
|
+
Bug,Removed,In Implementation,no-transition,,,Removed is terminal
|
|
238
|
+
Bug,Removed,In Reproduction,no-transition,,,Removed is terminal
|
|
239
|
+
Bug,Removed,In Fixing,no-transition,,,Removed is terminal
|
|
240
|
+
Bug,Removed,In Testing,no-transition,,,Removed is terminal
|
|
241
|
+
Bug,Removed,In Review,no-transition,,,Removed is terminal
|
|
242
|
+
Bug,Removed,Updating Docs,no-transition,,,Removed is terminal
|
|
227
243
|
Bug,Removed,Done,human-only,,entered only by PR merge automation into integration,
|
|
228
|
-
Bug,Removed,Parked for Removal,
|
|
244
|
+
Bug,Removed,Parked for Removal,no-transition,,,Removed is terminal
|
|
229
245
|
Bug,Removed,Committed,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
230
246
|
Bug,Committed,New,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
231
247
|
Bug,Committed,In Planning,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
232
248
|
Bug,Committed,Awaiting Approval,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
233
249
|
Bug,Committed,Approved,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
234
|
-
Bug,Committed,
|
|
250
|
+
Bug,Committed,Design Validation,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
235
251
|
Bug,Committed,In Implementation,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
252
|
+
Bug,Committed,In Reproduction,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
253
|
+
Bug,Committed,In Fixing,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
236
254
|
Bug,Committed,In Testing,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
237
255
|
Bug,Committed,In Review,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|
|
238
256
|
Bug,Committed,Updating Docs,no-transition,,,Committed is a retired state (UI-hidden; no route references it)
|