evizi-kit 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/README.md +506 -0
  2. package/kits/agent/.agent/skills/claude-code-subagent-creator/SKILL.md +292 -0
  3. package/kits/agent/.agent/skills/claude-code-subagent-creator/references/claude-code-subagent-configuration.md +158 -0
  4. package/kits/agent/.agent/skills/claude-code-subagent-creator/templates/subagent-profile.template.md +26 -0
  5. package/kits/agent/.agent/skills/skill-creator/LICENSE.txt +202 -0
  6. package/kits/agent/.agent/skills/skill-creator/SKILL.md +485 -0
  7. package/kits/agent/.agent/skills/skill-creator/agents/analyzer.md +274 -0
  8. package/kits/agent/.agent/skills/skill-creator/agents/comparator.md +202 -0
  9. package/kits/agent/.agent/skills/skill-creator/agents/grader.md +223 -0
  10. package/kits/agent/.agent/skills/skill-creator/assets/eval_review.html +146 -0
  11. package/kits/agent/.agent/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  12. package/kits/agent/.agent/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  13. package/kits/agent/.agent/skills/skill-creator/references/schemas.md +430 -0
  14. package/kits/agent/.agent/skills/skill-creator/scripts/__init__.py +0 -0
  15. package/kits/agent/.agent/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  16. package/kits/agent/.agent/skills/skill-creator/scripts/generate_report.py +326 -0
  17. package/kits/agent/.agent/skills/skill-creator/scripts/improve_description.py +247 -0
  18. package/kits/agent/.agent/skills/skill-creator/scripts/package_skill.py +136 -0
  19. package/kits/agent/.agent/skills/skill-creator/scripts/quick_validate.py +103 -0
  20. package/kits/agent/.agent/skills/skill-creator/scripts/run_eval.py +310 -0
  21. package/kits/agent/.agent/skills/skill-creator/scripts/run_loop.py +328 -0
  22. package/kits/agent/.agent/skills/skill-creator/scripts/utils.py +47 -0
  23. package/kits/agent/manifest.json +10 -0
  24. package/kits/claude/.claude/agents/code-pusher.md +46 -0
  25. package/kits/claude/.claude/agents/feature-document-updater.md +37 -0
  26. package/kits/claude/.claude/agents/self-reviewer.md +32 -0
  27. package/kits/claude/.claude/agents/web-auto-agentic-workflow-initializer.md +42 -0
  28. package/kits/claude/.claude/agents/web-auto-assisted-fix-and-runner.md +36 -0
  29. package/kits/claude/.claude/agents/web-auto-chrome-devtools-selector-extractor.md +36 -0
  30. package/kits/claude/.claude/agents/web-auto-coder.md +33 -0
  31. package/kits/claude/.claude/agents/web-auto-fe-selector-extractor.md +31 -0
  32. package/kits/claude/.claude/agents/web-auto-fix-and-runner.md +35 -0
  33. package/kits/claude/.claude/agents/web-auto-lessons-learned-extractor.md +34 -0
  34. package/kits/claude/.claude/agents/web-auto-playwright-mcp-selector-extractor.md +37 -0
  35. package/kits/claude/.claude/agents/web-auto-source-instructions-updater.md +43 -0
  36. package/kits/claude/.claude/agents/web-auto-test-cases-generator.md +29 -0
  37. package/kits/claude/.claude/agents/web-auto-ticket-designer.md +35 -0
  38. package/kits/claude/.claude/agents/web-auto-ticket-playbook-planner.md +36 -0
  39. package/kits/claude/.claude/agents/web-auto.md +382 -0
  40. package/kits/claude/.claude/skills/claude-code-subagent-creator/SKILL.md +292 -0
  41. package/kits/claude/.claude/skills/claude-code-subagent-creator/references/claude-code-subagent-configuration.md +158 -0
  42. package/kits/claude/.claude/skills/claude-code-subagent-creator/templates/subagent-profile.template.md +26 -0
  43. package/kits/claude/.claude/skills/skill-creator/LICENSE.txt +202 -0
  44. package/kits/claude/.claude/skills/skill-creator/SKILL.md +485 -0
  45. package/kits/claude/.claude/skills/skill-creator/agents/analyzer.md +274 -0
  46. package/kits/claude/.claude/skills/skill-creator/agents/comparator.md +202 -0
  47. package/kits/claude/.claude/skills/skill-creator/agents/grader.md +223 -0
  48. package/kits/claude/.claude/skills/skill-creator/assets/eval_review.html +146 -0
  49. package/kits/claude/.claude/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  50. package/kits/claude/.claude/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  51. package/kits/claude/.claude/skills/skill-creator/references/schemas.md +430 -0
  52. package/kits/claude/.claude/skills/skill-creator/scripts/__init__.py +0 -0
  53. package/kits/claude/.claude/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  54. package/kits/claude/.claude/skills/skill-creator/scripts/generate_report.py +326 -0
  55. package/kits/claude/.claude/skills/skill-creator/scripts/improve_description.py +247 -0
  56. package/kits/claude/.claude/skills/skill-creator/scripts/package_skill.py +136 -0
  57. package/kits/claude/.claude/skills/skill-creator/scripts/quick_validate.py +103 -0
  58. package/kits/claude/.claude/skills/skill-creator/scripts/run_eval.py +310 -0
  59. package/kits/claude/.claude/skills/skill-creator/scripts/run_loop.py +328 -0
  60. package/kits/claude/.claude/skills/skill-creator/scripts/utils.py +47 -0
  61. package/kits/claude/manifest.json +10 -0
  62. package/kits/cursor/.cursor/agents/code-pusher.agent.md +43 -0
  63. package/kits/cursor/.cursor/agents/feature-document-updater.agent.md +34 -0
  64. package/kits/cursor/.cursor/agents/self-reviewer.agent.md +29 -0
  65. package/kits/cursor/.cursor/agents/web-auto-agentic-workflow-initializer.agent.md +37 -0
  66. package/kits/cursor/.cursor/agents/web-auto-assisted-fix-and-runner.agent.md +33 -0
  67. package/kits/cursor/.cursor/agents/web-auto-chrome-devtools-selector-extractor.agent.md +31 -0
  68. package/kits/cursor/.cursor/agents/web-auto-coder.agent.md +30 -0
  69. package/kits/cursor/.cursor/agents/web-auto-fe-selector-extractor.agent.md +28 -0
  70. package/kits/cursor/.cursor/agents/web-auto-fix-and-runner.agent.md +32 -0
  71. package/kits/cursor/.cursor/agents/web-auto-lessons-learned-extractor.agent.md +31 -0
  72. package/kits/cursor/.cursor/agents/web-auto-playwright-mcp-selector-extractor.agent.md +32 -0
  73. package/kits/cursor/.cursor/agents/web-auto-source-instructions-updater.agent.md +40 -0
  74. package/kits/cursor/.cursor/agents/web-auto-test-cases-generator.agent.md +26 -0
  75. package/kits/cursor/.cursor/agents/web-auto-ticket-designer.agent.md +32 -0
  76. package/kits/cursor/.cursor/agents/web-auto-ticket-playbook-planner.agent.md +33 -0
  77. package/kits/cursor/.cursor/agents/web-auto.agent.md +379 -0
  78. package/kits/cursor/.cursor/skills/claude-code-subagent-creator/SKILL.md +292 -0
  79. package/kits/cursor/.cursor/skills/claude-code-subagent-creator/references/claude-code-subagent-configuration.md +158 -0
  80. package/kits/cursor/.cursor/skills/claude-code-subagent-creator/templates/subagent-profile.template.md +26 -0
  81. package/kits/cursor/.cursor/skills/skill-creator/LICENSE.txt +202 -0
  82. package/kits/cursor/.cursor/skills/skill-creator/SKILL.md +485 -0
  83. package/kits/cursor/.cursor/skills/skill-creator/agents/analyzer.md +274 -0
  84. package/kits/cursor/.cursor/skills/skill-creator/agents/comparator.md +202 -0
  85. package/kits/cursor/.cursor/skills/skill-creator/agents/grader.md +223 -0
  86. package/kits/cursor/.cursor/skills/skill-creator/assets/eval_review.html +146 -0
  87. package/kits/cursor/.cursor/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  88. package/kits/cursor/.cursor/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  89. package/kits/cursor/.cursor/skills/skill-creator/references/schemas.md +430 -0
  90. package/kits/cursor/.cursor/skills/skill-creator/scripts/__init__.py +0 -0
  91. package/kits/cursor/.cursor/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  92. package/kits/cursor/.cursor/skills/skill-creator/scripts/generate_report.py +326 -0
  93. package/kits/cursor/.cursor/skills/skill-creator/scripts/improve_description.py +247 -0
  94. package/kits/cursor/.cursor/skills/skill-creator/scripts/package_skill.py +136 -0
  95. package/kits/cursor/.cursor/skills/skill-creator/scripts/quick_validate.py +103 -0
  96. package/kits/cursor/.cursor/skills/skill-creator/scripts/run_eval.py +310 -0
  97. package/kits/cursor/.cursor/skills/skill-creator/scripts/run_loop.py +328 -0
  98. package/kits/cursor/.cursor/skills/skill-creator/scripts/utils.py +47 -0
  99. package/kits/cursor/manifest.json +10 -0
  100. package/kits/github/.github/agents/code-pusher.agent.md +45 -0
  101. package/kits/github/.github/agents/feature-document-updater.agent.md +36 -0
  102. package/kits/github/.github/agents/self-reviewer.agent.md +31 -0
  103. package/kits/github/.github/agents/web-auto-agentic-workflow-initializer.agent.md +39 -0
  104. package/kits/github/.github/agents/web-auto-assisted-fix-and-runner.agent.md +35 -0
  105. package/kits/github/.github/agents/web-auto-chrome-devtools-selector-extractor.agent.md +33 -0
  106. package/kits/github/.github/agents/web-auto-coder.agent.md +32 -0
  107. package/kits/github/.github/agents/web-auto-fe-selector-extractor.agent.md +30 -0
  108. package/kits/github/.github/agents/web-auto-fix-and-runner.agent.md +34 -0
  109. package/kits/github/.github/agents/web-auto-lessons-learned-extractor.agent.md +33 -0
  110. package/kits/github/.github/agents/web-auto-playwright-mcp-selector-extractor.agent.md +34 -0
  111. package/kits/github/.github/agents/web-auto-source-instructions-updater.agent.md +42 -0
  112. package/kits/github/.github/agents/web-auto-test-cases-generator.agent.md +28 -0
  113. package/kits/github/.github/agents/web-auto-ticket-designer.agent.md +34 -0
  114. package/kits/github/.github/agents/web-auto-ticket-playbook-creator.agent.md +35 -0
  115. package/kits/github/.github/agents/web-auto.agent.md +382 -0
  116. package/kits/github/.github/skills/claude-code-subagent-creator/SKILL.md +310 -0
  117. package/kits/github/.github/skills/claude-code-subagent-creator/references/claude-code-subagent-configuration.md +158 -0
  118. package/kits/github/.github/skills/claude-code-subagent-creator/templates/subagent-profile.template.md +37 -0
  119. package/kits/github/.github/skills/skill-creator/LICENSE.txt +202 -0
  120. package/kits/github/.github/skills/skill-creator/SKILL.md +485 -0
  121. package/kits/github/.github/skills/skill-creator/agents/analyzer.md +274 -0
  122. package/kits/github/.github/skills/skill-creator/agents/comparator.md +202 -0
  123. package/kits/github/.github/skills/skill-creator/agents/grader.md +223 -0
  124. package/kits/github/.github/skills/skill-creator/assets/eval_review.html +146 -0
  125. package/kits/github/.github/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  126. package/kits/github/.github/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  127. package/kits/github/.github/skills/skill-creator/references/schemas.md +430 -0
  128. package/kits/github/.github/skills/skill-creator/scripts/__init__.py +0 -0
  129. package/kits/github/.github/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  130. package/kits/github/.github/skills/skill-creator/scripts/generate_report.py +326 -0
  131. package/kits/github/.github/skills/skill-creator/scripts/improve_description.py +247 -0
  132. package/kits/github/.github/skills/skill-creator/scripts/package_skill.py +136 -0
  133. package/kits/github/.github/skills/skill-creator/scripts/quick_validate.py +103 -0
  134. package/kits/github/.github/skills/skill-creator/scripts/run_eval.py +310 -0
  135. package/kits/github/.github/skills/skill-creator/scripts/run_loop.py +328 -0
  136. package/kits/github/.github/skills/skill-creator/scripts/utils.py +47 -0
  137. package/kits/github/manifest.json +10 -0
  138. package/kits/shared/docs/ai-code-review.md +440 -0
  139. package/kits/shared/docs/increase-unit-test-coverage.md +77 -0
  140. package/kits/shared/docs/pr-review-agent.md +501 -0
  141. package/kits/shared/docs/self-review-agent.md +246 -0
  142. package/kits/shared/docs/web-auto-agentic-workflow.md +506 -0
  143. package/kits/shared/manifest.json +11 -0
  144. package/kits/shared/skills/fix-automation-tests/SKILL.md +280 -0
  145. package/kits/shared/skills/fix-automation-tests/scripts/fetch_pr_changes.py +300 -0
  146. package/kits/shared/skills/fix-automation-tests/templates/impact-report.template.md +42 -0
  147. package/kits/shared/skills/increase-unit-test-coverage/SKILL.md +117 -0
  148. package/kits/shared/skills/increase-unit-test-coverage/scripts/filter_low_coverage.py +447 -0
  149. package/kits/shared/skills/pr-review/SKILL.md +200 -0
  150. package/kits/shared/skills/pr-review/references/automation.md +62 -0
  151. package/kits/shared/skills/pr-review/references/backend.md +95 -0
  152. package/kits/shared/skills/pr-review/references/frontend.md +103 -0
  153. package/kits/shared/skills/pr-review/references/mobile.md +108 -0
  154. package/kits/shared/skills/pr-review/references/output-schema.md +130 -0
  155. package/kits/shared/skills/pr-review/scripts/post-review.py +1395 -0
  156. package/kits/shared/skills/push-code/SKILL.md +176 -0
  157. package/kits/shared/skills/self-review/SKILL.md +234 -0
  158. package/kits/shared/skills/self-review/evals/evals.json +23 -0
  159. package/kits/shared/skills/self-review/references/automation.md +62 -0
  160. package/kits/shared/skills/self-review/references/backend.md +95 -0
  161. package/kits/shared/skills/self-review/references/frontend.md +103 -0
  162. package/kits/shared/skills/self-review/references/mobile.md +108 -0
  163. package/kits/shared/skills/self-review/templates/issues.template.md +72 -0
  164. package/kits/shared/skills/update-feature-document/SKILL.md +156 -0
  165. package/kits/shared/skills/update-feature-document/templates/delta.template.yaml +58 -0
  166. package/kits/shared/skills/update-feature-document/templates/feature.template.md +25 -0
  167. package/kits/shared/skills/web-auto-assisted-fix-and-run/SKILL.md +130 -0
  168. package/kits/shared/skills/web-auto-assisted-fix-and-run/references/resolve-api-error.md +108 -0
  169. package/kits/shared/skills/web-auto-assisted-fix-and-run/references/resolve-selector.md +60 -0
  170. package/kits/shared/skills/web-auto-assisted-fix-and-run/templates/issues-resolution-report-append.template.md +54 -0
  171. package/kits/shared/skills/web-auto-chrome-devtools-mcp-extract-selectors/SKILL.md +284 -0
  172. package/kits/shared/skills/web-auto-coding/SKILL.md +152 -0
  173. package/kits/shared/skills/web-auto-extract-lessons-learned/SKILL.md +168 -0
  174. package/kits/shared/skills/web-auto-extract-lessons-learned/templates/lessons-learned.template.md +115 -0
  175. package/kits/shared/skills/web-auto-fe-extract-selectors/SKILL.md +282 -0
  176. package/kits/shared/skills/web-auto-fe-extract-selectors/evals/evals.json +23 -0
  177. package/kits/shared/skills/web-auto-fix-and-run-test/SKILL.md +183 -0
  178. package/kits/shared/skills/web-auto-fix-and-run-test/templates/issues-resolution-report.template.md +77 -0
  179. package/kits/shared/skills/web-auto-generate-best-practices/SKILL.md +123 -0
  180. package/kits/shared/skills/web-auto-generate-instructions/SKILL.md +200 -0
  181. package/kits/shared/skills/web-auto-generate-instructions/evals/evals.json +23 -0
  182. package/kits/shared/skills/web-auto-generate-instructions/references/analysis-guide.md +145 -0
  183. package/kits/shared/skills/web-auto-generate-instructions/templates/web-auto-instructions.template.md +184 -0
  184. package/kits/shared/skills/web-auto-generate-project-blueprint/SKILL.md +181 -0
  185. package/kits/shared/skills/web-auto-generate-project-blueprint/evals/evals.json +57 -0
  186. package/kits/shared/skills/web-auto-generate-project-blueprint/templates/web-auto-project-blueprint.template.md +161 -0
  187. package/kits/shared/skills/web-auto-playwright-mcp-extract-selectors/SKILL.md +293 -0
  188. package/kits/shared/skills/web-auto-test-cases/SKILL.md +138 -0
  189. package/kits/shared/skills/web-auto-test-cases/evals/evals.json +129 -0
  190. package/kits/shared/skills/web-auto-test-cases/templates/test-cases.template.md +53 -0
  191. package/kits/shared/skills/web-auto-ticket-design/SKILL.md +199 -0
  192. package/kits/shared/skills/web-auto-ticket-design/templates/ticket-design.template.md +138 -0
  193. package/kits/shared/skills/web-auto-ticket-playbook/SKILL.md +218 -0
  194. package/kits/shared/skills/web-auto-ticket-playbook/evals/evals.json +23 -0
  195. package/kits/shared/skills/web-auto-ticket-playbook/templates/ticket-playbook.template.md +148 -0
  196. package/kits/shared/skills/web-auto-update-source-instructions/SKILL.md +156 -0
  197. package/kits/shared/skills/web-auto-update-source-instructions/evals/evals.json +22 -0
  198. package/kits/shared/skills/workspace-ai-nav-creator/SKILL.md +168 -0
  199. package/kits/shared/skills/workspace-ai-nav-creator/templates/agents-md.template.md +112 -0
  200. package/kits/shared/skills/workspace-ai-nav-creator/templates/claude-md.template.md +86 -0
  201. package/package.json +16 -0
