@forwardimpact/pathway 0.4.0 → 0.6.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 (245) hide show
  1. package/bin/{pathway.js → fit-pathway.js} +65 -153
  2. package/package.json +18 -41
  3. package/{app → src}/commands/agent.js +5 -2
  4. package/{app → src}/commands/behaviour.js +1 -1
  5. package/{app → src}/commands/command-factory.js +2 -2
  6. package/{app → src}/commands/discipline.js +1 -1
  7. package/{app → src}/commands/driver.js +2 -2
  8. package/{app → src}/commands/grade.js +2 -2
  9. package/{app → src}/commands/job.js +3 -3
  10. package/{app → src}/commands/serve.js +26 -4
  11. package/{app → src}/commands/site.js +24 -4
  12. package/{app → src}/commands/skill.js +3 -3
  13. package/{app → src}/commands/stage.js +1 -1
  14. package/{app → src}/commands/track.js +2 -2
  15. package/{app → src}/components/card.js +11 -1
  16. package/{app → src}/components/checklist.js +1 -1
  17. package/src/components/code-display.js +153 -0
  18. package/{app → src}/components/comparison-radar.js +1 -1
  19. package/{app → src}/components/detail.js +1 -1
  20. package/src/components/markdown-textarea.js +153 -0
  21. package/{app → src}/components/skill-matrix.js +1 -1
  22. package/{app → src}/css/bundles/app.css +14 -0
  23. package/{app → src}/css/components/badges.css +15 -8
  24. package/{app → src}/css/components/forms.css +23 -13
  25. package/{app → src}/css/components/surfaces.css +49 -3
  26. package/{app → src}/css/components/typography.css +1 -2
  27. package/{app → src}/css/pages/agent-builder.css +11 -102
  28. package/{app → src}/css/pages/detail.css +11 -1
  29. package/{app → src}/css/tokens.css +3 -0
  30. package/{app → src}/formatters/agent/dom.js +26 -71
  31. package/{app → src}/formatters/agent/profile.js +11 -6
  32. package/{app → src}/formatters/behaviour/dom.js +1 -1
  33. package/{app → src}/formatters/discipline/dom.js +1 -1
  34. package/{app → src}/formatters/driver/dom.js +1 -1
  35. package/{app → src}/formatters/grade/dom.js +7 -7
  36. package/{app → src}/formatters/grade/markdown.js +1 -1
  37. package/{app → src}/formatters/interview/dom.js +1 -1
  38. package/{app → src}/formatters/interview/markdown.js +1 -1
  39. package/{app → src}/formatters/interview/shared.js +3 -3
  40. package/{app → src}/formatters/job/description.js +1 -1
  41. package/{app → src}/formatters/job/dom.js +3 -3
  42. package/{app → src}/formatters/job/markdown.js +1 -1
  43. package/{app → src}/formatters/json-ld.js +1 -1
  44. package/{app → src}/formatters/progress/shared.js +3 -3
  45. package/{app → src}/formatters/skill/dom.js +69 -57
  46. package/{app → src}/formatters/skill/markdown.js +1 -1
  47. package/{app → src}/formatters/skill/shared.js +5 -3
  48. package/{app → src}/formatters/stage/microdata.js +2 -2
  49. package/{app → src}/formatters/stage/shared.js +3 -3
  50. package/{app → src}/formatters/tool/shared.js +6 -0
  51. package/{app → src}/formatters/track/dom.js +1 -1
  52. package/{app → src}/formatters/track/markdown.js +1 -1
  53. package/{app → src}/formatters/track/shared.js +4 -1
  54. package/{app → src}/handout-main.js +16 -12
  55. package/src/handout.html +43 -0
  56. package/{app → src}/index.html +23 -2
  57. package/{app → src}/lib/card-mappers.js +28 -1
  58. package/{app → src}/lib/job-cache.js +1 -1
  59. package/{app → src}/lib/render.js +1 -1
  60. package/{app → src}/pages/agent-builder.js +120 -76
  61. package/{app → src}/pages/assessment-results.js +1 -1
  62. package/{app → src}/pages/interview.js +1 -1
  63. package/{app → src}/pages/job-builder.js +1 -1
  64. package/{app → src}/pages/job.js +1 -1
  65. package/{app → src}/pages/landing.js +5 -2
  66. package/{app → src}/pages/self-assessment.js +1 -1
  67. package/{app → src}/pages/skill.js +1 -1
  68. package/{app → src}/pages/stage.js +5 -5
  69. package/{app → src}/pages/tool.js +1 -1
  70. package/{app → src}/slide-main.js +2 -2
  71. package/{app → src}/slides/chapter.js +8 -8
  72. package/{app → src}/slides/index.js +3 -3
  73. package/{app → src}/slides/job.js +1 -1
  74. package/{app → src}/slides/overview.js +9 -9
  75. package/{app → src}/slides/skill.js +1 -0
  76. package/{app → src}/slides.html +16 -1
  77. package/templates/agent.template.md +44 -13
  78. package/templates/job.template.md +14 -20
  79. package/templates/skill.template.md +20 -23
  80. package/LICENSE +0 -201
  81. package/README.md +0 -104
  82. package/app/components/markdown-textarea.js +0 -132
  83. package/app/handout.html +0 -28
  84. package/app/model/agent.js +0 -738
  85. package/app/model/checklist.js +0 -103
  86. package/app/model/derivation.js +0 -766
  87. package/app/model/index-generator.js +0 -65
  88. package/app/model/interview.js +0 -539
  89. package/app/model/job.js +0 -228
  90. package/app/model/levels.js +0 -601
  91. package/app/model/loader.js +0 -599
  92. package/app/model/matching.js +0 -888
  93. package/app/model/modifiers.js +0 -158
  94. package/app/model/profile.js +0 -259
  95. package/app/model/progression.js +0 -507
  96. package/app/model/schema-validation.js +0 -438
  97. package/app/model/validation.js +0 -2130
  98. package/examples/agents/.claude/skills/architecture-design/SKILL.md +0 -130
  99. package/examples/agents/.claude/skills/cloud-platforms/SKILL.md +0 -131
  100. package/examples/agents/.claude/skills/code-quality-review/SKILL.md +0 -108
  101. package/examples/agents/.claude/skills/devops-cicd/SKILL.md +0 -142
  102. package/examples/agents/.claude/skills/full-stack-development/SKILL.md +0 -134
  103. package/examples/agents/.claude/skills/sre-practices/SKILL.md +0 -163
  104. package/examples/agents/.claude/skills/technical-debt-management/SKILL.md +0 -164
  105. package/examples/agents/.github/agents/se-platform-code.agent.md +0 -132
  106. package/examples/agents/.github/agents/se-platform-plan.agent.md +0 -131
  107. package/examples/agents/.github/agents/se-platform-review.agent.md +0 -136
  108. package/examples/agents/.vscode/settings.json +0 -8
  109. package/examples/behaviours/_index.yaml +0 -8
  110. package/examples/behaviours/outcome_ownership.yaml +0 -43
  111. package/examples/behaviours/polymathic_knowledge.yaml +0 -41
  112. package/examples/behaviours/precise_communication.yaml +0 -39
  113. package/examples/behaviours/relentless_curiosity.yaml +0 -37
  114. package/examples/behaviours/systems_thinking.yaml +0 -40
  115. package/examples/capabilities/_index.yaml +0 -8
  116. package/examples/capabilities/business.yaml +0 -189
  117. package/examples/capabilities/delivery.yaml +0 -303
  118. package/examples/capabilities/people.yaml +0 -68
  119. package/examples/capabilities/reliability.yaml +0 -412
  120. package/examples/capabilities/scale.yaml +0 -378
  121. package/examples/copilot-setup-steps.yaml +0 -25
  122. package/examples/devcontainer.yaml +0 -21
  123. package/examples/disciplines/_index.yaml +0 -6
  124. package/examples/disciplines/data_engineering.yaml +0 -78
  125. package/examples/disciplines/engineering_management.yaml +0 -63
  126. package/examples/disciplines/software_engineering.yaml +0 -78
  127. package/examples/drivers.yaml +0 -202
  128. package/examples/framework.yaml +0 -69
  129. package/examples/grades.yaml +0 -115
  130. package/examples/questions/behaviours/outcome_ownership.yaml +0 -51
  131. package/examples/questions/behaviours/polymathic_knowledge.yaml +0 -47
  132. package/examples/questions/behaviours/precise_communication.yaml +0 -54
  133. package/examples/questions/behaviours/relentless_curiosity.yaml +0 -50
  134. package/examples/questions/behaviours/systems_thinking.yaml +0 -52
  135. package/examples/questions/skills/architecture_design.yaml +0 -53
  136. package/examples/questions/skills/cloud_platforms.yaml +0 -47
  137. package/examples/questions/skills/code_quality.yaml +0 -48
  138. package/examples/questions/skills/data_modeling.yaml +0 -45
  139. package/examples/questions/skills/devops.yaml +0 -46
  140. package/examples/questions/skills/full_stack_development.yaml +0 -47
  141. package/examples/questions/skills/sre_practices.yaml +0 -43
  142. package/examples/questions/skills/stakeholder_management.yaml +0 -48
  143. package/examples/questions/skills/team_collaboration.yaml +0 -42
  144. package/examples/questions/skills/technical_writing.yaml +0 -42
  145. package/examples/self-assessments.yaml +0 -64
  146. package/examples/stages.yaml +0 -131
  147. package/examples/tracks/_index.yaml +0 -5
  148. package/examples/tracks/platform.yaml +0 -49
  149. package/examples/tracks/sre.yaml +0 -48
  150. package/examples/vscode-settings.yaml +0 -17
  151. /package/{app → src}/commands/index.js +0 -0
  152. /package/{app → src}/commands/init.js +0 -0
  153. /package/{app → src}/commands/interview.js +0 -0
  154. /package/{app → src}/commands/progress.js +0 -0
  155. /package/{app → src}/commands/questions.js +0 -0
  156. /package/{app → src}/commands/tool.js +0 -0
  157. /package/{app → src}/components/action-buttons.js +0 -0
  158. /package/{app → src}/components/behaviour-profile.js +0 -0
  159. /package/{app → src}/components/builder.js +0 -0
  160. /package/{app → src}/components/error-page.js +0 -0
  161. /package/{app → src}/components/grid.js +0 -0
  162. /package/{app → src}/components/list.js +0 -0
  163. /package/{app → src}/components/modifier-table.js +0 -0
  164. /package/{app → src}/components/nav.js +0 -0
  165. /package/{app → src}/components/progression-table.js +0 -0
  166. /package/{app → src}/components/radar-chart.js +0 -0
  167. /package/{app → src}/css/base.css +0 -0
  168. /package/{app → src}/css/bundles/handout.css +0 -0
  169. /package/{app → src}/css/bundles/slides.css +0 -0
  170. /package/{app → src}/css/components/buttons.css +0 -0
  171. /package/{app → src}/css/components/layout.css +0 -0
  172. /package/{app → src}/css/components/nav.css +0 -0
  173. /package/{app → src}/css/components/progress.css +0 -0
  174. /package/{app → src}/css/components/states.css +0 -0
  175. /package/{app → src}/css/components/tables.css +0 -0
  176. /package/{app → src}/css/components/utilities.css +0 -0
  177. /package/{app → src}/css/pages/assessment-results.css +0 -0
  178. /package/{app → src}/css/pages/interview-builder.css +0 -0
  179. /package/{app → src}/css/pages/job-builder.css +0 -0
  180. /package/{app → src}/css/pages/landing.css +0 -0
  181. /package/{app → src}/css/pages/lifecycle.css +0 -0
  182. /package/{app → src}/css/pages/progress-builder.css +0 -0
  183. /package/{app → src}/css/pages/self-assessment.css +0 -0
  184. /package/{app → src}/css/reset.css +0 -0
  185. /package/{app → src}/css/views/handout.css +0 -0
  186. /package/{app → src}/css/views/print.css +0 -0
  187. /package/{app → src}/css/views/slide-animations.css +0 -0
  188. /package/{app → src}/css/views/slide-base.css +0 -0
  189. /package/{app → src}/css/views/slide-sections.css +0 -0
  190. /package/{app → src}/css/views/slide-tables.css +0 -0
  191. /package/{app → src}/formatters/agent/skill.js +0 -0
  192. /package/{app → src}/formatters/behaviour/markdown.js +0 -0
  193. /package/{app → src}/formatters/behaviour/microdata.js +0 -0
  194. /package/{app → src}/formatters/behaviour/shared.js +0 -0
  195. /package/{app → src}/formatters/discipline/markdown.js +0 -0
  196. /package/{app → src}/formatters/discipline/microdata.js +0 -0
  197. /package/{app → src}/formatters/discipline/shared.js +0 -0
  198. /package/{app → src}/formatters/driver/microdata.js +0 -0
  199. /package/{app → src}/formatters/driver/shared.js +0 -0
  200. /package/{app → src}/formatters/grade/microdata.js +0 -0
  201. /package/{app → src}/formatters/grade/shared.js +0 -0
  202. /package/{app → src}/formatters/index.js +0 -0
  203. /package/{app → src}/formatters/microdata-shared.js +0 -0
  204. /package/{app → src}/formatters/progress/dom.js +0 -0
  205. /package/{app → src}/formatters/progress/markdown.js +0 -0
  206. /package/{app → src}/formatters/questions/json.js +0 -0
  207. /package/{app → src}/formatters/questions/markdown.js +0 -0
  208. /package/{app → src}/formatters/questions/shared.js +0 -0
  209. /package/{app → src}/formatters/questions/yaml.js +0 -0
  210. /package/{app → src}/formatters/shared.js +0 -0
  211. /package/{app → src}/formatters/skill/microdata.js +0 -0
  212. /package/{app → src}/formatters/stage/dom.js +0 -0
  213. /package/{app → src}/formatters/stage/index.js +0 -0
  214. /package/{app → src}/formatters/track/microdata.js +0 -0
  215. /package/{app → src}/lib/cli-output.js +0 -0
  216. /package/{app → src}/lib/error-boundary.js +0 -0
  217. /package/{app → src}/lib/errors.js +0 -0
  218. /package/{app → src}/lib/form-controls.js +0 -0
  219. /package/{app → src}/lib/markdown.js +0 -0
  220. /package/{app → src}/lib/radar.js +0 -0
  221. /package/{app → src}/lib/reactive.js +0 -0
  222. /package/{app → src}/lib/router-core.js +0 -0
  223. /package/{app → src}/lib/router-pages.js +0 -0
  224. /package/{app → src}/lib/router-slides.js +0 -0
  225. /package/{app → src}/lib/state.js +0 -0
  226. /package/{app → src}/lib/template-loader.js +0 -0
  227. /package/{app → src}/lib/utils.js +0 -0
  228. /package/{app → src}/lib/yaml-loader.js +0 -0
  229. /package/{app → src}/main.js +0 -0
  230. /package/{app → src}/pages/behaviour.js +0 -0
  231. /package/{app → src}/pages/discipline.js +0 -0
  232. /package/{app → src}/pages/driver.js +0 -0
  233. /package/{app → src}/pages/grade.js +0 -0
  234. /package/{app → src}/pages/interview-builder.js +0 -0
  235. /package/{app → src}/pages/progress-builder.js +0 -0
  236. /package/{app → src}/pages/progress.js +0 -0
  237. /package/{app → src}/pages/track.js +0 -0
  238. /package/{app → src}/slides/behaviour.js +0 -0
  239. /package/{app → src}/slides/discipline.js +0 -0
  240. /package/{app → src}/slides/driver.js +0 -0
  241. /package/{app → src}/slides/grade.js +0 -0
  242. /package/{app → src}/slides/interview.js +0 -0
  243. /package/{app → src}/slides/progress.js +0 -0
  244. /package/{app → src}/slides/track.js +0 -0
  245. /package/{app → src}/types.js +0 -0
