common-qa-mcp 0.10.0 → 0.11.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.
Files changed (42) hide show
  1. package/dist/adapters/http.d.ts +4 -0
  2. package/dist/adapters/http.d.ts.map +1 -1
  3. package/dist/adapters/http.js +19 -0
  4. package/dist/adapters/http.js.map +1 -1
  5. package/dist/adapters/remoteMcp/adapter.js +1 -1
  6. package/dist/adapters/simplifyqa/adapter.d.ts +48 -2
  7. package/dist/adapters/simplifyqa/adapter.d.ts.map +1 -1
  8. package/dist/adapters/simplifyqa/adapter.js +369 -46
  9. package/dist/adapters/simplifyqa/adapter.js.map +1 -1
  10. package/dist/adapters/simplifyqa/mapper.d.ts.map +1 -1
  11. package/dist/adapters/simplifyqa/mapper.js +10 -2
  12. package/dist/adapters/simplifyqa/mapper.js.map +1 -1
  13. package/dist/adapters/types.d.ts +22 -1
  14. package/dist/adapters/types.d.ts.map +1 -1
  15. package/dist/domain/types.d.ts +28 -0
  16. package/dist/domain/types.d.ts.map +1 -1
  17. package/dist/initAgents.d.ts.map +1 -1
  18. package/dist/initAgents.js +32 -17
  19. package/dist/initAgents.js.map +1 -1
  20. package/dist/server.d.ts.map +1 -1
  21. package/dist/server.js +18 -12
  22. package/dist/server.js.map +1 -1
  23. package/dist/tools/backlog.tools.d.ts.map +1 -1
  24. package/dist/tools/backlog.tools.js +96 -0
  25. package/dist/tools/backlog.tools.js.map +1 -1
  26. package/dist/tools/discovery.tools.d.ts.map +1 -1
  27. package/dist/tools/discovery.tools.js +160 -10
  28. package/dist/tools/discovery.tools.js.map +1 -1
  29. package/dist/tools/recording.tools.js +74 -16
  30. package/dist/tools/recording.tools.js.map +1 -1
  31. package/dist/tools/report.tools.d.ts +12 -0
  32. package/dist/tools/report.tools.d.ts.map +1 -0
  33. package/dist/tools/report.tools.js +104 -0
  34. package/dist/tools/report.tools.js.map +1 -0
  35. package/dist/tools/testcase.tools.d.ts.map +1 -1
  36. package/dist/tools/testcase.tools.js +88 -11
  37. package/dist/tools/testcase.tools.js.map +1 -1
  38. package/dist/tools/xlsx.d.ts +8 -0
  39. package/dist/tools/xlsx.d.ts.map +1 -0
  40. package/dist/tools/xlsx.js +113 -0
  41. package/dist/tools/xlsx.js.map +1 -0
  42. package/package.json +1 -1
