@bendyline/gilde 0.1.55 → 0.1.56
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/authoring/chat-models/glm-5.3-flash-320b-q2.json +129 -0
- package/authoring/gstack/wave.json +2 -2
- package/data/chat-models/gl/glm-5.3-flash-320b-q2/manifest.json +137 -0
- package/data/chat-models/gl/glm-5.3-flash-320b-q2/versions/1.0.0/manifest.json +23 -0
- package/data/chat-models/index.json +1 -1
- package/data/craftbook-templates/a1/a11y-audit/versions/1.1.3/test.json +16 -8
- package/data/craftbook-templates/ac/accessibility-retrofit/versions/2.0.2/craftbook.json +618 -0
- package/data/craftbook-templates/ac/accessibility-retrofit/versions/2.0.2/test.json +228 -0
- package/data/craftbook-templates/al/album-curate/versions/1.0.3/test.json +6 -3
- package/data/craftbook-templates/al/alert-rules/versions/1.0.3/test.json +8 -8
- package/data/craftbook-templates/an/anniversary-cut/versions/1.0.5/test.json +10 -5
- package/data/craftbook-templates/an/annual-document-review/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/an/anomaly-scan/versions/1.0.3/test.json +12 -6
- package/data/craftbook-templates/ap/apply-review-findings/versions/1.0.2/craftbook.json +602 -0
- package/data/craftbook-templates/ap/apply-review-findings/versions/1.0.2/test.json +290 -0
- package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.3/test.json +18 -9
- package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.5/test.json +10 -5
- package/data/craftbook-templates/au/auth-flow/versions/1.0.3/test.json +12 -6
- package/data/craftbook-templates/au/auth-flow/versions/1.0.4/craftbook.json +282 -0
- package/data/craftbook-templates/au/auth-flow/versions/1.0.4/test.json +143 -0
- package/data/craftbook-templates/au/automation-recipe/versions/1.0.3/test.json +12 -6
- package/data/craftbook-templates/ba/backup-routine/versions/1.0.4/craftbook.json +282 -0
- package/data/craftbook-templates/ba/backup-routine/versions/1.0.4/test.json +108 -0
- package/data/craftbook-templates/bl/blog-post/versions/1.0.3/test.json +8 -8
- package/data/craftbook-templates/br/branding-website/versions/1.1.3/craftbook.json +335 -0
- package/data/craftbook-templates/br/branding-website/versions/1.1.3/test.json +164 -0
- package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.3/test.json +8 -8
- package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.8/craftbook.json +621 -0
- package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.8/test.json +376 -0
- package/data/craftbook-templates/bu/bug-fix-tdd/versions/2.0.2/craftbook.json +730 -0
- package/data/craftbook-templates/bu/bug-fix-tdd/versions/2.0.2/test.json +221 -0
- package/data/craftbook-templates/bu/build-loop/versions/1.1.1/test.json +8 -8
- package/data/craftbook-templates/ca/case-study/versions/1.0.3/test.json +8 -8
- package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.4/test.json +10 -5
- package/data/craftbook-templates/ch/character-turnaround/versions/1.0.3/test.json +25 -11
- package/data/craftbook-templates/ci/ci-pipeline/versions/2.0.2/craftbook.json +587 -0
- package/data/craftbook-templates/ci/ci-pipeline/versions/2.0.2/test.json +225 -0
- package/data/craftbook-templates/ci/citation-audit/versions/1.0.3/test.json +28 -14
- package/data/craftbook-templates/cl/cli-tool/versions/1.1.3/test.json +8 -8
- package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.3/test.json +18 -9
- package/data/craftbook-templates/co/codemod-sweep/versions/1.0.2/craftbook.json +605 -0
- package/data/craftbook-templates/co/codemod-sweep/versions/1.0.2/test.json +252 -0
- package/data/craftbook-templates/co/cohort-analysis/versions/1.0.3/test.json +18 -9
- package/data/craftbook-templates/co/competitive-analysis/versions/1.0.3/test.json +23 -15
- package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.3/test.json +28 -14
- package/data/craftbook-templates/co/content-deck/versions/1.2.3/craftbook.json +4 -4
- package/data/craftbook-templates/co/content-deck/versions/1.2.3/test.json +3 -0
- package/data/craftbook-templates/co/content-deck/versions/1.2.4/craftbook.json +341 -0
- package/data/craftbook-templates/co/content-deck/versions/1.2.4/test.json +169 -0
- package/data/craftbook-templates/co/copy-review/versions/1.0.3/test.json +14 -7
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.3/craftbook.json +4 -4
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.3/test.json +3 -0
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.4/craftbook.json +345 -0
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.4/test.json +187 -0
- package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.3/test.json +26 -13
- package/data/craftbook-templates/co/cover-letter/versions/1.0.3/test.json +8 -8
- package/data/craftbook-templates/cs/csv-transformer/versions/1.2.4/test.json +7 -7
- package/data/craftbook-templates/da/dashboard-spec/versions/1.0.3/test.json +7 -7
- package/data/craftbook-templates/da/data-export-migrate/versions/1.0.4/craftbook.json +285 -0
- package/data/craftbook-templates/da/data-export-migrate/versions/1.0.4/test.json +104 -0
- package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.5/craftbook.json +284 -0
- package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.5/test.json +162 -0
- package/data/craftbook-templates/da/data-quality-audit/versions/1.0.3/test.json +38 -19
- package/data/craftbook-templates/da/data-to-report/versions/1.0.3/test.json +12 -6
- package/data/craftbook-templates/db/db-index-tuning/versions/1.0.4/craftbook.json +286 -0
- package/data/craftbook-templates/db/db-index-tuning/versions/1.0.4/test.json +104 -0
- package/data/craftbook-templates/de/dependency-audit/versions/1.1.3/test.json +14 -7
- package/data/craftbook-templates/de/dependency-upgrade/versions/1.0.2/craftbook.json +621 -0
- package/data/craftbook-templates/de/dependency-upgrade/versions/1.0.2/test.json +235 -0
- package/data/craftbook-templates/de/design-review/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/de/design-system-consultation/versions/2.0.8/craftbook.json +616 -0
- package/data/craftbook-templates/de/design-system-consultation/versions/2.0.8/test.json +201 -0
- package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.4/craftbook.json +285 -0
- package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.4/test.json +104 -0
- package/data/craftbook-templates/do/doc-rewrite/versions/1.0.3/test.json +119 -55
- package/data/craftbook-templates/do/dockerize-app/versions/1.0.4/craftbook.json +285 -0
- package/data/craftbook-templates/do/dockerize-app/versions/1.0.4/test.json +92 -0
- package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.3/test.json +18 -9
- package/data/craftbook-templates/dr/draft-social-post/versions/1.0.2/craftbook.json +324 -0
- package/data/craftbook-templates/dr/draft-social-post/versions/1.0.2/test.json +161 -0
- package/data/craftbook-templates/ed/edit-notes/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.8/craftbook.json +566 -0
- package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.8/test.json +191 -0
- package/data/craftbook-templates/ep/episode-plan/versions/1.0.3/test.json +10 -5
- package/data/craftbook-templates/ex/executive-level-review/versions/2.0.7/test.json +7 -10
- package/data/craftbook-templates/ex/executive-level-review/versions/2.0.8/craftbook.json +595 -0
- package/data/craftbook-templates/ex/executive-level-review/versions/2.0.8/test.json +139 -0
- package/data/craftbook-templates/ex/expense-categorize/versions/1.0.4/craftbook.json +277 -0
- package/data/craftbook-templates/ex/expense-categorize/versions/1.0.4/test.json +104 -0
- package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.1.2/craftbook.json +327 -0
- package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.1.2/test.json +162 -0
- package/data/craftbook-templates/fl/flaky-test-fix/versions/1.0.2/craftbook.json +718 -0
- package/data/craftbook-templates/fl/flaky-test-fix/versions/1.0.2/test.json +239 -0
- package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.4/craftbook.json +285 -0
- package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.4/test.json +162 -0
- package/data/craftbook-templates/fo/form-wizard/versions/1.0.3/test.json +8 -8
- package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/ho/hotfix-flow/versions/2.0.2/craftbook.json +610 -0
- package/data/craftbook-templates/ho/hotfix-flow/versions/2.0.2/test.json +220 -0
- package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.3/craftbook.json +343 -0
- package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.3/test.json +176 -0
- package/data/craftbook-templates/id/idea-office-hours/versions/2.0.8/craftbook.json +566 -0
- package/data/craftbook-templates/id/idea-office-hours/versions/2.0.8/test.json +141 -0
- package/data/craftbook-templates/im/image-set-index/versions/1.2.3/craftbook.json +298 -0
- package/data/craftbook-templates/im/image-set-index/versions/1.2.3/test.json +180 -0
- package/data/craftbook-templates/in/insurance-inventory/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/in/interactive-quiz/versions/1.0.3/test.json +48 -23
- package/data/craftbook-templates/in/invitation-design/versions/1.0.3/test.json +1 -1
- package/data/craftbook-templates/index.json +1 -1
- package/data/craftbook-templates/it/item-intake/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/le/lead-enrichment/versions/1.0.4/craftbook.json +277 -0
- package/data/craftbook-templates/le/lead-enrichment/versions/1.0.4/test.json +104 -0
- package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.3/test.json +3 -0
- package/data/craftbook-templates/mo/morning-report/versions/1.0.3/test.json +21 -9
- package/data/craftbook-templates/of/office-hours/versions/1.1.1/test.json +8 -8
- package/data/craftbook-templates/pe/perf-optimization/versions/2.0.2/craftbook.json +697 -0
- package/data/craftbook-templates/pe/perf-optimization/versions/2.0.2/test.json +235 -0
- package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.3/test.json +19 -8
- package/data/craftbook-templates/pl/plan/versions/1.0.2/test.json +8 -8
- package/data/craftbook-templates/pl/playtest-report/versions/1.0.3/test.json +17 -7
- package/data/craftbook-templates/pr/practice-exam/versions/1.0.3/test.json +7 -2
- package/data/craftbook-templates/pr/practice-session/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/pu/pull-request-review/versions/1.9.2/craftbook.json +435 -0
- package/data/craftbook-templates/pu/pull-request-review/versions/1.9.2/test.json +141 -0
- package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/re/receipt-intake/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.4/craftbook.json +277 -0
- package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.4/test.json +104 -0
- package/data/craftbook-templates/re/recipe-capture/versions/1.0.3/test.json +13 -5
- package/data/craftbook-templates/re/record-a-relative/versions/1.0.3/test.json +3 -0
- package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.4/craftbook.json +285 -0
- package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.4/test.json +104 -0
- package/data/craftbook-templates/re/refactor-module/versions/2.0.2/craftbook.json +695 -0
- package/data/craftbook-templates/re/refactor-module/versions/2.0.2/test.json +241 -0
- package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.4/craftbook.json +361 -0
- package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.4/test.json +138 -0
- package/data/craftbook-templates/re/release-notes/versions/1.0.4/test.json +8 -8
- package/data/craftbook-templates/re/release-notes/versions/1.0.5/craftbook.json +339 -0
- package/data/craftbook-templates/re/release-notes/versions/1.0.5/test.json +111 -0
- package/data/craftbook-templates/re/reliability-review/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/re/research-report/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.8/craftbook.json +596 -0
- package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.8/test.json +157 -0
- package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.4/test.json +13 -5
- package/data/craftbook-templates/sc/schema-migration/versions/2.0.2/craftbook.json +624 -0
- package/data/craftbook-templates/sc/schema-migration/versions/2.0.2/test.json +225 -0
- package/data/craftbook-templates/sc/script-automation/versions/1.0.4/craftbook.json +284 -0
- package/data/craftbook-templates/sc/script-automation/versions/1.0.4/test.json +162 -0
- package/data/craftbook-templates/se/security-architecture-review/versions/2.0.7/test.json +10 -13
- package/data/craftbook-templates/se/security-architecture-review/versions/2.0.8/craftbook.json +597 -0
- package/data/craftbook-templates/se/security-architecture-review/versions/2.0.8/test.json +157 -0
- package/data/craftbook-templates/so/social-digest/versions/1.0.3/craftbook.json +239 -0
- package/data/craftbook-templates/so/social-digest/versions/1.0.3/test.json +168 -0
- package/data/craftbook-templates/so/source-quality-audit/versions/1.0.3/test.json +25 -11
- package/data/craftbook-templates/sp/spec-authoring/versions/2.0.8/craftbook.json +599 -0
- package/data/craftbook-templates/sp/spec-authoring/versions/2.0.8/test.json +162 -0
- package/data/craftbook-templates/te/technical-documentation/versions/2.0.8/craftbook.json +577 -0
- package/data/craftbook-templates/te/technical-documentation/versions/2.0.8/test.json +174 -0
- package/data/craftbook-templates/te/test-coverage-review/versions/1.2.1/test.json +16 -8
- package/data/craftbook-templates/te/test-suite-backfill/versions/2.0.2/craftbook.json +592 -0
- package/data/craftbook-templates/te/test-suite-backfill/versions/2.0.2/test.json +195 -0
- package/data/craftbook-templates/th/thank-you-batch/versions/1.0.3/test.json +6 -3
- package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/ti/tileset-batch/versions/1.0.3/test.json +9 -3
- package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.3/test.json +10 -5
- package/data/craftbook-templates/tr/transcribe-index/versions/1.0.3/test.json +6 -3
- package/data/craftbook-templates/tr/translate-content/versions/1.1.3/craftbook.json +140 -0
- package/data/craftbook-templates/tr/translate-content/versions/1.1.3/test.json +141 -0
- package/data/craftbook-templates/ty/type-safety-pass/versions/2.0.2/craftbook.json +594 -0
- package/data/craftbook-templates/ty/type-safety-pass/versions/2.0.2/test.json +221 -0
- package/data/craftbook-templates/ux/ux-update/versions/1.0.2/craftbook.json +606 -0
- package/data/craftbook-templates/ux/ux-update/versions/1.0.2/test.json +206 -0
- package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.3/test.json +11 -4
- package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.3/test.json +21 -9
- package/data/craftbook-templates/wh/whitepaper/versions/1.0.3/test.json +16 -8
- package/data/craftbook-templates/ye/year-in-review/versions/1.0.3/test.json +8 -4
- package/data/project-types/index.json +1 -1
- package/data/project-types/ju/just-chat/manifest.json +1 -1
- package/data/project-types/ju/just-chat/versions/1.0.1/about.md +5 -0
- package/data/project-types/ju/just-chat/versions/1.0.1/manifest.json +19 -0
- package/package.json +1 -1
- package/schemas/chat-model-identity.schema.json +27 -0
- package/schemas/chat-model-version.schema.json +22 -0
|
@@ -0,0 +1,599 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "spec-authoring",
|
|
3
|
+
"name": "Spec Authoring",
|
|
4
|
+
"description": "Turn a rough intent into a backlog-ready spec: interrogate scope and requirements against the real code, then file a well-formed, unambiguous issue.",
|
|
5
|
+
"basedOn": {
|
|
6
|
+
"name": "gstack",
|
|
7
|
+
"url": "https://github.com/garrytan/gstack"
|
|
8
|
+
},
|
|
9
|
+
"plan": "Turn an already-approved intent into an implementation-ready workspace specification. Inspect the real project before asking questions, resolve one consequential decision at a time, and leave no hidden architecture choice to the implementer. Acceptance criteria must be pass/fail, references must use real paths, and risky changes need verification and rollback. The canonical deliverable stays in the workspace; publishing it elsewhere is a separate user-authorized action.",
|
|
10
|
+
"entryStepId": "inspect",
|
|
11
|
+
"triggers": [
|
|
12
|
+
"spec this out",
|
|
13
|
+
"file an issue",
|
|
14
|
+
"write up a ticket",
|
|
15
|
+
"turn this into an issue",
|
|
16
|
+
"make this a github issue",
|
|
17
|
+
"turn this into a backlog item"
|
|
18
|
+
],
|
|
19
|
+
"command": "spec-authoring",
|
|
20
|
+
"steps": [
|
|
21
|
+
{
|
|
22
|
+
"id": "inspect",
|
|
23
|
+
"name": "Inspect the current system",
|
|
24
|
+
"description": "Map present behavior, relevant code, conventions, dependencies, tests, and constraints.",
|
|
25
|
+
"prompt": "Read the approved intent and inspect the relevant workspace before asking the user anything. Trace current behavior through entry points, interfaces, data models, dependencies, tests, and adjacent patterns. Record exact paths and what each proves. Identify root cause for bugs, compatibility boundaries, security or migration risks, and unknowns that cannot be answered from the project. Do not design the change yet.\n\nObservable handoff: write the completed result to `specs/source-audit.md` in the workspace with `write_file`. Do not merely describe what the file would contain. Re-read it with `read_file` before finishing this phase and repair any incomplete sections.",
|
|
26
|
+
"suggestedRole": "principal engineer",
|
|
27
|
+
"advanceWhen": {
|
|
28
|
+
"file": "specs/source-audit.md",
|
|
29
|
+
"minBytes": 1000,
|
|
30
|
+
"sniff": "nonempty",
|
|
31
|
+
"requireChange": true,
|
|
32
|
+
"goto": "resolve-decisions"
|
|
33
|
+
},
|
|
34
|
+
"gate": {
|
|
35
|
+
"at": "completion",
|
|
36
|
+
"checks": [
|
|
37
|
+
{
|
|
38
|
+
"kind": "minBytes",
|
|
39
|
+
"file": "specs/source-audit.md",
|
|
40
|
+
"bytes": 1000
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"kind": "sniff",
|
|
44
|
+
"file": "specs/source-audit.md",
|
|
45
|
+
"sniff": "nonempty"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"kind": "contains",
|
|
49
|
+
"file": "specs/source-audit.md",
|
|
50
|
+
"pattern": "^##\\s+Current behavior",
|
|
51
|
+
"flags": "im",
|
|
52
|
+
"label": "Current behavior section"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"kind": "contains",
|
|
56
|
+
"file": "specs/source-audit.md",
|
|
57
|
+
"pattern": "^##\\s+Source map",
|
|
58
|
+
"flags": "im",
|
|
59
|
+
"label": "Source map section"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"kind": "contains",
|
|
63
|
+
"file": "specs/source-audit.md",
|
|
64
|
+
"pattern": "^##\\s+Conventions",
|
|
65
|
+
"flags": "im",
|
|
66
|
+
"label": "Conventions section"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"kind": "contains",
|
|
70
|
+
"file": "specs/source-audit.md",
|
|
71
|
+
"pattern": "^##\\s+Constraints",
|
|
72
|
+
"flags": "im",
|
|
73
|
+
"label": "Constraints section"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"kind": "contains",
|
|
77
|
+
"file": "specs/source-audit.md",
|
|
78
|
+
"pattern": "^##\\s+Unknowns",
|
|
79
|
+
"flags": "im",
|
|
80
|
+
"label": "Unknowns section"
|
|
81
|
+
}
|
|
82
|
+
],
|
|
83
|
+
"onReject": "inspect",
|
|
84
|
+
"maxAttempts": 3
|
|
85
|
+
},
|
|
86
|
+
"next": "resolve-decisions",
|
|
87
|
+
"toolPolicy": {
|
|
88
|
+
"disallowBuiltinToolsets": [
|
|
89
|
+
"ai-apps",
|
|
90
|
+
"archives",
|
|
91
|
+
"artifacts",
|
|
92
|
+
"audio",
|
|
93
|
+
"browser-automation",
|
|
94
|
+
"code-execution",
|
|
95
|
+
"craftbooks",
|
|
96
|
+
"data-tables",
|
|
97
|
+
"entity-intel",
|
|
98
|
+
"git",
|
|
99
|
+
"image-intel",
|
|
100
|
+
"images",
|
|
101
|
+
"role-delegation",
|
|
102
|
+
"role-delegation-escalation",
|
|
103
|
+
"team-management",
|
|
104
|
+
"videos",
|
|
105
|
+
"web"
|
|
106
|
+
],
|
|
107
|
+
"outputMedium": "workspace"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"id": "resolve-decisions",
|
|
112
|
+
"name": "Resolve scope and design decisions",
|
|
113
|
+
"description": "Close consequential ambiguities and record alternatives, rationale, and boundaries.",
|
|
114
|
+
"prompt": "Use `specs/source-audit.md` to enumerate only decisions the workspace cannot settle. Ask the user one consequential question at a time with `ask_user_question`, supplying a recommendation and trade-offs. In unattended mode, make only reversible assumptions and label them. Record the selected architecture, data and interface shapes, compatibility choices, dependency order, out-of-scope items, alternatives rejected, and decisions still blocked.\n\nObservable handoff: write the completed result to `specs/decision-log.md` in the workspace with `write_file`. Do not merely describe what the file would contain. Re-read it with `read_file` before finishing this phase and repair any incomplete sections.",
|
|
115
|
+
"suggestedRole": "solution architect",
|
|
116
|
+
"consumes": [
|
|
117
|
+
{
|
|
118
|
+
"file": "specs/source-audit.md"
|
|
119
|
+
}
|
|
120
|
+
],
|
|
121
|
+
"advanceWhen": {
|
|
122
|
+
"file": "specs/decision-log.md",
|
|
123
|
+
"minBytes": 900,
|
|
124
|
+
"sniff": "nonempty",
|
|
125
|
+
"requireChange": true,
|
|
126
|
+
"goto": "write-spec"
|
|
127
|
+
},
|
|
128
|
+
"gate": {
|
|
129
|
+
"at": "completion",
|
|
130
|
+
"checks": [
|
|
131
|
+
{
|
|
132
|
+
"kind": "minBytes",
|
|
133
|
+
"file": "specs/decision-log.md",
|
|
134
|
+
"bytes": 900
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"kind": "sniff",
|
|
138
|
+
"file": "specs/decision-log.md",
|
|
139
|
+
"sniff": "nonempty"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"kind": "contains",
|
|
143
|
+
"file": "specs/decision-log.md",
|
|
144
|
+
"pattern": "^##\\s+Scope",
|
|
145
|
+
"flags": "im",
|
|
146
|
+
"label": "Scope section"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"kind": "contains",
|
|
150
|
+
"file": "specs/decision-log.md",
|
|
151
|
+
"pattern": "^##\\s+Decisions",
|
|
152
|
+
"flags": "im",
|
|
153
|
+
"label": "Decisions section"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"kind": "contains",
|
|
157
|
+
"file": "specs/decision-log.md",
|
|
158
|
+
"pattern": "^##\\s+Alternatives",
|
|
159
|
+
"flags": "im",
|
|
160
|
+
"label": "Alternatives section"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"kind": "contains",
|
|
164
|
+
"file": "specs/decision-log.md",
|
|
165
|
+
"pattern": "^##\\s+Out of scope",
|
|
166
|
+
"flags": "im",
|
|
167
|
+
"label": "Out of scope section"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"kind": "contains",
|
|
171
|
+
"file": "specs/decision-log.md",
|
|
172
|
+
"pattern": "^##\\s+Open blockers",
|
|
173
|
+
"flags": "im",
|
|
174
|
+
"label": "Open blockers section"
|
|
175
|
+
}
|
|
176
|
+
],
|
|
177
|
+
"onReject": "resolve-decisions",
|
|
178
|
+
"maxAttempts": 3
|
|
179
|
+
},
|
|
180
|
+
"next": "write-spec",
|
|
181
|
+
"toolPolicy": {
|
|
182
|
+
"disallowBuiltinToolsets": [
|
|
183
|
+
"ai-apps",
|
|
184
|
+
"archives",
|
|
185
|
+
"artifacts",
|
|
186
|
+
"audio",
|
|
187
|
+
"browser-automation",
|
|
188
|
+
"code-execution",
|
|
189
|
+
"craftbooks",
|
|
190
|
+
"data-tables",
|
|
191
|
+
"entity-intel",
|
|
192
|
+
"git",
|
|
193
|
+
"image-intel",
|
|
194
|
+
"images",
|
|
195
|
+
"role-delegation",
|
|
196
|
+
"role-delegation-escalation",
|
|
197
|
+
"security-intel",
|
|
198
|
+
"team-management",
|
|
199
|
+
"videos",
|
|
200
|
+
"web"
|
|
201
|
+
],
|
|
202
|
+
"outputMedium": "workspace"
|
|
203
|
+
}
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
"id": "write-spec",
|
|
207
|
+
"name": "Write the implementation specification",
|
|
208
|
+
"description": "Produce a backlog-ready spec with concrete interfaces, sequencing, tests, and rollback.",
|
|
209
|
+
"prompt": "Synthesize the source audit and decision log into a self-contained implementation specification. Include current versus proposed behavior, precise file changes, actual schema or API shapes where relevant, dependency-ordered work, measurable acceptance criteria, a testing pyramid, observability, rollout and rollback, effort by component, and explicit exclusions. Split work that cannot be completed safely as one bounded change. Use real workspace paths; never manufacture line numbers or execution results.\n\nObservable handoff: write the completed result to `specs/implementation-spec.md` in the workspace with `write_file`. Do not merely describe what the file would contain. Re-read it with `read_file` before finishing this phase and repair any incomplete sections.",
|
|
210
|
+
"suggestedRole": "specification writer",
|
|
211
|
+
"advanceWhen": {
|
|
212
|
+
"file": "specs/implementation-spec.md",
|
|
213
|
+
"minBytes": 1800,
|
|
214
|
+
"sniff": "nonempty",
|
|
215
|
+
"requireChange": true,
|
|
216
|
+
"goto": "evaluate"
|
|
217
|
+
},
|
|
218
|
+
"gate": {
|
|
219
|
+
"at": "completion",
|
|
220
|
+
"checks": [
|
|
221
|
+
{
|
|
222
|
+
"kind": "minBytes",
|
|
223
|
+
"file": "specs/implementation-spec.md",
|
|
224
|
+
"bytes": 1800
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"kind": "sniff",
|
|
228
|
+
"file": "specs/implementation-spec.md",
|
|
229
|
+
"sniff": "nonempty"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"kind": "contains",
|
|
233
|
+
"file": "specs/implementation-spec.md",
|
|
234
|
+
"pattern": "^##\\s+Context",
|
|
235
|
+
"flags": "im",
|
|
236
|
+
"label": "Context section"
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
"kind": "contains",
|
|
240
|
+
"file": "specs/implementation-spec.md",
|
|
241
|
+
"pattern": "^##\\s+Current state",
|
|
242
|
+
"flags": "im",
|
|
243
|
+
"label": "Current state section"
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
"kind": "contains",
|
|
247
|
+
"file": "specs/implementation-spec.md",
|
|
248
|
+
"pattern": "^##\\s+Proposed change",
|
|
249
|
+
"flags": "im",
|
|
250
|
+
"label": "Proposed change section"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"kind": "contains",
|
|
254
|
+
"file": "specs/implementation-spec.md",
|
|
255
|
+
"pattern": "^##\\s+Implementation details",
|
|
256
|
+
"flags": "im",
|
|
257
|
+
"label": "Implementation details section"
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
"kind": "contains",
|
|
261
|
+
"file": "specs/implementation-spec.md",
|
|
262
|
+
"pattern": "^##\\s+Acceptance criteria",
|
|
263
|
+
"flags": "im",
|
|
264
|
+
"label": "Acceptance criteria section"
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
"kind": "contains",
|
|
268
|
+
"file": "specs/implementation-spec.md",
|
|
269
|
+
"pattern": "^##\\s+Testing plan",
|
|
270
|
+
"flags": "im",
|
|
271
|
+
"label": "Testing plan section"
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
"kind": "contains",
|
|
275
|
+
"file": "specs/implementation-spec.md",
|
|
276
|
+
"pattern": "^##\\s+Rollback plan",
|
|
277
|
+
"flags": "im",
|
|
278
|
+
"label": "Rollback plan section"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"kind": "contains",
|
|
282
|
+
"file": "specs/implementation-spec.md",
|
|
283
|
+
"pattern": "^##\\s+Out of scope",
|
|
284
|
+
"flags": "im",
|
|
285
|
+
"label": "Out of scope section"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"kind": "contains",
|
|
289
|
+
"file": "specs/implementation-spec.md",
|
|
290
|
+
"pattern": "^##\\s+File reference",
|
|
291
|
+
"flags": "im",
|
|
292
|
+
"label": "File reference section"
|
|
293
|
+
}
|
|
294
|
+
],
|
|
295
|
+
"onReject": "write-spec",
|
|
296
|
+
"maxAttempts": 3
|
|
297
|
+
},
|
|
298
|
+
"next": "evaluate",
|
|
299
|
+
"toolPolicy": {
|
|
300
|
+
"disallowBuiltinToolsets": [
|
|
301
|
+
"ai-apps",
|
|
302
|
+
"archives",
|
|
303
|
+
"artifacts",
|
|
304
|
+
"audio",
|
|
305
|
+
"browser-automation",
|
|
306
|
+
"code-execution",
|
|
307
|
+
"craftbooks",
|
|
308
|
+
"data-tables",
|
|
309
|
+
"entity-intel",
|
|
310
|
+
"git",
|
|
311
|
+
"image-intel",
|
|
312
|
+
"images",
|
|
313
|
+
"role-delegation",
|
|
314
|
+
"role-delegation-escalation",
|
|
315
|
+
"security-intel",
|
|
316
|
+
"team-management",
|
|
317
|
+
"videos",
|
|
318
|
+
"web"
|
|
319
|
+
],
|
|
320
|
+
"outputMedium": "workspace"
|
|
321
|
+
}
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
"id": "evaluate",
|
|
325
|
+
"name": "Evaluate the deliverable",
|
|
326
|
+
"description": "Independently grade the observable deliverable and route it to finish, repair, or user escalation.",
|
|
327
|
+
"prompt": "Review `specs/implementation-spec.md`, `specs/source-audit.md`, `specs/decision-log.md` against every criterion below. Inspect the underlying evidence files named by the workflow; do not grade from the author's summary alone.\n\n1. Every material current-state claim and file reference traces to inspected workspace evidence.\n2. The proposed architecture, interfaces, data shapes, and sequencing leave no hidden design decision to the implementer.\n3. Acceptance criteria are individually observable and pass/fail rather than subjective.\n4. The testing plan covers unit, integration, and end-to-end layers in proportion to risk.\n5. Migration, compatibility, observability, rollout, and rollback are addressed when relevant.\n6. Scope is bounded, exclusions are explicit, and unresolved blockers are not disguised as assumptions.\n\nOpen `specs/implementation-spec.md`, `specs/source-audit.md`, `specs/decision-log.md` with `read_file`. Write the evidence-backed review to `reviews/spec-authoring-review.md` in the artifacts drawer with `write_artifact`. Give each criterion a PASS or FAIL with a concrete path, excerpt, measurement, or observed behavior. End with exactly `Verdict: PASS` or `Verdict: REVISE`. Then use `advance_task_step` for the active task: PASS routes to `finish`; REVISE routes to `repair` for review rounds 1 through 2, and the 3th REVISE routes to `needs-user`. Never route to finish while a criterion is unmet.",
|
|
328
|
+
"suggestedRole": "engineering reviewer",
|
|
329
|
+
"consumes": [
|
|
330
|
+
{
|
|
331
|
+
"file": "specs/implementation-spec.md"
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
"file": "specs/source-audit.md"
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
"file": "specs/decision-log.md"
|
|
338
|
+
}
|
|
339
|
+
],
|
|
340
|
+
"gate": {
|
|
341
|
+
"at": "completion",
|
|
342
|
+
"checks": [
|
|
343
|
+
{
|
|
344
|
+
"kind": "minBytes",
|
|
345
|
+
"file": "reviews/spec-authoring-review.md",
|
|
346
|
+
"bytes": 400,
|
|
347
|
+
"artifact": true
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
"kind": "contains",
|
|
351
|
+
"file": "reviews/spec-authoring-review.md",
|
|
352
|
+
"pattern": "Verdict:\\s*(?:PASS|REVISE)",
|
|
353
|
+
"flags": "i",
|
|
354
|
+
"label": "explicit PASS or REVISE verdict",
|
|
355
|
+
"artifact": true
|
|
356
|
+
}
|
|
357
|
+
],
|
|
358
|
+
"onReject": "evaluate",
|
|
359
|
+
"maxAttempts": 3
|
|
360
|
+
},
|
|
361
|
+
"next": "repair",
|
|
362
|
+
"toolPolicy": {
|
|
363
|
+
"disallowBuiltinToolsets": [
|
|
364
|
+
"ai-apps",
|
|
365
|
+
"archives",
|
|
366
|
+
"audio",
|
|
367
|
+
"browser-automation",
|
|
368
|
+
"code-execution",
|
|
369
|
+
"craftbooks",
|
|
370
|
+
"data-tables",
|
|
371
|
+
"entity-intel",
|
|
372
|
+
"git",
|
|
373
|
+
"image-intel",
|
|
374
|
+
"images",
|
|
375
|
+
"role-delegation",
|
|
376
|
+
"role-delegation-escalation",
|
|
377
|
+
"security-intel",
|
|
378
|
+
"team-management",
|
|
379
|
+
"videos",
|
|
380
|
+
"web",
|
|
381
|
+
"workspace-fs-write"
|
|
382
|
+
],
|
|
383
|
+
"outputMedium": "artifact"
|
|
384
|
+
}
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
"id": "repair",
|
|
388
|
+
"name": "Repair the deliverable",
|
|
389
|
+
"description": "Fix only the concrete gaps from the latest independent review.",
|
|
390
|
+
"prompt": "Read `reviews/spec-authoring-review.md` with `read_artifact` and repair every failed criterion in `specs/implementation-spec.md`, `specs/source-audit.md`, `specs/decision-log.md`. Make changes on each file's declared surface (`write_artifact` for artifact inputs, `write_file` for workspace inputs), not in task notes or a reply. Preserve evidence that already passed. Re-run or re-check anything the reviewer found unproven. Ensure `specs/implementation-spec.md` is genuinely updated this turn so the repair is observable, then hand it back for independent evaluation.",
|
|
391
|
+
"suggestedRole": "specification writer",
|
|
392
|
+
"consumes": [
|
|
393
|
+
{
|
|
394
|
+
"file": "reviews/spec-authoring-review.md",
|
|
395
|
+
"artifact": true
|
|
396
|
+
},
|
|
397
|
+
{
|
|
398
|
+
"file": "specs/implementation-spec.md"
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
"file": "specs/source-audit.md"
|
|
402
|
+
},
|
|
403
|
+
{
|
|
404
|
+
"file": "specs/decision-log.md"
|
|
405
|
+
}
|
|
406
|
+
],
|
|
407
|
+
"advanceWhen": {
|
|
408
|
+
"file": "specs/implementation-spec.md",
|
|
409
|
+
"minBytes": 1800,
|
|
410
|
+
"sniff": "nonempty",
|
|
411
|
+
"requireChange": true,
|
|
412
|
+
"goto": "evaluate"
|
|
413
|
+
},
|
|
414
|
+
"gate": {
|
|
415
|
+
"at": "completion",
|
|
416
|
+
"checks": [
|
|
417
|
+
{
|
|
418
|
+
"kind": "minBytes",
|
|
419
|
+
"file": "specs/implementation-spec.md",
|
|
420
|
+
"bytes": 1800
|
|
421
|
+
},
|
|
422
|
+
{
|
|
423
|
+
"kind": "sniff",
|
|
424
|
+
"file": "specs/implementation-spec.md",
|
|
425
|
+
"sniff": "nonempty"
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
"kind": "contains",
|
|
429
|
+
"file": "specs/implementation-spec.md",
|
|
430
|
+
"pattern": "^##\\s+Context",
|
|
431
|
+
"flags": "im",
|
|
432
|
+
"label": "Context section"
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
"kind": "contains",
|
|
436
|
+
"file": "specs/implementation-spec.md",
|
|
437
|
+
"pattern": "^##\\s+Current state",
|
|
438
|
+
"flags": "im",
|
|
439
|
+
"label": "Current state section"
|
|
440
|
+
},
|
|
441
|
+
{
|
|
442
|
+
"kind": "contains",
|
|
443
|
+
"file": "specs/implementation-spec.md",
|
|
444
|
+
"pattern": "^##\\s+Proposed change",
|
|
445
|
+
"flags": "im",
|
|
446
|
+
"label": "Proposed change section"
|
|
447
|
+
},
|
|
448
|
+
{
|
|
449
|
+
"kind": "contains",
|
|
450
|
+
"file": "specs/implementation-spec.md",
|
|
451
|
+
"pattern": "^##\\s+Implementation details",
|
|
452
|
+
"flags": "im",
|
|
453
|
+
"label": "Implementation details section"
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
"kind": "contains",
|
|
457
|
+
"file": "specs/implementation-spec.md",
|
|
458
|
+
"pattern": "^##\\s+Acceptance criteria",
|
|
459
|
+
"flags": "im",
|
|
460
|
+
"label": "Acceptance criteria section"
|
|
461
|
+
},
|
|
462
|
+
{
|
|
463
|
+
"kind": "contains",
|
|
464
|
+
"file": "specs/implementation-spec.md",
|
|
465
|
+
"pattern": "^##\\s+Testing plan",
|
|
466
|
+
"flags": "im",
|
|
467
|
+
"label": "Testing plan section"
|
|
468
|
+
},
|
|
469
|
+
{
|
|
470
|
+
"kind": "contains",
|
|
471
|
+
"file": "specs/implementation-spec.md",
|
|
472
|
+
"pattern": "^##\\s+Rollback plan",
|
|
473
|
+
"flags": "im",
|
|
474
|
+
"label": "Rollback plan section"
|
|
475
|
+
},
|
|
476
|
+
{
|
|
477
|
+
"kind": "contains",
|
|
478
|
+
"file": "specs/implementation-spec.md",
|
|
479
|
+
"pattern": "^##\\s+Out of scope",
|
|
480
|
+
"flags": "im",
|
|
481
|
+
"label": "Out of scope section"
|
|
482
|
+
},
|
|
483
|
+
{
|
|
484
|
+
"kind": "contains",
|
|
485
|
+
"file": "specs/implementation-spec.md",
|
|
486
|
+
"pattern": "^##\\s+File reference",
|
|
487
|
+
"flags": "im",
|
|
488
|
+
"label": "File reference section"
|
|
489
|
+
}
|
|
490
|
+
],
|
|
491
|
+
"onReject": "repair",
|
|
492
|
+
"maxAttempts": 3
|
|
493
|
+
},
|
|
494
|
+
"next": "evaluate",
|
|
495
|
+
"toolPolicy": {
|
|
496
|
+
"disallowBuiltinToolsets": [
|
|
497
|
+
"ai-apps",
|
|
498
|
+
"archives",
|
|
499
|
+
"audio",
|
|
500
|
+
"browser-automation",
|
|
501
|
+
"code-execution",
|
|
502
|
+
"craftbooks",
|
|
503
|
+
"data-tables",
|
|
504
|
+
"entity-intel",
|
|
505
|
+
"git",
|
|
506
|
+
"image-intel",
|
|
507
|
+
"images",
|
|
508
|
+
"role-delegation",
|
|
509
|
+
"role-delegation-escalation",
|
|
510
|
+
"security-intel",
|
|
511
|
+
"team-management",
|
|
512
|
+
"videos",
|
|
513
|
+
"web"
|
|
514
|
+
],
|
|
515
|
+
"outputMedium": "workspace",
|
|
516
|
+
"additionalOutputMedia": [
|
|
517
|
+
"artifact",
|
|
518
|
+
"task-note"
|
|
519
|
+
]
|
|
520
|
+
}
|
|
521
|
+
},
|
|
522
|
+
{
|
|
523
|
+
"id": "finish",
|
|
524
|
+
"name": "Finish",
|
|
525
|
+
"description": "All deterministic and reviewer criteria passed.",
|
|
526
|
+
"prompt": "The independent review passed. Read `reviews/spec-authoring-review.md` with `read_artifact`, then use `write_task_note` to record a concise DONE summary with the final deliverable paths (`specs/implementation-spec.md`, `specs/source-audit.md`, `specs/decision-log.md`) and the evidence that each acceptance criterion passed. Report DONE without starting new work.",
|
|
527
|
+
"suggestedRole": "project lead",
|
|
528
|
+
"consumes": [
|
|
529
|
+
{
|
|
530
|
+
"file": "reviews/spec-authoring-review.md",
|
|
531
|
+
"artifact": true
|
|
532
|
+
}
|
|
533
|
+
],
|
|
534
|
+
"terminal": true,
|
|
535
|
+
"toolPolicy": {
|
|
536
|
+
"disallowBuiltinToolsets": [
|
|
537
|
+
"ai-apps",
|
|
538
|
+
"archives",
|
|
539
|
+
"audio",
|
|
540
|
+
"browser-automation",
|
|
541
|
+
"code-execution",
|
|
542
|
+
"craftbooks",
|
|
543
|
+
"data-tables",
|
|
544
|
+
"entity-intel",
|
|
545
|
+
"git",
|
|
546
|
+
"image-intel",
|
|
547
|
+
"images",
|
|
548
|
+
"role-delegation",
|
|
549
|
+
"role-delegation-escalation",
|
|
550
|
+
"security-intel",
|
|
551
|
+
"team-management",
|
|
552
|
+
"videos",
|
|
553
|
+
"web",
|
|
554
|
+
"workspace-fs-write"
|
|
555
|
+
],
|
|
556
|
+
"outputMedium": "task-note"
|
|
557
|
+
}
|
|
558
|
+
},
|
|
559
|
+
{
|
|
560
|
+
"id": "needs-user",
|
|
561
|
+
"name": "Escalate unresolved concerns",
|
|
562
|
+
"description": "The bounded repair loop ended without a defensible pass.",
|
|
563
|
+
"prompt": "The deliverable did not pass after 3 review rounds. Do not claim success. Read `reviews/spec-authoring-review.md` with `read_artifact`, then use `write_task_note` to record DONE_WITH_CONCERNS: the unmet criteria, what was attempted, the affected paths, and the smallest user decision or missing input needed to continue.",
|
|
564
|
+
"suggestedRole": "project lead",
|
|
565
|
+
"consumes": [
|
|
566
|
+
{
|
|
567
|
+
"file": "reviews/spec-authoring-review.md",
|
|
568
|
+
"artifact": true
|
|
569
|
+
}
|
|
570
|
+
],
|
|
571
|
+
"terminal": true,
|
|
572
|
+
"toolPolicy": {
|
|
573
|
+
"disallowBuiltinToolsets": [
|
|
574
|
+
"ai-apps",
|
|
575
|
+
"archives",
|
|
576
|
+
"audio",
|
|
577
|
+
"browser-automation",
|
|
578
|
+
"code-execution",
|
|
579
|
+
"craftbooks",
|
|
580
|
+
"data-tables",
|
|
581
|
+
"entity-intel",
|
|
582
|
+
"git",
|
|
583
|
+
"image-intel",
|
|
584
|
+
"images",
|
|
585
|
+
"role-delegation",
|
|
586
|
+
"role-delegation-escalation",
|
|
587
|
+
"security-intel",
|
|
588
|
+
"team-management",
|
|
589
|
+
"videos",
|
|
590
|
+
"web",
|
|
591
|
+
"workspace-fs-write"
|
|
592
|
+
],
|
|
593
|
+
"outputMedium": "task-note"
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
],
|
|
597
|
+
"version": "2.0.8",
|
|
598
|
+
"releasedAt": "2026-09-05T03:30:00Z"
|
|
599
|
+
}
|