@@ -1,130 +0,0 @@
1
- ---
2
- name: architecture-design
3
- description: |
4
- Guide for designing software systems and making architectural decisions.
5
- Use when asked to design a system, evaluate architecture options, or
6
- make structural decisions about code organization.
7
- ---
8
-
9
- # Architecture & Design
10
-
11
- ## Stage Guidance
12
-
13
- ### Plan Stage
14
-
15
- **Focus:** Understand requirements and identify key architectural decisions.
16
- Document trade-offs and design rationale.
17
-
18
- **Activities:**
19
-
20
- - Clarify functional and non-functional requirements
21
- - Identify constraints (existing systems, team skills, timeline)
22
- - Document key decisions and trade-offs
23
- - Design for anticipated change
24
-
25
- **Ready for Code when:**
26
-
27
- - [ ] Requirements are clearly understood
28
- - [ ] Key decisions are documented with rationale
29
- - [ ] Trade-offs are explicit
30
- - [ ] Failure modes are considered
31
-
32
- ### Code Stage
33
-
34
- **Focus:** Implement architecture with clear boundaries and interfaces. Ensure
35
- components can evolve independently.
36
-
37
- **Activities:**
38
-
39
- - Define clear interfaces between components
40
- - Implement with appropriate patterns
41
- - Document design decisions in code
42
- - Test architectural boundaries
43
-
44
- **Ready for Review when:**
45
-
46
- - [ ] Dependencies are minimal and explicit
47
- - [ ] Interfaces are well-defined
48
- - [ ] Design patterns are documented
49
- - [ ] Architecture tests pass
50
-
51
- ### Review Stage
52
-
53
- **Focus:** Validate architecture meets requirements and is maintainable. Ensure
54
- scalability and security are addressed.
55
-
56
- **Activities:**
57
-
58
- - Verify architecture meets requirements
59
- - Review for scalability concerns
60
- - Check security implications
61
- - Validate documentation completeness
62
-
63
- **Ready for Complete when:**
64
-
65
- - [ ] Scalability requirements are addressed
66
- - [ ] Security implications are reviewed
67
- - [ ] Architecture is documented
68
- - [ ] Design is maintainable
69
-
70
- ## Reference
71
-
72
- ## Design Process
73
-
74
- ### 1. Understand Requirements
75
-
76
- Before designing, clarify:
77
-
78
- - What problem are we solving?
79
- - What are the non-functional requirements (scale, latency, availability)?
80
- - What are the constraints (existing systems, team skills, timeline)?
81
- - What will change over time?
82
-
83
- ### 2. Identify Key Decisions
84
-
85
- Architecture is the set of decisions that are hard to change:
86
-
87
- - Data storage and schema design
88
- - Service boundaries and communication patterns
89
- - Synchronous vs asynchronous processing
90
- - Stateful vs stateless components
91
-
92
- ### 3. Evaluate Trade-offs
93
-
94
- Every architectural choice has trade-offs:
95
-
96
- - Consistency vs availability
97
- - Simplicity vs flexibility
98
- - Performance vs maintainability
99
- - Build vs buy
100
-
101
- Document trade-offs explicitly.
102
-
103
- ### 4. Design for Change
104
-
105
- Good architecture accommodates change:
106
-
107
- - Separate what changes from what stays the same
108
- - Define clear interfaces between components
109
- - Prefer composition over inheritance
110
- - Make dependencies explicit
111
-
112
- ## Common Patterns
113
-
114
- ### Service Architecture
115
-
116
- - Microservices: Independent deployment, clear boundaries
117
- - Monolith: Simpler deployment, easier refactoring
118
- - Modular monolith: Boundaries within single deployment
119
-
120
- ### Data Patterns
121
-
122
- - Event sourcing: Full audit trail, complex queries
123
- - CQRS: Separate read and write models
124
- - Repository pattern: Abstract data access
125
-
126
- ### Communication Patterns
127
-
128
- - REST: Synchronous, request-response
129
- - Event-driven: Asynchronous, loose coupling
130
- - gRPC: Efficient, strongly typed
@@ -1,131 +0,0 @@
1
- ---
2
- name: cloud-platforms
3
- description: |
4
- Guide for working with cloud infrastructure and services. Use when
5
- deploying to cloud, selecting cloud services, configuring infrastructure,
6
- or solving cloud-specific challenges.
7
- ---
8
-
9
- # Cloud Platforms
10
-
11
- ## Stage Guidance
12
-
13
- ### Plan Stage
14
-
15
- **Focus:** Select appropriate cloud services and design for availability,
16
- security, and cost efficiency.
17
-
18
- **Activities:**
19
-
20
- - Identify service requirements
21
- - Select appropriate cloud services
22
- - Plan for high availability
23
- - Consider security and cost
24
-
25
- **Ready for Code when:**
26
-
27
- - [ ] Service selection matches requirements
28
- - [ ] Availability approach planned
29
- - [ ] Security model defined
30
- - [ ] Cost controls considered
31
-
32
- ### Code Stage
33
-
34
- **Focus:** Implement cloud infrastructure with security best practices. Use
35
- infrastructure as code for reproducibility.
36
-
37
- **Activities:**
38
-
39
- - Define infrastructure as code
40
- - Configure security groups and IAM
41
- - Set up monitoring and alerting
42
- - Implement deployment automation
43
-
44
- **Ready for Review when:**
45
-
46
- - [ ] Multi-AZ deployment for availability
47
- - [ ] Security groups properly configured
48
- - [ ] IAM follows least privilege
49
- - [ ] Data encrypted at rest and in transit
50
- - [ ] Infrastructure defined as code
51
-
52
- ### Review Stage
53
-
54
- **Focus:** Validate security, availability, and operational readiness. Ensure
55
- cost controls are in place.
56
-
57
- **Activities:**
58
-
59
- - Verify security configuration
60
- - Test availability and failover
61
- - Review cost projections
62
- - Validate monitoring coverage
63
-
64
- **Ready for Complete when:**
65
-
66
- - [ ] Security review completed
67
- - [ ] Monitoring and alerting in place
68
- - [ ] Cost controls established
69
- - [ ] Operational runbooks exist
70
-
71
- ## Reference
72
-
73
- ## Service Categories
74
-
75
- ### Compute
76
-
77
- - **VMs/EC2**: Full control, any workload
78
- - **Containers/ECS/GKE**: Portable, scalable applications
79
- - **Serverless/Lambda**: Event-driven, pay-per-use
80
- - **Kubernetes**: Container orchestration at scale
81
-
82
- ### Storage
83
-
84
- - **Object Storage (S3/GCS)**: Unstructured data, backups, static assets
85
- - **Block Storage (EBS)**: VM disks, databases
86
- - **File Storage (EFS)**: Shared file systems
87
- - **Archive (Glacier)**: Long-term, infrequent access
88
-
89
- ### Databases
90
-
91
- - **Managed SQL (RDS/Cloud SQL)**: Relational, ACID transactions
92
- - **NoSQL (DynamoDB/Firestore)**: Flexible schema, high scale
93
- - **Cache (ElastiCache/Memorystore)**: Low-latency data access
94
- - **Data Warehouse (Redshift/BigQuery)**: Analytics at scale
95
-
96
- ### Messaging
97
-
98
- - **Queues (SQS/Cloud Tasks)**: Decoupled processing
99
- - **Pub/Sub (SNS/Cloud Pub/Sub)**: Event distribution
100
- - **Streaming (Kinesis/Dataflow)**: Real-time data processing
101
-
102
- ## Cloud-Native Design
103
-
104
- ### Principles
105
-
106
- - Design for failure (everything fails eventually)
107
- - Use managed services when possible
108
- - Automate everything (infrastructure as code)
109
- - Monitor and alert on all services
110
-
111
- ### High Availability
112
-
113
- - Deploy across multiple availability zones
114
- - Use load balancers for traffic distribution
115
- - Implement health checks and auto-healing
116
- - Design for graceful degradation
117
-
118
- ### Security
119
-
120
- - Principle of least privilege for IAM
121
- - Encrypt data at rest and in transit
122
- - Use security groups and network policies
123
- - Rotate credentials regularly
124
-
125
- ## Cost Optimization
126
-
127
- - Right-size instances based on actual usage
128
- - Use reserved instances for predictable workloads
129
- - Leverage spot/preemptible instances for fault-tolerant work
130
- - Set up billing alerts and budgets
131
- - Delete unused resources
@@ -1,108 +0,0 @@
1
- ---
2
- name: code-quality-review
3
- description: |
4
- Guide for reviewing code quality, identifying issues, and suggesting
5
- improvements. Use when asked to review code, check for best practices,
6
- or conduct code reviews.
7
- ---
8
-
9
- # Code Quality & Review
10
-
11
- ## Stage Guidance
12
-
13
- ### Plan Stage
14
-
15
- **Focus:** Understand code review scope and establish review criteria. Consider
16
- what quality standards apply.
17
-
18
- **Activities:**
19
-
20
- - Identify code review scope
21
- - Understand applicable standards
22
- - Plan review approach
23
- - Consider risk level
24
-
25
- **Ready for Code when:**
26
-
27
- - [ ] Review scope is clear
28
- - [ ] Standards are understood
29
- - [ ] Review approach is planned
30
- - [ ] Risk level is assessed
31
-
32
- ### Code Stage
33
-
34
- **Focus:** Write clean, maintainable, tested code. Follow project conventions
35
- and ensure adequate coverage.
36
-
37
- **Activities:**
38
-
39
- - Write readable, well-structured code
40
- - Add appropriate tests
41
- - Follow project conventions
42
- - Document non-obvious logic
43
-
44
- **Ready for Review when:**
45
-
46
- - [ ] Code compiles and passes all tests
47
- - [ ] Changes are covered by tests
48
- - [ ] Code follows project conventions
49
- - [ ] No unnecessary complexity
50
-
51
- ### Review Stage
52
-
53
- **Focus:** Verify correctness, maintainability, and adherence to standards.
54
- Ensure no code is shipped that isn't understood.
55
-
56
- **Activities:**
57
-
58
- - Verify code does what it claims
59
- - Check test coverage
60
- - Review for maintainability
61
- - Confirm style compliance
62
-
63
- **Ready for Complete when:**
64
-
65
- - [ ] No obvious security vulnerabilities
66
- - [ ] Error handling is appropriate
67
- - [ ] Documentation updated if needed
68
- - [ ] No code you don't fully understand
69
-
70
- ## Reference
71
-
72
- ## Review Process
73
-
74
- ### 1. Correctness First
75
-
76
- Before anything else, verify the code does what it claims:
77
-
78
- - Does it implement the intended behavior?
79
- - Are there logic errors or off-by-one bugs?
80
- - Does it handle all specified requirements?
81
- - Are error conditions handled appropriately?
82
-
83
- ### 2. Test Coverage
84
-
85
- Check that changes are properly tested:
86
-
87
- - Unit tests for new functionality
88
- - Edge cases and error conditions
89
- - Integration tests where appropriate
90
- - Tests are readable and maintainable
91
-
92
- ### 3. Maintainability
93
-
94
- Evaluate long-term code health:
95
-
96
- - Clear naming (variables, functions, classes)
97
- - Appropriate abstraction levels
98
- - No unnecessary duplication (DRY)
99
- - Single responsibility principle applied
100
-
101
- ### 4. Code Style
102
-
103
- Verify consistency with project standards:
104
-
105
- - Follows project coding conventions
106
- - Consistent formatting and indentation
107
- - Appropriate comments for non-obvious logic
108
- - Documentation updated if needed
@@ -1,142 +0,0 @@
1
- ---
2
- name: devops-cicd
3
- description: |
4
- Guide for building CI/CD pipelines, managing infrastructure as code, and
5
- implementing deployment best practices. Use when setting up pipelines,
6
- containerizing applications, or configuring infrastructure.
7
- ---
8
-
9
- # DevOps & CI/CD
10
-
11
- ## Stage Guidance
12
-
13
- ### Plan Stage
14
-
15
- **Focus:** Plan CI/CD pipeline architecture and infrastructure requirements.
16
- Consider deployment strategies and monitoring needs.
17
-
18
- **Activities:**
19
-
20
- - Define pipeline stages (build, test, deploy)
21
- - Identify infrastructure requirements
22
- - Plan deployment strategy (rolling, blue-green, canary)
23
- - Consider monitoring and alerting needs
24
- - Plan secret management approach
25
-
26
- **Ready for Code when:**
27
-
28
- - [ ] Pipeline architecture is documented
29
- - [ ] Deployment strategy is chosen and justified
30
- - [ ] Infrastructure requirements are identified
31
- - [ ] Monitoring approach is defined
32
-
33
- ### Code Stage
34
-
35
- **Focus:** Implement CI/CD pipelines and infrastructure as code. Follow best
36
- practices for containerization and deployment automation.
37
-
38
- **Activities:**
39
-
40
- - Configure CI/CD pipeline stages
41
- - Implement infrastructure as code (Terraform, CloudFormation)
42
- - Create Dockerfiles with security best practices
43
- - Set up monitoring and alerting
44
- - Configure secret management
45
- - Implement deployment automation
46
-
47
- **Ready for Review when:**
48
-
49
- - [ ] Pipeline runs on every commit
50
- - [ ] Tests run before deployment
51
- - [ ] Deployments are automated
52
- - [ ] Infrastructure is version controlled
53
- - [ ] Secrets are managed securely
54
- - [ ] Monitoring is in place
55
-
56
- ### Review Stage
57
-
58
- **Focus:** Verify pipeline reliability, security, and operational readiness.
59
- Ensure rollback procedures work and documentation is complete.
60
-
61
- **Activities:**
62
-
63
- - Verify pipeline runs successfully end-to-end
64
- - Test rollback procedures
65
- - Review security configurations
66
- - Validate monitoring and alerts
67
- - Check documentation completeness
68
-
69
- **Ready for Complete when:**
70
-
71
- - [ ] Pipeline is tested and reliable
72
- - [ ] Rollback procedure is documented and tested
73
- - [ ] Alerts are configured and tested
74
- - [ ] Runbooks exist for common issues
75
-
76
- ## Reference
77
-
78
- ## CI/CD Pipeline Stages
79
-
80
- ### Build
81
-
82
- - Install dependencies
83
- - Compile/transpile code
84
- - Generate artifacts
85
- - Cache dependencies for speed
86
-
87
- ### Test
88
-
89
- - Run unit tests
90
- - Run integration tests
91
- - Static analysis and linting
92
- - Security scanning
93
-
94
- ### Deploy
95
-
96
- - Deploy to staging environment
97
- - Run smoke tests
98
- - Deploy to production
99
- - Verify deployment health
100
-
101
- ## Infrastructure as Code
102
-
103
- ### Terraform
104
-
105
- ```hcl
106
- # Define resources declaratively
107
- resource "aws_instance" "example" {
108
- ami = "ami-0c55b159cbfafe1f0"
109
- instance_type = "t2.micro"
110
- }
111
- ```
112
-
113
- ### Docker
114
-
115
- ```dockerfile
116
- FROM node:18-alpine
117
- WORKDIR /app
118
- COPY package*.json ./
119
- RUN npm ci --only=production
120
- COPY . .
121
- CMD ["node", "server.js"]
122
- ```
123
-
124
- ## Deployment Strategies
125
-
126
- ### Rolling Deployment
127
-
128
- - Gradual replacement of instances
129
- - Zero downtime
130
- - Easy rollback
131
-
132
- ### Blue-Green Deployment
133
-
134
- - Two identical environments
135
- - Switch traffic atomically
136
- - Fast rollback
137
-
138
- ### Canary Deployment
139
-
140
- - Route small percentage to new version
141
- - Monitor for issues
142
- - Gradually increase traffic
@@ -1,134 +0,0 @@
1
- ---
2
- name: full-stack-development
3
- description: |
4
- Guide for building complete solutions across the full technology stack.
5
- Use when asked to implement features spanning frontend, backend, database,
6
- and infrastructure layers.
7
- ---
8
-
9
- # Full-Stack Development
10
-
11
- ## Stage Guidance
12
-
13
- ### Plan Stage
14
-
15
- **Focus:** Design the full-stack solution architecture. Define API contracts and
16
- plan layer interactions.
17
-
18
- **Activities:**
19
-
20
- - Define the API contract first
21
- - Plan frontend and backend responsibilities
22
- - Design database schema
23
- - Plan infrastructure requirements
24
-
25
- **Ready for Code when:**
26
-
27
- - [ ] API contract is defined
28
- - [ ] Layer responsibilities are clear
29
- - [ ] Database schema is planned
30
- - [ ] Infrastructure approach is decided
31
-
32
- ### Code Stage
33
-
34
- **Focus:** Build vertically—complete one feature end-to-end before starting
35
- another. Validates assumptions early.
36
-
37
- **Activities:**
38
-
39
- - Implement API endpoints
40
- - Build frontend integration
41
- - Create database schema and queries
42
- - Configure infrastructure as needed
43
- - Test across layers
44
-
45
- **Ready for Review when:**
46
-
47
- - [ ] Frontend connects to backend correctly
48
- - [ ] Database schema supports the feature
49
- - [ ] Error handling spans all layers
50
- - [ ] Feature works end-to-end
51
- - [ ] Deployment is automated
52
-
53
- ### Review Stage
54
-
55
- **Focus:** Verify integration across layers and ensure deployment readiness.
56
-
57
- **Activities:**
58
-
59
- - Test integration across all layers
60
- - Verify error handling end-to-end
61
- - Check deployment configuration
62
- - Review documentation
63
-
64
- **Ready for Complete when:**
65
-
66
- - [ ] Integration tests pass
67
- - [ ] Deployment verified
68
- - [ ] Documentation is complete
69
- - [ ] Feature is production-ready
70
-
71
- ## Reference
72
-
73
- ## Technology Stack
74
-
75
- ### Primary Languages
76
-
77
- - **JavaScript/TypeScript**: Frontend and Node.js backend
78
- - **Python**: Backend APIs and data processing
79
-
80
- ### Infrastructure
81
-
82
- - **Terraform**: Cloud infrastructure as code
83
- - **CloudFormation**: AWS-specific infrastructure
84
- - **Docker**: Containerization
85
-
86
- ## Layer Responsibilities
87
-
88
- ### Frontend
89
-
90
- - User interface and experience
91
- - Client-side validation
92
- - API integration
93
- - State management
94
-
95
- ### Backend API
96
-
97
- - Business logic
98
- - Data validation
99
- - Authentication/authorization
100
- - External service integration
101
-
102
- ### Database
103
-
104
- - Data persistence
105
- - Query optimization
106
- - Schema migrations
107
- - Data integrity
108
-
109
- ### Infrastructure
110
-
111
- - Deployment pipelines
112
- - Environment configuration
113
- - Scaling and reliability
114
- - Monitoring and logging
115
-
116
- ## Development Process
117
-
118
- ### 1. Start with the Interface
119
-
120
- - Define the API contract first
121
- - Frontend and backend can work in parallel
122
- - Clear interface = fewer integration issues
123
-
124
- ### 2. Build Vertically
125
-
126
- - Complete one feature end-to-end before starting another
127
- - Validates assumptions early
128
- - Delivers demonstrable progress
129
-
130
- ### 3. Test Across Layers
131
-
132
- - Unit tests per layer
133
- - Integration tests across layers
134
- - End-to-end tests for critical paths