@@ -56,7 +56,7 @@ const COMMON_QA_AGENT = {
56
56
  // Backlog CRUD — top-down authoring: epic → feature → story.
57
57
  'common-qa-mcp/epic_list', 'common-qa-mcp/epic_get', 'common-qa-mcp/epic_create', 'common-qa-mcp/epic_update',
58
58
  'common-qa-mcp/feature_list', 'common-qa-mcp/feature_get', 'common-qa-mcp/feature_create', 'common-qa-mcp/feature_update',
59
- 'common-qa-mcp/story_create', 'common-qa-mcp/story_update', 'common-qa-mcp/story_sync_testcases',
59
+ 'common-qa-mcp/story_create', 'common-qa-mcp/story_update', 'common-qa-mcp/backlog_delete', 'common-qa-mcp/report_download', 'common-qa-mcp/story_sync_testcases',
60
60
  // Test suites — list / read / create / edit membership / execute (execute reuses run_status + run_stop)
61
61
  'common-qa-mcp/suite_list', 'common-qa-mcp/suite_get', 'common-qa-mcp/suite_create', 'common-qa-mcp/suite_run',
62
62
  'common-qa-mcp/suite_add_testcases', 'common-qa-mcp/suite_remove_testcases',
@@ -145,22 +145,23 @@ The SimplifyQA local agent does NOT expose \`web\` / \`mainframe\` / \`android\`
145
145
 
146
146
  **Record a NEW test case from scratch — the DIRECT flow (works for every technology).**
147
147
 
148
- **NO PRE-FLIGHT.** Do NOT create a draft. Do NOT open anything. Do NOT call any \`tc_*\` tool before \`core_activate_technology\`. The recording session IS the entry point — \`core_activate_technology\` launches the recorder and creates the test case shell itself. The user's Save Testcase click in the recorder UI is what persists it. Skipping straight to step 3 below is CORRECT — anything you do before it is wrong and wastes turns.
148
+ **NO PRE-FLIGHT.** Do NOT create a draft. Do NOT open anything. Do NOT call any \`tc_*\` tool before \`core_activate_technology\`. The recording session IS the entry point — \`core_activate_technology\` launches the recorder and creates the test case shell itself. The user's Save Testcase click in the recorder UI — or an explicit \`tc_save({ sessionId })\` — is what persists it. Skipping straight to step 3 below is CORRECT — anything you do before it is wrong and wastes turns.
149
149
 
150
- Common shape for ALL technologies (WEB / MAINFRAME / ANDROID / IOS / API):
150
+ Common shape for ALL technologies (WEB / MAINFRAME / ANDROID / IOS / API / DATABASE):
151
151
 
152
152
  1. **\`qa_connection_status\`** — verify connected + note the projectId. If disconnected, \`qa_connect\` first.
153
- 2. **Ask the technology-specific setup questions BEFORE \`core_activate_technology\`** (see per-tech blocks below — mainframe needs a route + \`app_path\`; android/ios need a \`deviceId\` when more than one is present; API needs nothing).
154
- 3. **\`core_activate_technology({ technology: "<WEB|MAINFRAME|ANDROID|IOS|API>", testcaseName, ...tech-specific args })\`** — ONCE, at the start. Launches the recorder session and opens the SimplifyQA recorder UI (API has no recorder UI — see API block). The response's \`structuredContent.sessionId\` is the recording session id.
155
- 4. **\`<tech>_launch_application({ ... })\`** — ALWAYS the FIRST action call after activation. NO \`<tech>_snapshot\` / verify / save before it.
153
+ 2. **Ask the technology-specific setup questions BEFORE \`core_activate_technology\`** (see per-tech blocks below — **WEB needs the AI-only vs Hybrid recording mode, asked on EVERY recording and never reused from an earlier one**; mainframe needs a route + \`app_path\`; **android/ios need the platform (\`Android or iOS?\`) plus a \`deviceId\` when more than one is present**; API needs nothing; DATABASE needs the connection details, asked from the user).
154
+ 3. **\`core_activate_technology({ technology: "<WEB|MAINFRAME|ANDROID|IOS|API|DATABASE>", testcaseName, ...tech-specific args })\`** — ONCE, at the start. Launches the recorder session and opens the SimplifyQA recorder UI. API and DATABASE also stream their steps into that window (see their blocks). The response's \`structuredContent.sessionId\` is the recording session id. If a test case with the same \`testcaseName\` already exists the call is REFUSED — ASK the user for another name, or retry with \`allowDuplicateName: true\` only when they explicitly want a second TC with that same name.
155
+ 4. **\`<tech>_launch_application({ ... })\`** — ALWAYS the FIRST action call after activation for WEB / MAINFRAME / ANDROID / IOS. **API has no launch verb** — its first action is \`api_send_request\`. **DATABASE has no launch verb** — its first action is \`db_connect\` (or \`db_connect_mongo\`). NO \`<tech>_snapshot\` / verify / save before it.
156
156
  5. **\`<tech>_snapshot()\`** to get element refs (\`e1\`, \`e2\`, …) — only where the technology HAS a snapshot (web / android / ios do; mainframe does NOT). Re-snapshot only when the page/screen changed or a ref is stale; reuse refs while it's the same. Pass a ref to the action verb — NEVER a raw locator.
157
157
  6. Per user intent: pick the target ref (or field label on mainframe), call exactly ONE action verb, narrate one line.
158
158
  7. On error inside recording: ONE fresh \`<tech>_snapshot\` + retry once (skip the snapshot on mainframe), then STOP and report the failing step.
159
159
  8. When the flow is done: **\`core_close_session()\`** — tears down the browser / emulator / device attachment.
160
- 9. STOP. Report the recording session id. For WEB/MAINFRAME/ANDROID/IOS: tell the user to review the captured steps in the SimplifyQA recorder UI and click **Save Testcase** — the recorder UI creates the new automated test case in the backend. **Do NOT call \`tc_save\` / \`tc_draft_create\` / \`update_testcase\` / \`journal_modify\` on those paths** — the recording lives in the recorder UI's own store. **API is different** (no recorder UI): \`tc_draft_from_journal\` → \`tc_save\` is the correct and only save path — see the API block below.
160
+ 9. STOP. Report the recording session id. For **ALL** technologies (including API and DATABASE): the recorder window's **Save Testcase** button is the default save path — tell the user to review the captured steps and click it. If the user EXPLICITLY asks you to save from chat ("save it", "save the test case", "persist it"), call **\`tc_save({ sessionId })\`** — it clicks the recorder window's own Save button, so the saved TC is exactly what the window shows (user edits, control flow, functions, objects, parameters, API popup changes, DB connection/query values, title/module/story). **Do NOT call \`tc_save({ draftId })\` / \`tc_draft_from_journal\` / \`update_testcase\` / \`journal_modify\` for a live recording, and never do BOTH the UI Save and \`tc_save\` (duplicate TC).** Only when the window/UI is genuinely unavailable (or the user explicitly does not want it) and the user asks for a headless save: \`core_close_session()\` → \`tc_draft_from_journal\` → \`tc_save({ draftId })\` — see the API and DATABASE blocks.
161
161
 
162
162
  ### WEB
163
- - \`core_activate_technology({ technology: "WEB", testcaseName })\` → \`web_launch_application({ url })\` → \`web_snapshot\` + \`web_click\` / \`web_enter_text\` / \`web_select_item_from_dropdown\` / \`web_validate_text\` / \`web_keyboard_action\` / …
163
+ - \`core_activate_technology({ technology: "WEB", testcaseName, recordingMode, recordingModeAskedUser })\` → \`web_launch_application({ url })\` → \`web_snapshot\` + \`web_click\` / \`web_enter_text\` / \`web_select_item_from_dropdown\` / \`web_validate_text\` / \`web_keyboard_action\` / …
164
+ - **Recording mode — ASK on EVERY WEB recording, not once per chat:** "AI-only (records only the steps I drive) or Hybrid (also records your own clicks)?" Pass \`recordingMode: "AI" | "HYBRID"\` AND \`recordingModeAskedUser: "ai" | "hybrid"\` (they must match). Never reuse an earlier answer unless the user explicitly says "same as last time". The tool REFUSES a WEB activation without both.
164
165
  - Tabs & iframes (the snapshot only sees the CURRENT tab + frame — switching is an explicit step): \`web_switch_to_tab({ tab: "1" })\` + \`web_snapshot\`; \`web_switch_to_parent_tab\`; \`web_close_tab({ tab: … })\`. Iframes: \`web_switch_to_iframe({ ref: <iframe's ref> })\` + \`web_snapshot\`; \`web_switch_to_parent_iframe\`; \`web_switch_to_default_content\` back to the page.
165
166
 
166
167
  ### MAINFRAME
@@ -175,7 +176,8 @@ Common shape for ALL technologies (WEB / MAINFRAME / ANDROID / IOS / API):
175
176
  ### ANDROID
176
177
  - **\`android_list_devices\` FIRST** — never guess a device. Lists every attached device (udid + name + which are BUSY) and the app packages installed on each. The user names the app humanly ("record a redBus search"); YOU resolve to the exact package id (\`in.redbus.android\`) — the mapping is not derivable from the display name, and the user does not know the package id either.
177
178
  - \`deviceId\`: omit ONLY when exactly one device is connected (auto-selected, reported back). With SEVERAL connected the call is REFUSED and udids are listed — **ASK the user which device**, never pick. Recording on the wrong device silently produces a test case against the wrong handset.
178
- - \`core_activate_technology({ technology: "ANDROID", testcaseName, deviceId })\` → \`android_launch_app({ package, activity? })\` is the FIRST step → \`android_snapshot\` returns refs (\`e1\`, \`e2\`, … tagged with locator quality: \`id|desc|text|bounds|xpath\`) → \`android_click\` / \`android_enter_text\` / \`android_validate_text\` / … (ref-based verbs target by ref; positional verbs like the web ones).
179
+ - \`core_activate_technology({ technology: "ANDROID", testcaseName, platformAskedUser: "android", deviceId })\` → \`android_launch_app({ package, activity? })\` is the FIRST step → \`android_snapshot\` returns refs (\`e1\`, \`e2\`, … tagged with locator quality: \`id|desc|text|bounds|xpath\`) → \`android_click\` / \`android_enter_text\` / \`android_validate_text\` / … (ref-based verbs target by ref; positional verbs like the web ones).
180
+ - **ASK "Android or iOS?" on EVERY mobile recording** and pass \`platformAskedUser: "android"\` (must match \`technology\`). The tool REFUSES the activation without it; never reuse a previous session's platform.
179
181
  - Do NOT add \`generic_wait\` / pause steps during ANDROID recording — android verbs already wait for the UI to settle. Add a wait ONLY if the user explicitly asks for one.
180
182
  - Local devices only for now (USB debugging enabled, visible to \`adb devices\`); LambdaTest cloud is not wired to this path yet. One recording per device (different devices in parallel).
181
183
 
@@ -183,27 +185,39 @@ Common shape for ALL technologies (WEB / MAINFRAME / ANDROID / IOS / API):
183
185
  - Same division of labour as ANDROID but for iPhones / iPads via WebDriverAgent (XCUITest):
184
186
  - **\`ios_list_devices\` FIRST** — lists every device + installed app (\`Display Name — bundleId\`). Match the user's word against the **display name** (that's the real home-screen string; the bundleId is not derivable from it — Photos is \`com.apple.mobileslideshow\`).
185
187
  - \`deviceId\`: same rules as android — omit with one device, ask with several.
186
- - \`core_activate_technology({ technology: "IOS", testcaseName, bundleId, deviceId })\` → \`ios_launch_app\` is the FIRST step → \`ios_snapshot\` + \`ios_click\` / \`ios_enter_text\` / \`ios_validate_text\` / … (same shape as android).
188
+ - \`core_activate_technology({ technology: "IOS", testcaseName, platformAskedUser: "ios", bundleId, deviceId })\` → \`ios_launch_app\` is the FIRST step → \`ios_snapshot\` + \`ios_click\` / \`ios_enter_text\` / \`ios_validate_text\` / … (same shape as android).
189
+ - **ASK "Android or iOS?" on EVERY mobile recording** and pass \`platformAskedUser: "ios"\` (must match \`technology\`). The tool REFUSES the activation without it; never reuse a previous session's platform.
187
190
  - Real device does NOT need a macOS host (go-ios drives it from Windows/Linux); only a SIMULATOR requires macOS. A real device additionally needs WDA signed and installed (that's what \`projectId\` is for on ios; simulator has no signing so omit it). Bring-up is slower than android on a real device — expect several early polls still reading "recording", not a stall. One recording per device.
188
191
 
189
192
  ### API
190
193
  - No device, no browser, no snapshot, no \`app_path\`. One tool verb: \`api_send_request\`.
191
- - \`core_activate_technology({ technology: "API", testcaseName })\` → \`api_send_request({ method, url, headers?, query?, body?: { type: "JSON"|"XML"|"TEXT"|"NONE"|"FORM_DATA"|"X_WWW_FORM_URLENCODED", data: { payload? } }, auth?: { type: "bearer"|"basic"|"apikey"|"none", token?, username?, password?, key?, value? }, assertions?: [{ path, condition, expectedValue }], extract?: [{ path, store_as }], step_description? })\`.
194
+ - \`core_activate_technology({ technology: "API", testcaseName })\` returns \`structuredContent.sessionId\` — **keep it**. API steps stream into the recorder window, and the same id is the journal id used by the headless \`tc_draft_from_journal\` fallback; losing it leaves that fallback unsaveable.
195
+ - \`api_send_request({ method, url, headers?, query?, body?: { type: "JSON"|"XML"|"TEXT"|"NONE", data: { payload? } }, auth?: { type: "bearer"|"basic"|"apikey"|"none", token?, username?, password?, key?, value? }, assertions?: [{ path, condition, expectedValue }], extract?: [{ path, store_as }], step_description? })\`.
196
+ - Bodies: JSON / XML / TEXT (or NONE for no body). \`FORM_DATA\` and \`X_WWW_FORM_URLENCODED\` are **not wired to the execution plugin yet** — the call is rejected, so use JSON/XML/TEXT.
192
197
  - Path syntax: \`statusCode\` | \`responseTime\` | \`responseSize\` | \`responseBody\` | \`$.headers.X-Foo\` | \`$.body.a.b[0]\` or \`a.b[0]\` (JSON body path, dot + bracket index).
193
198
  - Assertion conditions: \`EQUALS\`, \`NOT_EQUALS\`, \`CONTAINS\`, \`DOES_NOT_CONTAIN\`, \`NOT_EMPTY\`, \`EQUAL_TO_EMPTY\`, \`GREATER_THAN\`, \`LESSER_THAN\`, \`GREATER_THAN_OR_EQUAL_TO\`, \`LESSER_THAN_OR_EQUAL_TO\`.
194
199
  - **Chaining is \`{{var}}\` interpolation** — \`extract\` an \$.token in call 1, then reference \`{{token}}\` in call 2's \`auth.token\` / \`headers\` / \`url\` / \`body.data.payload\`. Supported in every string field. Do NOT use \`from_runtime:\` for API — that's a web/mainframe concept.
195
- - **SAVE on API is NOT via a recorder UI button** (there is no recorder UI for API). After the last call: \`core_close_session()\` → \`tc_draft_from_journal({ sessionId })\` → optional \`tc_draft_update\` → \`tc_save({ draftId })\`. That's the ONE time \`tc_save\` is correct on SimplifyQA.
200
+ - **SAVE on API — the recorder window is the default path.** API steps stream into the \`/mcp-recorder\` window (a separate \`RECORDED_API_STEP\` event; the normal RECORDED_STEP handler is untouched) so the user can open each step's API popup, verify the request/assertions, and click **Save Testcase**. After the last request: STOP, do NOT call \`core_close_session\`, and tell the user to review + save. If the user explicitly says save from chat, call \`tc_save({ sessionId })\` — it clicks the recorder's own Save button, so the edited API request/assertions are saved exactly. Do NOT also call \`tc_save({ draftId })\` — that would create a duplicate.
201
+ - Headless fallback ONLY when the user explicitly does not want the UI, or the window/UI is unavailable: \`core_close_session()\` → \`tc_draft_from_journal({ sessionId })\` → optional \`tc_draft_update\` → \`tc_save({ draftId })\`, using the \`sessionId\` from \`core_activate_technology\` (or \`core_active_recordings\` if lost).
196
202
  - Each API call executes LIVE against the real endpoint. A failed assertion stops the step and is reported; the session stays open for the next call.
197
203
 
204
+ ### DATABASE
205
+ - No device, no browser, no snapshot, no \`app_path\`. The recorder window opens on activation and each recorded step streams into it (like web). SQL: \`db_connect\` → \`db_execute_query\` / \`db_update\` / \`db_read_data\` / \`db_insert_data\` → \`db_close\`. MongoDB: \`db_connect_mongo\` → \`db_insert_document\` / \`db_update_documents\` / \`db_read_documents\`.
206
+ - \`core_activate_technology({ technology: "DATABASE", testcaseName })\` → \`db_connect({ dbType, host, port, user, password, database })\` is the FIRST step (or \`connectionString\` instead of host/port/database; \`dbType\` is one of MYSQL / ORACLE / SQLSERVER / DB2 / POSTGRES / MSSQL / SQLSERVERJTDS / MSSQLWINDOWSAUTH). ASK the user for the connection details — never invent a host or credentials. Each call needs only its own args; see \`tools/list\` for the exact schema.
207
+ - Each db_* call executes LIVE against the real database through the DB plugin, and the step is recorded ONLY if it succeeds. A bad host or bad SQL returns the plugin's error and records nothing — fix the argument and retry the same call.
208
+ - To capture a result pass \`store_as: "<name>"\` (\`db_read_data\` and \`db_read_documents\` REQUIRE it). Reuse it in a later step with \`from_runtime: "<name>"\`. \`db_execute_query\` without \`store_as\` only executes — no rows come back.
209
+ - **SAVE:** after the last step, tell the user to review the steps in the recorder window and click **Save Testcase**. If the user explicitly asks you to save from chat, call \`tc_save({ sessionId })\` — it clicks the recorder window's own Save, so the recorded DB steps (connections, queries, stored results) are saved exactly. Do NOT call \`core_close_session\` before they save. Headless fallback, only when the user explicitly does not want the UI or the UI is unavailable: \`core_close_session()\` → \`tc_draft_from_journal({ sessionId })\` → \`tc_save({ draftId })\` (only when the user explicitly says to save). Never do both (duplicate TC).
210
+ - Credentials typed into \`db_connect\` are saved as ordinary parameters (a \`Password\` parameter is marked protected); tell the user before recording a real production password.
211
+
198
212
  ### Automate an EXISTING manual test case (any technology)
199
- Use **\`tc_automate({ tcId, url, extra? })\`** first — it returns a recording guide built from the manual steps (with \`testcaseName\` + numeric \`userstoryId\` / \`moduleId\` already derived); ASK the user for URL / credentials / assertions and pass as \`url\` + \`extra\`. Then run the same technology-appropriate chain above. Same save story — the recorder UI's **Save Testcase** button creates the new automated TC (the source manual TC stays untouched).
213
+ Use **\`tc_automate({ tcId, url, extra? })\`** first — it returns a recording guide built from the manual steps (with \`testcaseName\` + numeric \`userstoryId\` / \`moduleId\` already derived); ASK the user for URL / credentials / assertions and pass as \`url\` + \`extra\`. Then run the same technology-appropriate chain above. Same save story — the recorder UI's **Save Testcase** button (or an explicit \`tc_save({ sessionId })\`) creates the new automated TC; the source manual TC stays untouched.
200
214
 
201
215
  ### Rules while recording on SimplifyQA (all technologies)
202
216
  - Record ONLY what the user asked for. Do NOT add extra verify/validate steps unless the user says "verify" / "assert" / "check".
203
217
  - For a randomized value (e.g. random Indian name), use \`generic_generate_random_alphanumeric({ count, store_as: "<name>" })\` then reference it via \`from_runtime: "<name>"\` in the enter/select verb — NEVER pass \`\${name}\` as a literal.
204
218
  - Never record a rejected step (intent count == recorded-step count). Always supply \`object_name\` / \`parameter_name\` / \`step_description\`.
205
219
  - Control flow: \`core_if\` / \`core_else_if\` / \`core_else\` / \`core_end_if\` for conditionals; \`core_loop { count: N }\` / \`core_end_loop\` for repetition; \`core_reuse_function { function: "FN-12", params: {...} }\` to reuse a saved function (records ONE function step; then re-snapshot). Balance EVERY \`core_if\` with \`core_end_if\` and EVERY \`core_loop\` with \`core_end_loop\`.
206
- - After the last step, STOP, report the recording session id, and confirm before \`core_close_session()\`.
220
+ - After the last step, STOP, report the recording session id, and confirm before \`core_close_session()\`. If steps are still unsaved the close is REFUSED and returns a one-shot \`confirm: "<token>"\` — ASK the user (SAVE / DISCARD / CLOSE ANYWAY) and only retry with that token when they explicitly choose to discard, because every captured step is then lost.
207
221
 
208
222
  ## Author backlog from a BRD / context — TOP-DOWN, ASK EACH RUNG
209
223
  When the user hands you a BRD, spec, or free-form context and asks to **generate stories** (or "create user stories from this", "break this down into stories", "generate the backlog"), you are AUTHORING the backlog top-down: **epic → feature → story**. Do NOT create orphan stories. Walk these questions IN ORDER, ASK each and WAIT for the answer before moving on — never assume, never skip:
@@ -215,11 +229,11 @@ The three questions are NOT optional and NOT batch-mergeable ("here's an epic +
215
229
 
216
230
  ## Stories → manual test cases → automate
217
231
  Pull up user stories, draft MANUAL test cases for them, and later promote those to automated.
218
- - **Backlog hierarchy: epic → feature → story.** Use **\`epic_list\` / \`epic_get\` / \`epic_create\` / \`epic_update\`** for the top rung (EP_XXX), **\`feature_list\` / \`feature_get\` / \`feature_create\` / \`feature_update\`** for the middle (FT_XXX, links up via \`epicId\`), and **\`story_create\` / \`story_update\`** for stories (US_XXX, links up via \`epicId\` + \`featureId\`). All four LIST tools accept the same \`createdBy\` / \`updatedBy\` / \`ownerId\` filters (numeric userId or \`"me"\`; resolve names via \`list_users\` first). Create/update require \`state\` — it must match the project's state config; call \`epic_get\` / \`feature_get\` / \`story_get\` on an existing item to see valid values. Updates take an \`updateVersion\` from the last read (optimistic concurrency) — omit it only for blind writes.
232
+ - **Backlog hierarchy: epic → feature → story.** Use **\`epic_list\` / \`epic_get\` / \`epic_create\` / \`epic_update\`** for the top rung (EP_XXX), **\`feature_list\` / \`feature_get\` / \`feature_create\` / \`feature_update\`** for the middle (FT_XXX, links up via \`epicId\`), and **\`story_create\` / \`story_update\`** for stories (US_XXX, links up via \`epicId\` + \`featureId\`). All four LIST tools accept the same \`createdBy\` / \`updatedBy\` / \`ownerId\` filters (numeric userId or \`"me"\`; resolve names via \`list_users\` first). Create/update require \`state\` — it must match the project's state config; call \`epic_get\` / \`feature_get\` / \`story_get\` on an existing item to see valid values. Updates take an \`updateVersion\` from the last read (optimistic concurrency) — omit it only for blind writes. **Delete** an epic / feature / story / defect / task with **\`backlog_delete({ kind, ref })\`** — \`ref\` is the NAME, key (EP_/FT_/US_/DF_) or id; it is TWO-STEP (preview first, ASK the user, then \`confirm:true\`), refuses items that still have dependents, and lists matches instead of guessing when a name is ambiguous. No agent needed.
219
233
  - **Discover stories** — **\`story_list({ search? })\`** finds stories by keyword (key / title / description / acceptance criteria); **\`story_get({ id })\`** reads ONE (id or business key like \`US_12\`) with its **acceptance criteria**. When the user asks about stories ("show me the login stories", "what's US_12"), start here.
220
234
  - **Create MANUAL test cases for a story (YOU draft them).** Read the story's acceptance criteria with \`story_get\`, then author manual test cases that COVER them — a happy-path case plus the negative / edge cases the criteria imply (unless the user asks for a specific count, then draft exactly that). Draft each with **\`tc_draft_create({ title, category: "manual", storyRef: "<story id or US_ key>", folderOrModule?: "<module id>", steps: [...] })\`**. Each manual step is PLAIN PROSE — a clear \`description\` and a non-empty \`expectedResult\`, \`actionType: "manual"\`, \`stepType: "web"\`; **no locators** (manual tests aren't executable until automated). \`storyRef\` links every case back to the story. **On SimplifyQA, call \`list_modules\` and ASK the user which module to file the test case(s) under, then pass its id as \`folderOrModule\`; Walnut has no modules — skip this step.** Show the drafted cases in plain language; revise with \`tc_draft_update\` on request.
221
235
  - **SAVING IS ALWAYS AN EXPLICIT USER ACTION — never save on your own.** A drafted manual test case stays an UNSAVED draft. Call **\`tc_save({ draftId })\`** ONLY when the user EXPLICITLY tells you to (e.g. "save it", "save these", "persist it", "okay save"). Do NOT save just because you finished drafting or the user said the draft "looks good" — wait for an explicit save instruction. The user may instead review and **save it themselves in the Walnut UI** — that's fine; do NOT also \`tc_save\` (it would duplicate). Until an explicit save (in a prompt, or done in the UI), leave every drafted test case unsaved.
222
- - **Automate a manual test case** — **\`tc_automate({ tcId, url, extra? })\`** returns a **recording guide** built from the manual steps, plus \`testcaseName\` + numeric \`userstoryId\` / \`moduleId\` derived from the source TC (\`US_7\` → \`7\`, \`MOD_12\` → \`12\`). This tool is read-only — it does NOT record and does NOT touch the backend. First ASK the user for the app **URL** and any **credentials / data / assertions** (pass them as \`url\` + \`extra\`). Then you drive the recording yourself on the connected agent: **\`core_activate_technology({ technology: 'WEB', testcaseName, userstoryId?, moduleId? })\`** → **\`web_launch_application(url)\`** (this opens the Electron recorder window automatically) → snapshot-and-act with the granular verbs (\`web_snapshot\`, \`web_click\`, \`web_enter_text\`, \`web_select_item_from_dropdown\`, \`web_validate_text\`, …) until the flow is done → **\`core_close_session()\`**. Each captured step streams into the recorder window as it happens. When done, STOP and ask the user to review + click **Save Testcase** in the recorder — that CREATES A NEW automated test case (with the story link already selected); the source manual TC (\`tcId\`) stays untouched. Do NOT call \`tc_save\` / \`update_testcase\` / \`journal_modify\` on this path — the recorder UI Save is the persist step.
236
+ - **Automate a manual test case** — **\`tc_automate({ tcId, url, extra? })\`** returns a **recording guide** built from the manual steps, plus \`testcaseName\` + numeric \`userstoryId\` / \`moduleId\` derived from the source TC (\`US_7\` → \`7\`, \`MOD_12\` → \`12\`). This tool is read-only — it does NOT record and does NOT touch the backend. First ASK the user for the app **URL** and any **credentials / data / assertions** (pass them as \`url\` + \`extra\`). Then you drive the recording yourself on the connected agent: **\`core_activate_technology({ technology: 'WEB', testcaseName, userstoryId?, moduleId? })\`** → **\`web_launch_application(url)\`** (this opens the Electron recorder window automatically) → snapshot-and-act with the granular verbs (\`web_snapshot\`, \`web_click\`, \`web_enter_text\`, \`web_select_item_from_dropdown\`, \`web_validate_text\`, …) until the flow is done → **\`core_close_session()\`**. Each captured step streams into the recorder window as it happens. When done, STOP and ask the user to review + click **Save Testcase** in the recorder — or, if they explicitly ask you to save from chat, call \`tc_save({ sessionId })\` (it clicks the recorder's own Save). Either way that CREATES A NEW automated test case (with the story link already selected); the source manual TC (\`tcId\`) stays untouched. Do NOT call \`tc_save({ draftId })\` / \`tc_draft_from_journal\` / \`update_testcase\` / \`journal_modify\` on this path — the recorder UI Save is the persist step.
223
237
 
224
238
  ## Run — execute & triage
225
239
  **★ ORDER OF QUESTIONS (STRICT):** \`when → mode → release → sprint → version → environment → browser/device → schedule fields → agent\`. This holds whether you ask ONE field at a time OR bundle several in a single message. **Never** ask in schema-declaration order, refusal-arrival order, or a "natural UI" order (release-first is WRONG). Skip a step only when the rule below says it's skippable (sprint if release='', version if the TC has one version, etc.).
@@ -244,7 +258,8 @@ Runs are AUTOMATED-only — a MANUAL test case can't be run or scheduled by an a
244
258
  10. **Execute:**
245
259
  - **now** → **\`tc_run({ tcId, when: "immediate", mode, releaseId, sprintId, environment, browser?, agentId? | cloudRunnerId? })\`** → a run id; then **poll \`run_status\`** until terminal (passed / failed / stopped / error). Don't call a still-\`queued\`/\`running\` run a result; if it stayed \`queued\` and never started, the agent likely didn't pick it up — say that, not "pass". **\`run_stop\`** cancels a run.
246
260
  - **scheduled** → **\`tc_run({ tcId, when: "schedule", mode, releaseId, sprintId, environment, scheduledFor, scheduleType?, endDate?, timezone?, browser?, agentId (local) | cloudRunnerId? (cloud) })\`** → a schedule id (there's no run to poll).
247
- 11. **Report** plainly: pass / fail, step counts, the FAILING step + its error, the report link. **Triage, don't fix** — a broken locator or changed app → offer to re-delegate that flow to the sub-agent.
261
+ 11. **PDF reports** — when the user asks to download a test case / suite report, use **\`report_download({ target, ref })\`**. If they did not name the report type, call it without \`reportTypes\` to get the choices and ASK (test case: detailed / summary / both; suite: overall / detailed-per-TC / summary-per-TC). If they named it, pass it directly. No agent needed.
262
+ 12. **Report** plainly: pass / fail, step counts, the FAILING step + its error, the report link. **Triage, don't fix** — a broken locator or changed app → offer to re-delegate that flow to the sub-agent.
248
263
  - **Suites:** **\`suite_run\`** follows the SAME ordered flow (reuse-config → when → mode → release → sprint-if-release → environment → schedule-fields-if-scheduled → agent/runner), plus cloud-only \`strategy\` / \`maxConcurrent\` / \`terminateOnFailure\` for an IMMEDIATE run. UNLIKE \`tc_run\`, it does not ask for \`versionId\` / \`browser\` / mobile device — each TC in the suite carries its own. An immediate suite run returns a suite-run id you poll with the SAME **\`run_status\`** (it lists each test case's pass/fail) and cancel with **\`run_stop\`**.
249
264
  - **Suite membership:** **\`suite_add_testcases({ suiteId, tcIds })\`** and **\`suite_remove_testcases({ suiteId, tcIds })\`** add / remove test cases (find ids via \`suite_list\` + \`tc_list\`; confirm the target suite when the user names it loosely). A suite holds ONE category — all manual OR all automated; the product rejects a mix.
250
265
  - **Manage schedules:** **\`schedule_list\`** shows every schedule (what it runs, cadence, next run, status, pinned agent, browser) — start there to find the one the user means. Then **\`schedule_update\`** edits it (time / recurrence / end date / timezone / browser / environment, or RE-PIN via \`mode\` + \`agentId\` (local) / \`cloudRunnerCredentialId\` (cloud) — the same eligibility rules as a new run), **\`schedule_control({ scheduleId, action })\`** pauses / resumes / cancels it, and **\`schedule_delete\`** removes it PERMANENTLY. Confirm before deleting — it's irreversible; suggest pause/cancel when the user only wants to stop it for now.
@@ -1 +1 @@
1
- {"version":3,"file":"initAgents.js","sourceRoot":"","sources":["../src/initAgents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAuB1C;6EAC6E;AAC7E,MAAM,YAAY,GAAG;;;;;;0DAMqC,CAAC;AAE3D;;;gGAGgG;AAChG,MAAM,aAAa,GAAG;;;;;;;;;yDASmC,CAAC;AAE1D;gGACgG;AAChG,MAAM,eAAe,GAAa;IAChC,IAAI,EAAE,iBAAiB;IACvB,WAAW,EACT,kGAAkG;QAClG,qGAAqG;QACrG,mGAAmG;QACnG,qEAAqE;IACvE,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE;QACL,kGAAkG;QAClG,oCAAoC,EAAE,0BAA0B,EAAE,6BAA6B;QAC/F,oCAAoC;QACpC,6BAA6B,EAAE,iCAAiC,EAAE,4BAA4B;QAC9F,uBAAuB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,yBAAyB;QACnG,sBAAsB,EAAE,0BAA0B,EAAE,wBAAwB;QAC5E,6BAA6B,EAAE,4BAA4B,EAAE,6BAA6B;QAC1F,yEAAyE;QACzE,6BAA6B,EAAE,+BAA+B,EAAE,gCAAgC,EAAE,+BAA+B;QACjI,sGAAsG;QACtG,0GAA0G;QAC1G,0BAA0B,EAAE,yBAAyB,EAAE,4BAA4B;QACnF,0BAA0B,EAAE,6BAA6B,EAAE,6BAA6B,EAAE,6BAA6B;QACvH,8BAA8B;QAC9B,+BAA+B,EAAE,+BAA+B,EAAE,2BAA2B;QAC7F,gGAAgG;QAChG,gEAAgE;QAChE,4BAA4B,EAAE,6BAA6B,EAAE,gCAAgC;QAC7F,qCAAqC,EAAE,gCAAgC;QACvE,6DAA6D;QAC7D,yBAAyB,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,2BAA2B;QAC7G,4BAA4B,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,8BAA8B;QACzH,4BAA4B,EAAE,4BAA4B,EAAE,oCAAoC;QAChG,wGAAwG;QACxG,0BAA0B,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,yBAAyB;QAC9G,mCAAmC,EAAE,sCAAsC;QAC3E,8FAA8F;QAC9F,0FAA0F;QAC1F,4BAA4B,EAAE,8BAA8B;QAC5D,wBAAwB,EAAE,sCAAsC,EAAE,uBAAuB,EAAE,4BAA4B;QACvH,oCAAoC;QACpC,qGAAqG;QACrG,oCAAoC,EAAE,+BAA+B,EAAE,oCAAoC;QAC3G,gCAAgC;QAChC,oFAAoF;QACpF,6BAA6B,EAAE,2BAA2B,EAAE,0BAA0B;QACtF,6BAA6B,EAAE,6BAA6B,EAAE,+BAA+B;QAC7F,qFAAqF;QACrF,8BAA8B,EAAE,4BAA4B,EAAE,wBAAwB;QACtF,sCAAsC,EAAE,+BAA+B;QACvE,gFAAgF;QAChF,gCAAgC,EAAE,8BAA8B;QAChE,kEAAkE;QAClE,6BAA6B,EAAE,4BAA4B,EAAE,0BAA0B;QACvF,mCAAmC;QACnC,6BAA6B;QAC7B,2BAA2B,EAAE,yBAAyB;QACtD,8BAA8B;QAC9B,4BAA4B,EAAE,+BAA+B,EAAE,+BAA+B;QAC9F,kGAAkG;QAClG,iGAAiG;QACjG,mFAAmF;QACnF,mBAAmB,EAAE,0BAA0B;QAC/C,yBAAyB,EAAE,gCAAgC;QAC3D,uBAAuB,EAAE,8BAA8B,EAAE,+BAA+B;QACxF,mBAAmB,EAAE,0BAA0B,EAAE,2BAA2B;QAC5E,kBAAkB;QAClB,mGAAmG;QACnG,oCAAoC;KACrC;IACD,IAAI,EAAE;EACN,YAAY;EACZ,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2QAmK4P;CAC1Q,CAAC;AAEF,MAAM,MAAM,GAAwB,CAAC,eAAe,CAAC,CAAC;AAGtD,MAAM,SAAS,GAAoB,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAEhG,MAAM,SAAS,GAAG,CAAC,CAAW,EAAU,EAAE,CAAC,6CAA6C,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AAExI;;yFAEyF;AACzF,MAAM,WAAW,GAAG,eAAe,CAAC;AAEpC,8FAA8F;AAC9F,SAAS,OAAO,CAAC,IAA4B,EAAE,CAAW,EAAE,GAAW;IACrE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ,EAAE,qFAAqF;YAClG,kGAAkG;YAClG,OAAO;gBACL,IAAI,EAAE,kBAAkB,CAAC,CAAC,IAAI,KAAK;gBACnC,OAAO,EAAE,cAAc,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,WAAW,YAAY,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,KAAK,sBAAsB,GAAG,eAAe,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE;aAClK,CAAC;QACJ,KAAK,QAAQ,EAAE,6BAA6B;YAC1C,OAAO;gBACL,IAAI,EAAE,iBAAiB,CAAC,CAAC,IAAI,MAAM;gBACnC,OAAO,EAAE,qBAAqB,CAAC,CAAC,WAAW,gCAAgC,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE;aACnG,CAAC;QACJ,KAAK,UAAU,EAAE,gBAAgB;YAC/B,OAAO;gBACL,IAAI,EAAE,mBAAmB,CAAC,CAAC,IAAI,KAAK;gBACpC,OAAO,EAAE,8CAA8C,CAAC,CAAC,WAAW,YAAY,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE;aACxG,CAAC;QACJ,KAAK,QAAQ,EAAE,oFAAoF;YACjG,kGAAkG;YAClG,OAAO;gBACL,IAAI,EAAE,kBAAkB,CAAC,CAAC,IAAI,WAAW;gBACzC,OAAO,EAAE,cAAc,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,WAAW,cAAc,GAAG,gBAAgB,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE;aACrH,CAAC;QACJ,KAAK,OAAO,EAAE,mFAAmF;YAC/F,gGAAgG;YAChG,2FAA2F;YAC3F,kFAAkF;YAClF,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAClG,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAc;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACjD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;6EAC6E;AAC7E,SAAS,eAAe,CAAC,IAAc;IACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC;YAAE,OAAO,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC5E,IAAI,CAAC,KAAK,eAAe;YAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACxD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,GAAW,EAAE,GAAW,EAAE,OAAe,EAAE,IAAY;IACxE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9B,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,YAAY,GAAG,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAc;IAChD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,8CAA8C;IACxF,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACnG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAW,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAe,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,kGAAkG;IAClG,gGAAgG;IAChG,0GAA0G;IAC1G,qGAAqG;IACrG,sGAAsG;IACtG,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC;IACxD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,UAAU,mCAAmC,CAAC,CAAC;IAE1H,iGAAiG;IACjG,kGAAkG;IAClG,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACzC,8FAA8F;YAC9F,gGAAgG;YAChG,kFAAkF;YAClF,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,qDAAqD,CAAC,CAAC;gBAChG,SAAS;YACX,CAAC;YACD,MAAM,GAAG,GAAG,WAAW,CAAC;YACxB,MAAM,IAAI,GACR,8GAA8G;gBAC9G,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,OAAO,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtG,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC5B,+FAA+F;YAC/F,6FAA6F;YAC7F,uFAAuF;YACvF,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;gBAClF,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;gBAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,yFAAyF,CAAC,CAAC;YACtI,CAAC;YACD,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,YAAY,MAAM,IAAI,CAAC,CAAC;YACjE,eAAe,GAAG,IAAI,CAAC;YACvB,SAAS;QACX,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;YACvD,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+FAA+F;QAC7F,yGAAyG;QACzG,qEAAqE,CACxE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"initAgents.js","sourceRoot":"","sources":["../src/initAgents.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAgB/C,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;AAEnB;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC;kEAC8D;IAC9D,UAAU,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CACnF,CAAC;AAsFF,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CA4JvD"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAiB/C,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;AAEnB;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC;kEAC8D;IAC9D,UAAU,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CACnF,CAAC;AAwFF,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAgKvD"}
package/dist/server.js CHANGED
@@ -13,6 +13,7 @@ import { registerDefectTools } from './tools/defects.tools.js';
13
13
  import { registerTaskTools } from './tools/tasks.tools.js';
14
14
  import { registerRecordingPassthrough } from './tools/recording.tools.js';
15
15
  import { registerHealTools } from './tools/heal.tools.js';
16
+ import { registerReportTools } from './tools/report.tools.js';
16
17
  import { registerGapAnalysisTools } from './tools/gapAnalysis.tools.js';
17
18
  import { registerImpactAnalysisTools } from './tools/impactAnalysis.tools.js';
18
19
  import { ok, err } from './mcpResult.js';
@@ -44,33 +45,35 @@ function recordingInstructionsFor(provider) {
44
45
  ].join('\n');
45
46
  if (provider === 'simplifyqa') {
46
47
  return common + [
47
- 'RECORDING ON SIMPLIFYQA — THE DIRECT FLOW (all technologies: WEB / MAINFRAME / ANDROID / IOS / API):',
48
+ 'RECORDING ON SIMPLIFYQA — THE DIRECT FLOW (all technologies: WEB / MAINFRAME / ANDROID / IOS / API / DATABASE):',
48
49
  'The SimplifyQA local agent does NOT expose bundled `web` / `mainframe` / `android` / `ios` / `db` sub-agent tools — calling them errors with "unknown tool". Recording is orchestrated by YOU (the LLM) through granular verbs.',
49
50
  '',
50
- 'NO PRE-FLIGHT. Do NOT create a draft. Do NOT open anything. Do NOT call any `tc_*` tool before `core_activate_technology`. The recording session IS the entry point — `core_activate_technology` launches the recorder and creates the test-case shell itself. Save happens when the user clicks Save Testcase in the SimplifyQA recorder UI.',
51
+ 'NO PRE-FLIGHT. Do NOT create a draft. Do NOT open anything. Do NOT call any `tc_*` tool before `core_activate_technology`. The recording session IS the entry point — `core_activate_technology` launches the recorder and creates the test-case shell itself. Save happens when the user clicks Save Testcase in the SimplifyQA recorder UI, or when they explicitly ask you to save from chat and you call `tc_save({ sessionId })` (that clicks the recorder window\'s own Save button).',
51
52
  '',
52
53
  'Common shape for every technology:',
53
54
  ' 1. `qa_connection_status` — verify connected + note the projectId.',
54
- ' 2. Ask the tech-specific setup questions BEFORE activation (mainframe needs route + `app_path`; android/ios need `deviceId` when >1 device).',
55
- ' 3. `core_activate_technology({ technology: "<WEB|MAINFRAME|ANDROID|IOS|API>", testcaseName, ...tech args })` — ONCE, at start. response.structuredContent.sessionId is the recording id.',
55
+ ' 2. Ask the tech-specific setup questions BEFORE activation (WEB needs the AI-only vs Hybrid recording mode AND `recordingModeAskedUser`, asked on EVERY recording — never reused; mainframe needs route + `app_path`; android/ios need the platform (`Android or iOS?` → `platformAskedUser`) plus `deviceId` when >1 device).',
56
+ ' 3. `core_activate_technology({ technology: "<WEB|MAINFRAME|ANDROID|IOS|API|DATABASE>", testcaseName, ...tech args })` — ONCE, at start. response.structuredContent.sessionId is the recording id. A clashing `testcaseName` is REFUSED — ASK for another name, or pass `allowDuplicateName: true` only when the user explicitly wants a duplicate.',
56
57
  ' 4. `<tech>_launch_application({ ... })` — ALWAYS the FIRST action call. No snapshot / verify / save before it.',
57
58
  ' 5. `<tech>_snapshot()` to get element refs (web/android/ios only; mainframe has no snapshot). Reuse refs while the page/screen is unchanged. Pass a ref to the action verb — NEVER a raw locator.',
58
59
  ' 6. Per user intent: one snapshot ref + exactly ONE action verb + one narration line.',
59
60
  ' 7. On error inside recording: ONE fresh `<tech>_snapshot` + retry once (skip on mainframe), then STOP and report.',
60
- ' 8. `core_close_session()` when the flow is done.',
61
- ' 9. STOP. Report the recording session id. Tell the user to review captured steps in the SimplifyQA recorder UI and click Save Testcase — the recorder UI persists it. Do NOT call `tc_save` / `tc_draft_create` / `update_testcase` / `journal_modify` on this path.',
61
+ ' 8. `core_close_session()` when the flow is done. Unsaved steps make it REFUSE and return a one-shot `confirm: "<token>"` — ASK the user (SAVE / DISCARD / CLOSE ANYWAY) and only retry with the token when they explicitly choose to discard.',
62
+ ' 9. STOP. Report the recording session id. Tell the user to review captured steps in the SimplifyQA recorder UI and click Save Testcase — the recorder UI persists it. If the user EXPLICITLY says save from chat, call `tc_save({ sessionId })` instead — it clicks the recorder window\'s own Save, so the saved TC is exactly what the window shows. Do NOT call `tc_save({ draftId })` / `tc_draft_from_journal` / `update_testcase` / `journal_modify` for a live recording, and never do BOTH (duplicate TC).',
62
63
  '',
63
- 'WEB: `core_activate_technology({ technology: "WEB", testcaseName })` → `web_launch_application({ url })` → `web_snapshot` + `web_click` / `web_enter_text` / `web_select_item_from_dropdown` / `web_validate_text` / `web_keyboard_action`. Tabs: `web_switch_to_tab` / `web_switch_to_parent_tab` / `web_close_tab`. Iframes: `web_switch_to_iframe({ ref })` / `web_switch_to_parent_iframe` / `web_switch_to_default_content`.',
64
+ 'WEB: `core_activate_technology({ technology: "WEB", testcaseName, recordingMode: "AI"|"HYBRID", recordingModeAskedUser: "ai"|"hybrid" })` → `web_launch_application({ url })` → `web_snapshot` + `web_click` / `web_enter_text` / `web_select_item_from_dropdown` / `web_validate_text` / `web_keyboard_action`. ASK "AI-only or Hybrid?" on EVERY WEB recording and pass BOTH fields (they must match) — never reuse an earlier answer; the tool refuses without them. Tabs: `web_switch_to_tab` / `web_switch_to_parent_tab` / `web_close_tab`. Iframes: `web_switch_to_iframe({ ref })` / `web_switch_to_parent_iframe` / `web_switch_to_default_content`.',
64
65
  '',
65
66
  'MAINFRAME: ASK the ROUTE first (never pick / never infer). Emulator route: `app_path` (Windows-only, one recording at a time). Direct route: `host` + `port` + `marker` (any OS, several in parallel). `core_activate_technology({ technology: "MAINFRAME", testcaseName, app_path? OR host? + port? + marker? })` → `mainframe_launch_application` is FIRST. NO snapshot — target fields by `{ by: "label" | "position", target }`. AID keys: `mainframe_keyboard_action({ keys: "ENTER" | "PF3" })`. A failed step ends the session.',
66
67
  '',
67
- 'ANDROID: `android_list_devices` FIRST (never guess a device or a package id). Resolve the app the user names to its exact `package` from that list. `deviceId`: omit only with exactly one device; ASK with several. `core_activate_technology({ technology: "ANDROID", testcaseName, deviceId })` → `android_launch_app({ package, activity? })` is FIRST → `android_snapshot` returns refs (`e1`, `e2`, … tagged `id|desc|text|bounds|xpath`) → `android_click` / `android_enter_text` / `android_validate_text`. Do NOT add generic_wait pauses on android — the verbs already wait.',
68
+ 'ANDROID: `android_list_devices` FIRST (never guess a device or a package id). Resolve the app the user names to its exact `package` from that list. ASK "Android or iOS?" on EVERY mobile recording and pass `platformAskedUser: "android"` (must match `technology`; the tool refuses without it). `deviceId`: omit only with exactly one device; ASK with several. `core_activate_technology({ technology: "ANDROID", testcaseName, platformAskedUser: "android", deviceId })` → `android_launch_app({ package, activity? })` is FIRST → `android_snapshot` returns refs (`e1`, `e2`, … tagged `id|desc|text|bounds|xpath`) → `android_click` / `android_enter_text` / `android_validate_text`. Do NOT add generic_wait pauses on android — the verbs already wait.',
68
69
  '',
69
- 'IOS: `ios_list_devices` FIRST — match user\'s app word against the DISPLAY NAME (bundleId is opaque). `deviceId` rules match android. `core_activate_technology({ technology: "IOS", testcaseName, bundleId, deviceId })` → `ios_launch_app` is FIRST → `ios_snapshot` + `ios_click` / `ios_enter_text` / `ios_validate_text`. Real device does NOT need macOS (go-ios drives it); simulator does. `projectId` is for WDA signing on real devices only.',
70
+ 'IOS: `ios_list_devices` FIRST — match user\'s app word against the DISPLAY NAME (bundleId is opaque). ASK "Android or iOS?" on EVERY mobile recording and pass `platformAskedUser: "ios"` (must match `technology`; the tool refuses without it). `deviceId` rules match android. `core_activate_technology({ technology: "IOS", testcaseName, platformAskedUser: "ios", bundleId, deviceId })` → `ios_launch_app` is FIRST → `ios_snapshot` + `ios_click` / `ios_enter_text` / `ios_validate_text`. Real device does NOT need macOS (go-ios drives it); simulator does. `projectId` is for WDA signing on real devices only.',
70
71
  '',
71
- 'API: no device, no app_path, no snapshot. `core_activate_technology({ technology: "API", testcaseName })` → `api_send_request({ method, url, headers?, query?, body?: {type,data:{payload}}, auth?: {type,token|username+password|key+value}, assertions?: [{path,condition,expectedValue}], extract?: [{path,store_as}] })` one call per request. Supports `{{var}}` interpolation across chained calls (extract $.token in call 1, use `{{token}}` in call 2\'s auth.token). SAVE via `tc_draft_from_journal({ sessionId })` then `tc_save({ draftId })` — API has no recorder UI; the LLM-driven save is the only path.',
72
+ 'API: no device, no app_path, no snapshot. `core_activate_technology({ technology: "API", testcaseName })` returns `structuredContent.sessionId` — KEEP it (it is the journal id for the save step; `core_active_recordings({})` is the fallback). Then `api_send_request({ method, url, headers?, query?, body?: {type,data:{payload}}, auth?: {type,token|username+password|key+value}, assertions?: [{path,condition,expectedValue}], extract?: [{path,store_as}] })` one call per request. Bodies are JSON/XML/TEXT/NONE — FORM_DATA and X_WWW_FORM_URLENCODED are not wired to the plugin yet (rejected). Supports `{{var}}` interpolation across chained calls (extract $.token in call 1, use `{{token}}` in call 2\'s auth.token). API steps STREAM into the `/mcp-recorder` window (RECORDED_API_STEP) — after the last request, STOP and ask the user to review and click **Save Testcase**. Do NOT call `core_close_session` before they save. If the user explicitly says save from chat, call `tc_save({ sessionId })` — it clicks the recorder window\'s own Save, so edited API request/assertions are saved exactly. Headless fallback (UI unavailable / user asks): `core_close_session()` → `tc_draft_from_journal({ sessionId })` → optional `tc_draft_update` → `tc_save({ draftId })`. Never do BOTH the UI save and `tc_save({ draftId })` — that creates a duplicate test case.',
72
73
  '',
73
- 'Automate an EXISTING manual test case (any tech): `tc_automate({ tcId, url, extra? })` first — returns a guide built from the manual steps (with testcaseName + userstoryId/moduleId already derived). Then run the same common-shape steps. Save is still via the recorder UI\'s Save Testcase button; do NOT call `tc_save`.',
74
+ 'DATABASE: no device, no app_path, no snapshot; the recorder window opens on activation and streams each step. `core_activate_technology({ technology: "DATABASE", testcaseName })` → `db_connect({ dbType, host, port, user, password, database })` (or `connectionString`) is FIRST — ASK the user for the connection details, never invent them → `db_execute_query` / `db_update` / `db_read_data` / `db_insert_data` → `db_close` (MongoDB: `db_connect_mongo` + `db_insert_document` / `db_update_documents` / `db_read_documents`). Every call executes LIVE and is recorded only if it succeeds; a failure returns the plugin error and records nothing. `store_as` captures a result (required by `db_read_data` / `db_read_documents`), `from_runtime` reuses it. SAVE: the user clicks Save Testcase in the recorder window; if the user explicitly asks you to save from chat, call `tc_save({ sessionId })` — it clicks the window\'s own Save, so the recorded DB steps are saved exactly. Headless fallback only when the user does not want the UI or it is unavailable — `core_close_session()` → `tc_draft_from_journal({ sessionId })` → `tc_save({ draftId })` (explicit user save instruction only; never both).',
75
+ '',
76
+ 'Automate an EXISTING manual test case (any tech): `tc_automate({ tcId, url, extra? })` first — returns a guide built from the manual steps (with testcaseName + userstoryId/moduleId already derived). Then run the same common-shape steps. Save is via the recorder UI\'s Save Testcase button, or `tc_save({ sessionId })` when the user explicitly asks you to save from chat. Do NOT call `tc_save({ draftId })`.',
74
77
  '',
75
78
  'Rules while recording (all technologies):',
76
79
  '- Record ONLY what the user asked for. Do NOT add extra verify/validate steps unless the user says "verify" / "assert" / "check".',
@@ -103,7 +106,7 @@ export function buildServer(deps) {
103
106
  const envProvider = (process.env['QA_MCP_PROVIDER'] ?? '').toLowerCase();
104
107
  const provider = deps.connection?.config().provider
105
108
  ?? (envProvider === 'simplifyqa' || envProvider === 'walnut' ? envProvider : 'unknown');
106
- const server = new McpServer({ name: 'common-qa-mcp', version: '0.10.0' }, { instructions: recordingInstructionsFor(provider) });
109
+ const server = new McpServer({ name: 'common-qa-mcp', version: '0.11.0' }, { instructions: recordingInstructionsFor(provider) });
107
110
  const drafts = deps.drafts ?? new DraftStore();
108
111
  server.registerTool('project_info', {
109
112
  description: 'Validate the configured connection and return provider, org/project and entity counts.',
@@ -203,6 +206,9 @@ export function buildServer(deps) {
203
206
  registerHealTools(server, {
204
207
  getAdapter: () => (deps.connection ? deps.connection.adapter() : deps.adapter),
205
208
  });
209
+ registerReportTools(server, {
210
+ getAdapter: () => (deps.connection ? deps.connection.adapter() : deps.adapter),
211
+ });
206
212
  // Coverage / gap aggregator across a scope (sprint / release / epic / feature / stories / project).
207
213
  // Read-only; reuses computeDrift from storySync + the existing listStories/getStory/listTestCases reads.
208
214
  registerGapAnalysisTools(server, {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"backlog.tools.d.ts","sourceRoot":"","sources":["../../src/tools/backlog.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI,CAAC;CAC1C,CAAC;AAyCF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI,CA4jBpF"}
1
+ {"version":3,"file":"backlog.tools.d.ts","sourceRoot":"","sources":["../../src/tools/backlog.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI,CAAC;CAC1C,CAAC;AAyCF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAkqBpF"}
@@ -523,5 +523,101 @@ export function registerBacklogTools(server, deps) {
523
523
  return err(describeError(e));
524
524
  }
525
525
  });
526
+ const norm = (v) => v.trim().toLowerCase().replace(/[-\s]+/g, '_');
527
+ /** Resolve a name / id / business key to the rows that match EXACTLY, via the kind's list tool. */
528
+ async function findRows(adapter, kind, ref) {
529
+ let rows;
530
+ const q = { search: ref, limit: 50 };
531
+ if (kind === 'epic') {
532
+ if (!adapter.listEpics)
533
+ return 'This product does not expose epics.';
534
+ rows = (await adapter.listEpics(q)).map((r) => ({ id: r.id, label: r.name, keys: [r.id, r.key ?? '', r.name] }));
535
+ }
536
+ else if (kind === 'feature') {
537
+ if (!adapter.listFeatures)
538
+ return 'This product does not expose features.';
539
+ rows = (await adapter.listFeatures(q)).map((r) => ({ id: r.id, label: r.name, keys: [r.id, r.key ?? '', r.name] }));
540
+ }
541
+ else if (kind === 'story') {
542
+ if (!adapter.listStories)
543
+ return 'This product does not expose user stories.';
544
+ rows = (await adapter.listStories(q)).map((r) => ({ id: r.id, label: r.title, keys: [r.id, r.key ?? '', r.title] }));
545
+ }
546
+ else if (kind === 'defect') {
547
+ if (!adapter.listDefects)
548
+ return 'This product does not expose defects.';
549
+ rows = (await adapter.listDefects(q)).map((r) => ({ id: r.id, label: r.title, keys: [r.id, r.code ?? '', r.title] }));
550
+ }
551
+ else {
552
+ if (!adapter.listTasks)
553
+ return 'This product does not expose tasks.';
554
+ rows = (await adapter.listTasks(q)).map((r) => ({ id: r.id, label: r.title, keys: [r.id, r.code ?? '', r.title] }));
555
+ }
556
+ const want = norm(ref);
557
+ const exact = rows.filter((r) => r.keys.some((k) => k && norm(k) === want));
558
+ return { exact, near: rows.filter((r) => !exact.includes(r)).slice(0, 10) };
559
+ }
560
+ server.registerTool('backlog_delete', {
561
+ title: 'Delete an epic / feature / user story / defect / task',
562
+ description: 'DESTRUCTIVE. Delete ONE epic, feature, user story, defect or task. `ref` is the item\'s NAME, ' +
563
+ 'business key (EP_12, FT_3, US_5, DF_7 …) or numeric id — resolved here, the user never supplies an ' +
564
+ 'internal id. TWO-STEP: call WITHOUT `confirm` to get a preview (what will be deleted + anything that ' +
565
+ 'depends on it); show it to the user and ASK; only then call again with `confirm:true`. An item that ' +
566
+ 'still has dependents (an epic with features/stories, a feature/story with children or test cases, ' +
567
+ 'a defect with test cases/tasks) is REFUSED with the blockers listed — nothing cascades. An ambiguous ' +
568
+ 'name lists the matches and deletes nothing. Needs the user\'s delete permission; no agent required. ' +
569
+ 'Requires a live connection.',
570
+ inputSchema: {
571
+ kind: z.enum(['epic', 'feature', 'story', 'defect', 'task']).describe('Which kind of item to delete.'),
572
+ ref: z.string().min(1).describe('Name, business key (EP_/FT_/US_/DF_…) or numeric id of the item.'),
573
+ confirm: z.boolean().optional().describe('Set true ONLY after the user has seen the preview and explicitly confirmed the delete.'),
574
+ },
575
+ annotations: { readOnlyHint: false, destructiveHint: true },
576
+ }, async ({ kind, ref, confirm }) => {
577
+ const adapter = deps.getAdapter();
578
+ if (!adapter)
579
+ return err(NOT_CONNECTED);
580
+ if (!adapter.deleteBacklogItem)
581
+ return err('This product does not support deleting backlog items.');
582
+ try {
583
+ const found = await findRows(adapter, kind, ref);
584
+ if (typeof found === 'string')
585
+ return err(found);
586
+ if (found.exact.length === 0) {
587
+ const hint = found.near.length
588
+ ? `\n\nClosest matches:\n${found.near.map((r) => `- ${r.label} (id ${r.id})`).join('\n')}\n\nNothing was deleted.`
589
+ : ' Nothing was deleted.';
590
+ return err(`No ${kind} matching "${ref}" was found.${hint}`);
591
+ }
592
+ if (found.exact.length > 1) {
593
+ return err(`"${ref}" matches ${found.exact.length} ${kind}s — ambiguous, nothing was deleted. Ask the user which one:\n` +
594
+ found.exact.map((r) => `- ${r.label} (id ${r.id})`).join('\n'));
595
+ }
596
+ const item = found.exact[0];
597
+ const what = `${kind} **${item.label}** (id ${item.id})`;
598
+ const probe = await adapter.deleteBacklogItem({ kind, id: item.id, confirm: false });
599
+ const blockers = probe.dependencies.flatMap((d) => Object.entries(d.counts));
600
+ if (blockers.length) {
601
+ return err(`Cannot delete ${what} — other items still depend on it:\n` +
602
+ blockers.map(([k, ids]) => `- ${k.replace(/Arr$/, '')}: ${ids.length} (ids ${ids.slice(0, 15).join(', ')}${ids.length > 15 ? ', …' : ''})`).join('\n') +
603
+ '\n\nMove or delete those first. Nothing was deleted.');
604
+ }
605
+ if (confirm !== true) {
606
+ return ok(`About to delete ${what}. Nothing else depends on it.\n\n` +
607
+ '**Ask the user to confirm**, then call `backlog_delete` again with `confirm:true`. This cannot be undone from here.', { preview: true, needs: 'confirm', item: { kind, id: item.id, name: item.label } });
608
+ }
609
+ const res = await adapter.deleteBacklogItem({ kind, id: item.id, confirm: true });
610
+ if (!res.deleted) {
611
+ return err(`The product refused to delete ${what} (it reported dependents). Nothing was deleted.`);
612
+ }
613
+ return ok(`Deleted ${what}.`, { deleted: { kind, id: item.id, name: item.label } });
614
+ }
615
+ catch (e) {
616
+ const msg = describeError(e);
617
+ return err(/privilege|authori[sz]|forbidden|401|403/i.test(msg)
618
+ ? `You don't have permission to delete this ${kind}. (${msg})`
619
+ : msg);
620
+ }
621
+ });
526
622
  }
527
623
  //# sourceMappingURL=backlog.tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"backlog.tools.js","sourceRoot":"","sources":["../../src/tools/backlog.tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backlog.tools.js","sourceRoot":"","sources":["../../src/tools/backlog.tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.tools.d.ts","sourceRoot":"","sources":["../../src/tools/discovery.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAK5D;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,kFAAkF;IAClF,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI,CAAC;CAC1C,CAAC;AAqFF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI,CA+mDxF"}
1
+ {"version":3,"file":"discovery.tools.d.ts","sourceRoot":"","sources":["../../src/tools/discovery.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAQ5D;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,kFAAkF;IAClF,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI,CAAC;CAC1C,CAAC;AAmJF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAqsDxF"}