@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.
- package/bin/{pathway.js → fit-pathway.js} +65 -153
- package/package.json +18 -41
- package/{app → src}/commands/agent.js +5 -2
- package/{app → src}/commands/behaviour.js +1 -1
- package/{app → src}/commands/command-factory.js +2 -2
- package/{app → src}/commands/discipline.js +1 -1
- package/{app → src}/commands/driver.js +2 -2
- package/{app → src}/commands/grade.js +2 -2
- package/{app → src}/commands/job.js +3 -3
- package/{app → src}/commands/serve.js +26 -4
- package/{app → src}/commands/site.js +24 -4
- package/{app → src}/commands/skill.js +3 -3
- package/{app → src}/commands/stage.js +1 -1
- package/{app → src}/commands/track.js +2 -2
- package/{app → src}/components/card.js +11 -1
- package/{app → src}/components/checklist.js +1 -1
- package/src/components/code-display.js +153 -0
- package/{app → src}/components/comparison-radar.js +1 -1
- package/{app → src}/components/detail.js +1 -1
- package/src/components/markdown-textarea.js +153 -0
- package/{app → src}/components/skill-matrix.js +1 -1
- package/{app → src}/css/bundles/app.css +14 -0
- package/{app → src}/css/components/badges.css +15 -8
- package/{app → src}/css/components/forms.css +23 -13
- package/{app → src}/css/components/surfaces.css +49 -3
- package/{app → src}/css/components/typography.css +1 -2
- package/{app → src}/css/pages/agent-builder.css +11 -102
- package/{app → src}/css/pages/detail.css +11 -1
- package/{app → src}/css/tokens.css +3 -0
- package/{app → src}/formatters/agent/dom.js +26 -71
- package/{app → src}/formatters/agent/profile.js +11 -6
- package/{app → src}/formatters/behaviour/dom.js +1 -1
- package/{app → src}/formatters/discipline/dom.js +1 -1
- package/{app → src}/formatters/driver/dom.js +1 -1
- package/{app → src}/formatters/grade/dom.js +7 -7
- package/{app → src}/formatters/grade/markdown.js +1 -1
- package/{app → src}/formatters/interview/dom.js +1 -1
- package/{app → src}/formatters/interview/markdown.js +1 -1
- package/{app → src}/formatters/interview/shared.js +3 -3
- package/{app → src}/formatters/job/description.js +1 -1
- package/{app → src}/formatters/job/dom.js +3 -3
- package/{app → src}/formatters/job/markdown.js +1 -1
- package/{app → src}/formatters/json-ld.js +1 -1
- package/{app → src}/formatters/progress/shared.js +3 -3
- package/{app → src}/formatters/skill/dom.js +69 -57
- package/{app → src}/formatters/skill/markdown.js +1 -1
- package/{app → src}/formatters/skill/shared.js +5 -3
- package/{app → src}/formatters/stage/microdata.js +2 -2
- package/{app → src}/formatters/stage/shared.js +3 -3
- package/{app → src}/formatters/tool/shared.js +6 -0
- package/{app → src}/formatters/track/dom.js +1 -1
- package/{app → src}/formatters/track/markdown.js +1 -1
- package/{app → src}/formatters/track/shared.js +4 -1
- package/{app → src}/handout-main.js +16 -12
- package/src/handout.html +43 -0
- package/{app → src}/index.html +23 -2
- package/{app → src}/lib/card-mappers.js +28 -1
- package/{app → src}/lib/job-cache.js +1 -1
- package/{app → src}/lib/render.js +1 -1
- package/{app → src}/pages/agent-builder.js +120 -76
- package/{app → src}/pages/assessment-results.js +1 -1
- package/{app → src}/pages/interview.js +1 -1
- package/{app → src}/pages/job-builder.js +1 -1
- package/{app → src}/pages/job.js +1 -1
- package/{app → src}/pages/landing.js +5 -2
- package/{app → src}/pages/self-assessment.js +1 -1
- package/{app → src}/pages/skill.js +1 -1
- package/{app → src}/pages/stage.js +5 -5
- package/{app → src}/pages/tool.js +1 -1
- package/{app → src}/slide-main.js +2 -2
- package/{app → src}/slides/chapter.js +8 -8
- package/{app → src}/slides/index.js +3 -3
- package/{app → src}/slides/job.js +1 -1
- package/{app → src}/slides/overview.js +9 -9
- package/{app → src}/slides/skill.js +1 -0
- package/{app → src}/slides.html +16 -1
- package/templates/agent.template.md +44 -13
- package/templates/job.template.md +14 -20
- package/templates/skill.template.md +20 -23
- package/LICENSE +0 -201
- package/README.md +0 -104
- package/app/components/markdown-textarea.js +0 -132
- package/app/handout.html +0 -28
- package/app/model/agent.js +0 -738
- package/app/model/checklist.js +0 -103
- package/app/model/derivation.js +0 -766
- package/app/model/index-generator.js +0 -65
- package/app/model/interview.js +0 -539
- package/app/model/job.js +0 -228
- package/app/model/levels.js +0 -601
- package/app/model/loader.js +0 -599
- package/app/model/matching.js +0 -888
- package/app/model/modifiers.js +0 -158
- package/app/model/profile.js +0 -259
- package/app/model/progression.js +0 -507
- package/app/model/schema-validation.js +0 -438
- package/app/model/validation.js +0 -2130
- package/examples/agents/.claude/skills/architecture-design/SKILL.md +0 -130
- package/examples/agents/.claude/skills/cloud-platforms/SKILL.md +0 -131
- package/examples/agents/.claude/skills/code-quality-review/SKILL.md +0 -108
- package/examples/agents/.claude/skills/devops-cicd/SKILL.md +0 -142
- package/examples/agents/.claude/skills/full-stack-development/SKILL.md +0 -134
- package/examples/agents/.claude/skills/sre-practices/SKILL.md +0 -163
- package/examples/agents/.claude/skills/technical-debt-management/SKILL.md +0 -164
- package/examples/agents/.github/agents/se-platform-code.agent.md +0 -132
- package/examples/agents/.github/agents/se-platform-plan.agent.md +0 -131
- package/examples/agents/.github/agents/se-platform-review.agent.md +0 -136
- package/examples/agents/.vscode/settings.json +0 -8
- package/examples/behaviours/_index.yaml +0 -8
- package/examples/behaviours/outcome_ownership.yaml +0 -43
- package/examples/behaviours/polymathic_knowledge.yaml +0 -41
- package/examples/behaviours/precise_communication.yaml +0 -39
- package/examples/behaviours/relentless_curiosity.yaml +0 -37
- package/examples/behaviours/systems_thinking.yaml +0 -40
- package/examples/capabilities/_index.yaml +0 -8
- package/examples/capabilities/business.yaml +0 -189
- package/examples/capabilities/delivery.yaml +0 -303
- package/examples/capabilities/people.yaml +0 -68
- package/examples/capabilities/reliability.yaml +0 -412
- package/examples/capabilities/scale.yaml +0 -378
- package/examples/copilot-setup-steps.yaml +0 -25
- package/examples/devcontainer.yaml +0 -21
- package/examples/disciplines/_index.yaml +0 -6
- package/examples/disciplines/data_engineering.yaml +0 -78
- package/examples/disciplines/engineering_management.yaml +0 -63
- package/examples/disciplines/software_engineering.yaml +0 -78
- package/examples/drivers.yaml +0 -202
- package/examples/framework.yaml +0 -69
- package/examples/grades.yaml +0 -115
- package/examples/questions/behaviours/outcome_ownership.yaml +0 -51
- package/examples/questions/behaviours/polymathic_knowledge.yaml +0 -47
- package/examples/questions/behaviours/precise_communication.yaml +0 -54
- package/examples/questions/behaviours/relentless_curiosity.yaml +0 -50
- package/examples/questions/behaviours/systems_thinking.yaml +0 -52
- package/examples/questions/skills/architecture_design.yaml +0 -53
- package/examples/questions/skills/cloud_platforms.yaml +0 -47
- package/examples/questions/skills/code_quality.yaml +0 -48
- package/examples/questions/skills/data_modeling.yaml +0 -45
- package/examples/questions/skills/devops.yaml +0 -46
- package/examples/questions/skills/full_stack_development.yaml +0 -47
- package/examples/questions/skills/sre_practices.yaml +0 -43
- package/examples/questions/skills/stakeholder_management.yaml +0 -48
- package/examples/questions/skills/team_collaboration.yaml +0 -42
- package/examples/questions/skills/technical_writing.yaml +0 -42
- package/examples/self-assessments.yaml +0 -64
- package/examples/stages.yaml +0 -131
- package/examples/tracks/_index.yaml +0 -5
- package/examples/tracks/platform.yaml +0 -49
- package/examples/tracks/sre.yaml +0 -48
- package/examples/vscode-settings.yaml +0 -17
- /package/{app → src}/commands/index.js +0 -0
- /package/{app → src}/commands/init.js +0 -0
- /package/{app → src}/commands/interview.js +0 -0
- /package/{app → src}/commands/progress.js +0 -0
- /package/{app → src}/commands/questions.js +0 -0
- /package/{app → src}/commands/tool.js +0 -0
- /package/{app → src}/components/action-buttons.js +0 -0
- /package/{app → src}/components/behaviour-profile.js +0 -0
- /package/{app → src}/components/builder.js +0 -0
- /package/{app → src}/components/error-page.js +0 -0
- /package/{app → src}/components/grid.js +0 -0
- /package/{app → src}/components/list.js +0 -0
- /package/{app → src}/components/modifier-table.js +0 -0
- /package/{app → src}/components/nav.js +0 -0
- /package/{app → src}/components/progression-table.js +0 -0
- /package/{app → src}/components/radar-chart.js +0 -0
- /package/{app → src}/css/base.css +0 -0
- /package/{app → src}/css/bundles/handout.css +0 -0
- /package/{app → src}/css/bundles/slides.css +0 -0
- /package/{app → src}/css/components/buttons.css +0 -0
- /package/{app → src}/css/components/layout.css +0 -0
- /package/{app → src}/css/components/nav.css +0 -0
- /package/{app → src}/css/components/progress.css +0 -0
- /package/{app → src}/css/components/states.css +0 -0
- /package/{app → src}/css/components/tables.css +0 -0
- /package/{app → src}/css/components/utilities.css +0 -0
- /package/{app → src}/css/pages/assessment-results.css +0 -0
- /package/{app → src}/css/pages/interview-builder.css +0 -0
- /package/{app → src}/css/pages/job-builder.css +0 -0
- /package/{app → src}/css/pages/landing.css +0 -0
- /package/{app → src}/css/pages/lifecycle.css +0 -0
- /package/{app → src}/css/pages/progress-builder.css +0 -0
- /package/{app → src}/css/pages/self-assessment.css +0 -0
- /package/{app → src}/css/reset.css +0 -0
- /package/{app → src}/css/views/handout.css +0 -0
- /package/{app → src}/css/views/print.css +0 -0
- /package/{app → src}/css/views/slide-animations.css +0 -0
- /package/{app → src}/css/views/slide-base.css +0 -0
- /package/{app → src}/css/views/slide-sections.css +0 -0
- /package/{app → src}/css/views/slide-tables.css +0 -0
- /package/{app → src}/formatters/agent/skill.js +0 -0
- /package/{app → src}/formatters/behaviour/markdown.js +0 -0
- /package/{app → src}/formatters/behaviour/microdata.js +0 -0
- /package/{app → src}/formatters/behaviour/shared.js +0 -0
- /package/{app → src}/formatters/discipline/markdown.js +0 -0
- /package/{app → src}/formatters/discipline/microdata.js +0 -0
- /package/{app → src}/formatters/discipline/shared.js +0 -0
- /package/{app → src}/formatters/driver/microdata.js +0 -0
- /package/{app → src}/formatters/driver/shared.js +0 -0
- /package/{app → src}/formatters/grade/microdata.js +0 -0
- /package/{app → src}/formatters/grade/shared.js +0 -0
- /package/{app → src}/formatters/index.js +0 -0
- /package/{app → src}/formatters/microdata-shared.js +0 -0
- /package/{app → src}/formatters/progress/dom.js +0 -0
- /package/{app → src}/formatters/progress/markdown.js +0 -0
- /package/{app → src}/formatters/questions/json.js +0 -0
- /package/{app → src}/formatters/questions/markdown.js +0 -0
- /package/{app → src}/formatters/questions/shared.js +0 -0
- /package/{app → src}/formatters/questions/yaml.js +0 -0
- /package/{app → src}/formatters/shared.js +0 -0
- /package/{app → src}/formatters/skill/microdata.js +0 -0
- /package/{app → src}/formatters/stage/dom.js +0 -0
- /package/{app → src}/formatters/stage/index.js +0 -0
- /package/{app → src}/formatters/track/microdata.js +0 -0
- /package/{app → src}/lib/cli-output.js +0 -0
- /package/{app → src}/lib/error-boundary.js +0 -0
- /package/{app → src}/lib/errors.js +0 -0
- /package/{app → src}/lib/form-controls.js +0 -0
- /package/{app → src}/lib/markdown.js +0 -0
- /package/{app → src}/lib/radar.js +0 -0
- /package/{app → src}/lib/reactive.js +0 -0
- /package/{app → src}/lib/router-core.js +0 -0
- /package/{app → src}/lib/router-pages.js +0 -0
- /package/{app → src}/lib/router-slides.js +0 -0
- /package/{app → src}/lib/state.js +0 -0
- /package/{app → src}/lib/template-loader.js +0 -0
- /package/{app → src}/lib/utils.js +0 -0
- /package/{app → src}/lib/yaml-loader.js +0 -0
- /package/{app → src}/main.js +0 -0
- /package/{app → src}/pages/behaviour.js +0 -0
- /package/{app → src}/pages/discipline.js +0 -0
- /package/{app → src}/pages/driver.js +0 -0
- /package/{app → src}/pages/grade.js +0 -0
- /package/{app → src}/pages/interview-builder.js +0 -0
- /package/{app → src}/pages/progress-builder.js +0 -0
- /package/{app → src}/pages/progress.js +0 -0
- /package/{app → src}/pages/track.js +0 -0
- /package/{app → src}/slides/behaviour.js +0 -0
- /package/{app → src}/slides/discipline.js +0 -0
- /package/{app → src}/slides/driver.js +0 -0
- /package/{app → src}/slides/grade.js +0 -0
- /package/{app → src}/slides/interview.js +0 -0
- /package/{app → src}/slides/progress.js +0 -0
- /package/{app → src}/slides/track.js +0 -0
- /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
|