@@ -0,0 +1,145 @@
1
+ # Codebase Analysis Guide
2
+
3
+ Reference for Steps 2–3 of the workflow. Each section maps directly to a section in the output template.
4
+
5
+ > **Before starting**: Read `.documents-design/web-auto-project-blueprint.md` and `.documents-design/web-auto-best-practices.md` first (Step 1 of the workflow). Build a mental note of what is already documented there so you do not repeat it.
6
+
7
+ ---
8
+
9
+ ## Pre-analysis: Understand the Project Context
10
+
11
+ These steps are for orientation only — their findings do NOT go into the instructions file.
12
+
13
+ **Detect the framework** using dependency files and config file signals:
14
+
15
+ | Framework | Detection Signals |
16
+ |-----------|------------------|
17
+ | Playwright | `playwright.config.*`, `@playwright/test` import |
18
+ | Cypress | `cypress.config.*`, `cypress/` directory |
19
+ | WebdriverIO | `wdio.conf.*`, `@wdio/` imports |
20
+ | Selenium | `selenium-webdriver` / `selenium` package, `WebDriver` class |
21
+ | Robot Framework | `.robot` / `.resource` files, `Library SeleniumLibrary` |
22
+ | Nightwatch | `nightwatch.conf.*` |
23
+ | Puppeteer | `puppeteer` package, `browser.newPage()` |
24
+ | TestCafe | `testcafe` package, `.testcafe` config |
25
+
26
+ Secondary signals by language: `package.json` (JS/TS) · `requirements.txt` / `pyproject.toml` (Python) · `pom.xml` / `build.gradle` (Java) · `Gemfile` (Ruby) · `*.csproj` (C#)
27
+
28
+ **Find all relevant files** before reading any of them:
29
+
30
+ ```
31
+ Test specs: **/*.spec.*, **/*.test.*, **/*_test.*, **/*Test.*, **/test_*.*, **/*.cy.*
32
+ Page objects: **/*.page.*, **/*Page.*, **/*_page.*, **/*PO.*
33
+ Helpers: **/helpers/**/*, **/utils/**/*, **/support/**/*
34
+ Data/fixtures: **/fixtures/**/*, **/data/**/*, **/factories/**/*
35
+ Config: *.config.*, wdio.conf.*, conftest.*, jest.config.*
36
+ ```
37
+
38
+ Adjust patterns to match the project's actual file extensions and naming style. Read samples from **at least 5 different feature areas** — not just one.
39
+
40
+ ---
41
+
42
+ ## → Template Section 1: Page Object Patterns
43
+
44
+ Read **3–5 representative Page Object files**. Extract:
45
+
46
+ | Aspect | What to Look For |
47
+ |--------|-----------------|
48
+ | **Class structure** | Class declaration, inheritance, export/instantiation pattern |
49
+ | **Selector definitions** | How selectors are stored — properties, getters, factory methods; static vs parameterized |
50
+ | **Selector declaration rules** | Any framework-specific constraints on how selectors must be written (e.g., sync vs async) |
51
+ | **Action methods** | How user interactions are encapsulated; naming convention |
52
+ | **Verification methods** | Whether assertions live in Page Objects or in test files |
53
+ | **Step wrappers** | Whether a step/substep reporting wrapper is used (allure.step, custom wrappers) |
54
+ | **Component reuse** | Whether smaller components (modals, tables, forms) are composed into page objects |
55
+
56
+ > If you find selector strategy rules (priority order: test IDs, ARIA, CSS, XPath) or anti-patterns during this analysis, add them to `.documents-design/web-auto-best-practices.md`.
57
+
58
+ ---
59
+
60
+ ## → Template Section 2: Test Structure & Patterns
61
+
62
+ Read **5–8 test files** across different features. Extract:
63
+
64
+ | Aspect | What to Look For |
65
+ |--------|-----------------|
66
+ | **Test file template** | Import order, describe/suite structure, one complete test case |
67
+ | **Hook patterns** | What belongs in `before` / `beforeAll` vs `beforeEach`; cleanup placement |
68
+ | **Assertion style** | Which library is used; assertion style (BDD, TDD, custom matchers) |
69
+ | **Step organization** | How actions and verifications are grouped; step ownership rules per page object |
70
+ | **Tags / annotations** | How tests are categorized for selective execution |
71
+
72
+ ---
73
+
74
+ ## → Template Section 3: Test Data Management
75
+
76
+ Look for dedicated data files, fixture files, or factory modules. Extract:
77
+
78
+ | Aspect | What to Look For |
79
+ |--------|-----------------|
80
+ | **Data file structure** | Location, naming, what a typical data file contains |
81
+ | **Type definitions** | How test data shape is expressed (interfaces, dataclasses, POJOs, type hints) |
82
+ | **Dynamic value generation** | What utility generates unique/random values |
83
+ | **Shared constants** | Enums, lookup tables, or constant sets reused across tests |
84
+ | **Cleanup pattern** | How data created by tests is removed; whether cleanup is in a hook or inline |
85
+
86
+ > Omit Section 3 from the output if the project has no dedicated data files — inline or ad-hoc data is sufficient to note in the test file template.
87
+
88
+ ---
89
+
90
+ ## → Template Section 4: API & Backend Helpers
91
+
92
+ Look for programmatic test data setup/teardown. Common locations: `helpers/`, `utils/`, `support/`, `api/`, `factories/`, `seeds/`, or files named after entities.
93
+
94
+ | Aspect | What to Look For |
95
+ |--------|-----------------|
96
+ | **Auth pattern** | How a token, session, or credential is obtained for API calls |
97
+ | **Data setup** | How test data is created programmatically before tests |
98
+ | **Data teardown** | How test data is removed after tests |
99
+ | **Find / search** | How existing records are located (needed to get IDs for cleanup) |
100
+ | **Available modules** | Which helper modules exist and what entities they cover |
101
+ | **Conventions** | Project-wide rules: default role, retry/sleep patterns, query style, error handling |
102
+
103
+ > Omit Section 4 from the output if the project has no programmatic API helpers.
104
+
105
+ ---
106
+
107
+ ## → Template Section 5: Common Workflow Patterns
108
+
109
+ Look for patterns that appear repeatedly across multiple test files. Extract real code for:
110
+
111
+ - Login and navigation flows
112
+ - Search and selection from a list
113
+ - Form fill and submission
114
+ - Modal / dialog confirmation
115
+ - Async UI feedback (spinners, loading states, toast notifications)
116
+
117
+ > Omit Section 5 from the output if no recurring multi-step patterns were found.
118
+
119
+ ---
120
+
121
+ ## → Template Section 6: Implementation Checklist
122
+
123
+ Fill in the actual values directly into the checklist items — this section must be self-contained and immediately usable without opening any other document.
124
+
125
+ **Planning steps:** List the project-specific steps required before writing a test (e.g., assign a test ID, register a feature abbreviation in the test registry). Check the README, CONTRIBUTING.md, or blueprint for any required setup steps. If there are none, omit the Planning sub-section.
126
+
127
+ **Files to Create — replace example paths with real patterns:**
128
+
129
+ | Item | Where to Find the Pattern |
130
+ |------|-----------------------------|
131
+ | Page Object path | From the page object directory structure |
132
+ | API helper path | From the helper module locations |
133
+ | Type definition path | From the interfaces / models file locations |
134
+ | Test data / fixture path | From the fixture or data file locations |
135
+ | Test spec path | From the test spec directory |
136
+
137
+ **Before Committing — replace placeholder commands with real commands:**
138
+
139
+ | Command | Where to Find It |
140
+ |---------|-----------------|
141
+ | Run tests locally | `package.json` scripts, `Makefile`, README, or CI config |
142
+ | Lint command | Same sources |
143
+ | Type-check command | Same sources |
144
+
145
+ If any of these commands don't apply to the project (e.g., no type-checking), omit that checklist item.
@@ -0,0 +1,184 @@
1
+ # Web Automation Test Instructions
2
+
3
+ > **Purpose**: Copy-paste-ready code patterns and templates extracted from the actual codebase. Use this file when writing new tests.
4
+ >
5
+ > **Related documents** — read these alongside this file:
6
+ > - `.documents-design/web-auto-project-blueprint.md` — project architecture, tech stack, directory structure, file naming conventions, and selector strategy
7
+ > - `.documents-design/web-auto-best-practices.md` — coding standards, rules, and anti-patterns
8
+ >
9
+ > This file does not repeat information from the two files above, except in **Section 6** where path patterns and commands are reproduced inline for quick reference. Cross-references are added elsewhere where relevant.
10
+
11
+ ## 1. Page Object Patterns
12
+
13
+ ### Page Object Template
14
+
15
+ ```
16
+ [Full, copy-paste-ready Page Object skeleton following the exact conventions observed:
17
+ - import statements
18
+ - class declaration and inheritance
19
+ - selector definitions (static and parameterized)
20
+ - action methods
21
+ - verification / assertion methods
22
+ - export statement]
23
+ ```
24
+
25
+ ### Selector Definition Conventions
26
+
27
+ ```
28
+ [Real examples of how selectors are declared in this project:
29
+ static selectors, parameterized/dynamic selectors, and any rules that must be followed]
30
+ ```
31
+
32
+ ### Action Methods
33
+
34
+ ```
35
+ [Real example of an action method, including any required wrappers (e.g., step, allure.step)]
36
+ ```
37
+
38
+ ### Verification Methods
39
+
40
+ ```
41
+ [Real example of a verification method, including any required wrappers]
42
+ ```
43
+
44
+ ## 2. Test Structure & Patterns
45
+
46
+ ### Test File Template
47
+
48
+ ```
49
+ [Full, copy-paste-ready test file skeleton:
50
+ - import statements
51
+ - describe / suite block
52
+ - setup and teardown hooks
53
+ - one complete test case showing the full flow]
54
+ ```
55
+
56
+ ### Hook Patterns
57
+
58
+ ```
59
+ [What belongs in each hook — before, beforeEach, afterEach, after — with real examples]
60
+ ```
61
+
62
+ ### Assertion Patterns
63
+
64
+ ```
65
+ [Primary assertion style used in this project, with real examples]
66
+ [Secondary assertion style, if a second library is used]
67
+ ```
68
+
69
+ ### Step Organization
70
+
71
+ ```
72
+ [How actions and verifications are structured inside a test.
73
+ Include rules about step ownership — which page object drives which steps.]
74
+ ```
75
+
76
+ ### Tag / Annotation Conventions
77
+
78
+ ```
79
+ [How tests are categorized or tagged in this project, with real examples]
80
+ ```
81
+
82
+ ## 3. Test Data Management
83
+
84
+ [Omit this section if the project has no dedicated data files or fixtures.]
85
+
86
+ ### Strategy
87
+
88
+ [Describe the approach used: inline data, fixture files, API-seeded data, factory pattern, or a combination.]
89
+
90
+ ### Data File Template
91
+
92
+ ```
93
+ [Full data file skeleton following the exact conventions in this project,
94
+ including imports, shared constants, and dynamic field generation]
95
+ ```
96
+
97
+ ### Type Definitions / Data Models
98
+
99
+ ```
100
+ [How test data shapes are typed or modelled in this project, e.g., interfaces, dataclasses, POJOs]
101
+ ```
102
+
103
+ ### Dynamic Data Generation
104
+
105
+ ```
106
+ [How unique or random values are generated in this project, with real examples]
107
+ ```
108
+
109
+ ### Cleanup Pattern
110
+
111
+ ```
112
+ [How test data is removed after tests, with a real example]
113
+ ```
114
+
115
+ > **Rule**: [Any mandatory cleanup rule observed in the project — e.g., cleanup must run in a setup hook, not inline in the test body]
116
+
117
+ ## 4. API & Backend Helpers
118
+
119
+ [Omit this section entirely if the project has no programmatic API helpers for test data setup.]
120
+
121
+ ### Overview
122
+
123
+ | Helper Type | Location | When to Use |
124
+ |-------------|----------|-------------|
125
+ | [REST / GraphQL / DB / other] | [path] | [condition] |
126
+
127
+ ### Auth Helper
128
+
129
+ ```
130
+ [How a token or session is obtained for programmatic API calls, with real code]
131
+ ```
132
+
133
+ ### Data Setup Pattern
134
+
135
+ ```
136
+ [How test data is created via API before tests, with real code]
137
+ ```
138
+
139
+ ### Data Teardown Pattern
140
+
141
+ ```
142
+ [How test data is destroyed via API, with real code]
143
+ ```
144
+
145
+ ### Available Helper Modules
146
+
147
+ | Module | Path | Key Operations |
148
+ |--------|------|----------------|
149
+ | [module name] | [path] | [create, find, delete, …] |
150
+
151
+ ### Rules & Gotchas
152
+
153
+ [Any mandatory conventions or known pitfalls for this project's API helpers. Omit if none.]
154
+
155
+ ## 5. Common Workflow Patterns
156
+
157
+ [Omit this section if no recurring multi-step patterns were found.]
158
+
159
+ ```
160
+ [Patterns that appear frequently across tests, with real code from the project.
161
+ Cover what is applicable: login and navigation, search and selection,
162
+ form fill and submission, modal confirmation, async UI feedback (spinners, notifications).]
163
+ ```
164
+
165
+ ## 6. Implementation Checklist
166
+
167
+ ### Planning
168
+ - [ ] [Project-specific step 1 — e.g., assign a test ID]
169
+ - [ ] [Project-specific step 2 — e.g., register feature abbreviation in the test registry]
170
+
171
+ ### Files to Create
172
+
173
+ - [ ] Page Object: `[e.g., e2e/pages/{feature}.page.ts]` _(if the page has no Page Object yet)_
174
+ - [ ] API / backend helper: `[e.g., e2e/helpers/{entity}.helper.ts]` _(if not yet created)_
175
+ - [ ] Type definition / data model: `[e.g., e2e/types/{entity}.types.ts]` _(if not yet defined)_
176
+ - [ ] Test data / fixture file: `[e.g., e2e/data/{feature}.data.ts]`
177
+ - [ ] Test spec: `[e.g., e2e/specs/{feature}/{scenario}.spec.ts]`
178
+
179
+ ### Before Committing
180
+
181
+ - [ ] Run tests locally: `[actual run command]`
182
+ - [ ] Report shows correct steps and assertions
183
+ - [ ] Test data is cleaned up after the run
184
+ - [ ] Code quality checks pass: `[lint command]` / `[type-check command]`
@@ -0,0 +1,181 @@
1
+ ---
2
+ name: web-auto-generate-project-blueprint
3
+ description: "Analyze a web automation test codebase and generate a project blueprint saved to `.documents-design/web-auto-project-blueprint.md`. The blueprint documents what the project IS — framework, language, directory structure, file naming conventions, selector strategy, key configuration, CI/CD pipeline, global setup/fixtures, and third-party integrations. Works with any language (TypeScript, JavaScript, Python, Java, Ruby, C#) and any framework (Playwright, Cypress, WebdriverIO, Selenium, Robot Framework, Puppeteer, TestCafe, Nightwatch). Use this skill whenever someone asks to create a web automation project blueprint, document the test project structure, generate a project overview for automation, scaffold the documentation foundation, or initialize the web-auto-project-blueprint file. Also use when someone wants to onboard to an existing automation project, understand how an automation repo is organized, or needs the structural foundation before generating instructions or best practices. Triggers on requests like 'create project blueprint', 'generate web-auto-project-blueprint', 'document the test project structure', 'analyze this automation project', 'what framework does this project use', or 'create documentation foundation for automation'."
4
+ ---
5
+
6
+ # Web Auto Generate Project Blueprint
7
+
8
+ Analyze the web automation test codebase and generate a project blueprint that captures what the project is — its framework, language, directory structure, file naming conventions, selector strategy, key configuration, CI/CD pipeline, global setup/fixtures, and third-party integrations. This blueprint is the foundational reference document that other skills (like `web-auto-generate-instructions` and `web-auto-generate-best-practices`) rely on — it should be generated first before running those skills.
9
+
10
+ ## Output
11
+
12
+ Save the generated blueprint to:
13
+
14
+ ```
15
+ .documents-design/web-auto-project-blueprint.md
16
+ ```
17
+
18
+ If the file already exists, update it — preserving accurate sections and replacing outdated ones.
19
+
20
+ ## Relationship to Other `.documents-design` Files
21
+
22
+ | File | Role |
23
+ |------|------|
24
+ | `web-auto-project-blueprint.md` (this output) | *What* the project is — structure, tech choices, conventions, infrastructure |
25
+ | `web-auto-best-practices.md` | *How* to write good code — rules, standards, anti-patterns |
26
+ | `web-auto-instructions.md` | *Concrete patterns* — copy-paste templates from the actual codebase |
27
+
28
+ The blueprint is the foundation. The other two files reference it and build on it. When updating the blueprint, avoid duplicating content that belongs in its siblings — structural facts go here, coding rules go in best-practices, concrete code templates go in instructions.
29
+
30
+ ## Workflow
31
+
32
+ ### Step 1: Read Existing Documentation
33
+
34
+ Before analyzing the codebase, check whether sibling documentation already exists. This prevents duplication and ensures the blueprint stays in its lane.
35
+
36
+ Read if present:
37
+ - `.documents-design/web-auto-best-practices.md` — so you know what's already documented as rules (don't repeat it)
38
+ - `.documents-design/web-auto-instructions.md` — so you know what's already documented as patterns (don't repeat it)
39
+ - `README.md` or project-level docs — may contain setup instructions, architecture notes, or CI info worth cross-referencing
40
+
41
+ If none exist, that's fine — you're creating the first document in the set.
42
+
43
+ ### Step 2: Detect Framework and Language
44
+
45
+ Identify the test framework and language by looking for these signals:
46
+
47
+ | Framework | Detection Signals |
48
+ |-----------|------------------|
49
+ | Playwright | `playwright.config.*`, `@playwright/test` import |
50
+ | Cypress | `cypress.config.*`, `cypress/` directory |
51
+ | WebdriverIO | `wdio.conf.*`, `@wdio/` imports |
52
+ | Selenium | `selenium-webdriver` / `selenium` package, `WebDriver` class |
53
+ | Robot Framework | `.robot` / `.resource` files, `Library SeleniumLibrary` |
54
+ | Nightwatch | `nightwatch.conf.*` |
55
+ | Puppeteer | `puppeteer` package, `browser.newPage()` |
56
+ | TestCafe | `testcafe` package, `.testcafe` config |
57
+
58
+ Secondary signals by language: `package.json` (JS/TS) · `requirements.txt` / `pyproject.toml` (Python) · `pom.xml` / `build.gradle` (Java) · `Gemfile` (Ruby) · `*.csproj` (C#)
59
+
60
+ **Multi-framework projects**: Some repos use more than one framework (e.g., Cypress for component tests + Playwright for E2E). If you detect multiple frameworks, document each one with its scope and config file. The template has a "Multiple Frameworks" subsection for this.
61
+
62
+ ### Step 3: Extract Configuration
63
+
64
+ Read the framework configuration file(s). Extract:
65
+ - Base URL and environment-specific URL handling
66
+ - Timeouts (global, per-action, per-navigation)
67
+ - Retries on failure
68
+ - Parallel execution settings (workers, sharding)
69
+ - Browser / device targets and headless flag
70
+ - Test directory paths and spec include/exclude patterns
71
+ - Reporter configuration
72
+ - Screenshot, video, trace capture settings
73
+ - Registered services, plugins, or support files
74
+
75
+ ### Step 4: Detect Global Setup, Fixtures, and Auth
76
+
77
+ Look for project-wide setup mechanisms — these are structural decisions that affect every test:
78
+
79
+ - **Global setup/teardown files** — e.g., Playwright's `globalSetup`, Cypress `support/e2e.js`, WebdriverIO `before`/`after` hooks
80
+ - **Fixtures / test data strategy** — shared fixture files, factory functions, data builder patterns
81
+ - **Authentication state** — how the project handles login: stored auth state files, API-based auth setup, environment-based credentials
82
+ - **Custom test abstractions** — base page classes, custom test wrappers, shared hooks
83
+
84
+ Search for patterns like: `globalSetup`, `global-setup`, `storageState`, `auth.setup`, `support/`, `fixtures/`, `beforeAll`, `BaseTest`, `BasePage`
85
+
86
+ ### Step 5: Map Directory Structure and Naming Conventions
87
+
88
+ Explore the repository to document the test-specific directory tree and all file naming conventions.
89
+
90
+ For each file type, identify:
91
+ - Directory location relative to the project root
92
+ - File naming style (kebab-case, PascalCase, snake_case, suffix pattern)
93
+ - Class or module naming style
94
+ - Whether a test ID or abbreviation scheme exists (e.g., `COM-1`, `TC-001`)
95
+
96
+ **How to explore systematically**: Start from the project root. List the top-level directories, then drill into test-related directories. Use file search patterns like `**/*.spec.*`, `**/*.test.*`, `**/*Page.*`, `**/*page.*` to find test and page object files. Look at 5–8 representative files to confirm patterns, not just 1–2.
97
+
98
+ ### Step 6: Identify Selector Strategy
99
+
100
+ Read 3–5 Page Object files (pick them from different feature areas to get a representative sample). Determine the selector priority order used consistently across the project. Document:
101
+ - Priority order (e.g., `data-testid` → ARIA role → CSS → XPath)
102
+ - Real examples of each selector type used in the project
103
+ - Any framework-specific constraints on how selectors must be declared
104
+
105
+ If the project has no Page Object files (e.g., selectors are inline in tests), document that pattern instead and pull selector examples from test files.
106
+
107
+ ### Step 7: Detect Third-Party Integrations and Dependencies
108
+
109
+ Scan the dependency file (`package.json`, `requirements.txt`, `pom.xml`, etc.) and config files for test-relevant libraries. These are structural facts about the project:
110
+
111
+ | Category | Examples |
112
+ |----------|----------|
113
+ | API mocking | MSW, Nock, WireMock, Polly.js |
114
+ | Visual testing | Percy, Applitools, Playwright visual comparisons |
115
+ | Accessibility | axe-core, pa11y, Lighthouse |
116
+ | Test data | Faker, Chance, factory libraries |
117
+ | Reporting | Allure, ReportPortal, custom reporters |
118
+ | BDD | Cucumber, SpecFlow, behave |
119
+ | Other | Mailosaur, Docker test containers, database seeders |
120
+
121
+ Only document libraries actually present in the project.
122
+
123
+ ### Step 8: Detect CI/CD Pipeline
124
+
125
+ Look for CI/CD configuration files:
126
+ - `.github/workflows/*.yml` (GitHub Actions)
127
+ - `.gitlab-ci.yml` (GitLab CI)
128
+ - `Jenkinsfile` (Jenkins)
129
+ - `.circleci/config.yml` (CircleCI)
130
+ - `azure-pipelines.yml` (Azure DevOps)
131
+ - `bitbucket-pipelines.yml` (Bitbucket)
132
+
133
+ If found, document:
134
+ - Which CI platform is used
135
+ - Which events trigger test runs (push, PR, schedule)
136
+ - Test-related pipeline steps (install, run tests, upload reports)
137
+ - Environment variables or secrets referenced
138
+ - Any Docker images or service containers used
139
+
140
+ If no CI/CD files exist, note that — it's a useful structural fact.
141
+
142
+ ### Step 9: Generate the Blueprint
143
+
144
+ Create `.documents-design/web-auto-project-blueprint.md` using the template at [templates/web-auto-project-blueprint.template.md](templates/web-auto-project-blueprint.template.md).
145
+
146
+ **Rules:**
147
+ 1. **Facts only** — every statement must be backed by evidence from the codebase or config files
148
+ 2. **No code patterns** — copy-paste templates, action method examples, and test data patterns belong in `web-auto-instructions.md`, not here
149
+ 3. **No rules or anti-patterns** — coding standards and best practices belong in `web-auto-best-practices.md`, not here
150
+ 4. **Real values** — use actual paths, actual command names, and actual configuration values — no placeholders left unfilled
151
+ 5. **Omit empty sections** — if the project doesn't have CI/CD, or no third-party integrations, remove those sections rather than leaving placeholder text
152
+
153
+ ### Step 10: Verify and Present
154
+
155
+ 1. Confirm the file was saved to `.documents-design/web-auto-project-blueprint.md`
156
+ 2. Present a summary:
157
+ - Framework(s) and language detected
158
+ - Number of config files and Page Objects read
159
+ - Directory structure sections documented
160
+ - CI/CD pipeline detected (or not)
161
+ - Third-party integrations found
162
+ 3. Ask: "Does this blueprint accurately describe the project structure and tech choices?"
163
+
164
+ ## Edge Cases
165
+
166
+ - **Greenfield project (no test files yet)**: If the repo has a config file but no tests, generate a blueprint with what exists — tech stack, config, directory structure — and note which sections are empty because no tests exist yet.
167
+ - **Monorepo with multiple test projects**: Look for multiple config files or distinct test directories. Generate one blueprint that documents each sub-project under a clearly labeled subsection, or generate separate blueprints if the user specifies which project.
168
+ - **Mixed frameworks**: Some projects use different frameworks for different purposes (e.g., Cypress component + Playwright E2E, or Jest unit + Playwright E2E). Document each framework's scope clearly.
169
+ - **No Page Object pattern**: If tests use inline selectors or a different abstraction (screen objects, component helpers), adapt the Selector Strategy section to document what actually exists.
170
+ - **Non-standard project structure**: If the project doesn't follow common conventions (e.g., tests scattered across feature directories instead of a central `tests/` folder), document the actual structure and note the pattern.
171
+
172
+ ## Important Rules
173
+
174
+ - **Read before writing** — always analyze real files before generating the blueprint
175
+ - **Structure over patterns** — this file describes the project's anatomy, not how to use it
176
+ - **Keep it current** — if re-running on an existing project, check each section for outdated values (e.g., changed directory names, updated framework versions)
177
+ - **Stay in your lane** — resist the urge to add coding rules or code templates; those belong in sibling files
178
+
179
+ ## Additional Resources
180
+
181
+ - Output template: [templates/web-auto-project-blueprint.template.md](templates/web-auto-project-blueprint.template.md)
@@ -0,0 +1,57 @@
1
+ {
2
+ "skill_name": "web-auto-generate-project-blueprint",
3
+ "evals": [
4
+ {
5
+ "id": 1,
6
+ "prompt": "I have a mature Playwright TypeScript project with about 25 test files, page objects, API helpers, a global setup for auth, Allure reporting, and a GitHub Actions CI pipeline. The project also has .documents-design/web-auto-best-practices.md and web-auto-instructions.md already. Can you generate the project blueprint?",
7
+ "expected_output": "A .documents-design/web-auto-project-blueprint.md file that: (1) correctly identifies Playwright + TypeScript as the framework/language, (2) extracts real config values from playwright.config.ts, (3) documents the global setup and auth strategy (storageState or similar), (4) documents the full directory structure and naming conventions based on real files, (5) documents selector strategy from multiple page objects across different feature areas, (6) detects and documents third-party integrations (Allure, etc.), (7) detects and documents the GitHub Actions CI pipeline with trigger events and test steps, (8) does NOT duplicate content from existing best-practices or instructions files, (9) has no unfilled placeholder text — all values are real, (10) omits no applicable section that has evidence in the codebase",
8
+ "files": [],
9
+ "expectations": [
10
+ "Output file exists at .documents-design/web-auto-project-blueprint.md",
11
+ "Tech Stack section identifies Playwright and TypeScript with versions",
12
+ "Key Configuration section has real values extracted from playwright.config.ts",
13
+ "Global Setup section documents auth strategy and global setup file",
14
+ "Directory Structure section shows the real directory tree",
15
+ "Selector Strategy section has real selector examples from multiple page objects",
16
+ "Third-Party Integrations section lists Allure and any other detected libraries",
17
+ "CI/CD Pipeline section documents GitHub Actions with trigger events",
18
+ "No placeholder brackets remain in the output (no [value] or [path] text)",
19
+ "Does not contain coding rules or code templates (those belong in sibling files)",
20
+ "Existing best-practices and instructions files were read first"
21
+ ]
22
+ },
23
+ {
24
+ "id": 2,
25
+ "prompt": "We just initialized a new Cypress project — there's a cypress.config.ts and the default support files, but no test files or page objects have been written yet. No .documents-design files exist. Can you create a project blueprint for it?",
26
+ "expected_output": "A .documents-design/web-auto-project-blueprint.md file that: (1) correctly identifies Cypress + the language from config, (2) extracts configuration from cypress.config.ts, (3) documents the directory structure as it currently exists, (4) gracefully handles missing tests/page objects — notes that sections are empty because no tests exist yet rather than leaving placeholders, (5) omits Selector Strategy or notes it can't be determined yet, (6) still documents what IS available (tech stack, config, directory structure, commands)",
27
+ "files": [],
28
+ "expectations": [
29
+ "Output file exists at .documents-design/web-auto-project-blueprint.md",
30
+ "Tech Stack section identifies Cypress",
31
+ "Key Configuration section has values from cypress.config.ts",
32
+ "Directory Structure reflects the actual (sparse) project structure",
33
+ "Selector Strategy section is either omitted or notes no tests exist to analyze",
34
+ "File naming conventions section acknowledges no test files exist yet",
35
+ "Summary notes this is a greenfield project with limited content",
36
+ "No placeholder brackets remain in the output"
37
+ ]
38
+ },
39
+ {
40
+ "id": 3,
41
+ "prompt": "Our project uses both Cypress for component testing and Playwright for E2E tests. Each has its own config file and test directory. There's also a shared fixtures directory and a Jenkins pipeline. The existing blueprint is outdated — we recently added the Playwright E2E layer. Can you update it?",
42
+ "expected_output": "An updated .documents-design/web-auto-project-blueprint.md that: (1) documents both frameworks with their distinct scopes (component vs E2E), (2) has separate configuration sections or subsections for each framework, (3) documents the shared fixtures directory, (4) detects the Jenkins pipeline from Jenkinsfile, (5) updates outdated sections while preserving accurate ones, (6) uses the Multiple Frameworks subsection in Tech Stack, (7) presents a summary noting what changed from the previous version",
43
+ "files": [],
44
+ "expectations": [
45
+ "Output file exists at .documents-design/web-auto-project-blueprint.md",
46
+ "Tech Stack section lists both Cypress and Playwright with their scopes",
47
+ "Multiple Frameworks subsection is present and populated",
48
+ "Configuration documented for both cypress.config and playwright.config",
49
+ "Shared fixtures directory is documented in Global Setup section",
50
+ "CI/CD section documents Jenkins pipeline from Jenkinsfile",
51
+ "Directory Structure reflects both test directories",
52
+ "Summary notes what was updated vs preserved from previous blueprint",
53
+ "No placeholder brackets remain in the output"
54
+ ]
55
+ }
56
+ ]
57
+ }