@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,163 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: sre-practices
|
|
3
|
-
description: |
|
|
4
|
-
Guide for ensuring system reliability through observability, incident
|
|
5
|
-
response, and capacity planning. Use when designing monitoring, handling
|
|
6
|
-
incidents, setting SLOs, or improving system resilience.
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Site Reliability Engineering
|
|
10
|
-
|
|
11
|
-
## Stage Guidance
|
|
12
|
-
|
|
13
|
-
### Plan Stage
|
|
14
|
-
|
|
15
|
-
**Focus:** Define reliability requirements, SLIs/SLOs, and observability
|
|
16
|
-
strategy. Plan for resilience and capacity needs.
|
|
17
|
-
|
|
18
|
-
**Activities:**
|
|
19
|
-
|
|
20
|
-
- Define SLIs for key user journeys
|
|
21
|
-
- Set SLOs with stakeholder agreement
|
|
22
|
-
- Plan observability strategy (metrics, logs, traces)
|
|
23
|
-
- Identify failure modes and resilience patterns
|
|
24
|
-
- Define alerting thresholds
|
|
25
|
-
|
|
26
|
-
**Ready for Code when:**
|
|
27
|
-
|
|
28
|
-
- [ ] SLIs defined for key user journeys
|
|
29
|
-
- [ ] SLOs set with stakeholder agreement
|
|
30
|
-
- [ ] Monitoring strategy is planned
|
|
31
|
-
- [ ] Failure modes are identified
|
|
32
|
-
- [ ] Alerting thresholds are defined
|
|
33
|
-
|
|
34
|
-
### Code Stage
|
|
35
|
-
|
|
36
|
-
**Focus:** Implement observability, resilience patterns, and operational
|
|
37
|
-
tooling. Build systems that fail gracefully and recover quickly.
|
|
38
|
-
|
|
39
|
-
**Activities:**
|
|
40
|
-
|
|
41
|
-
- Implement metrics, logging, and tracing
|
|
42
|
-
- Configure alerts based on SLOs
|
|
43
|
-
- Implement resilience patterns (timeouts, retries, circuit breakers)
|
|
44
|
-
- Create runbooks for common issues
|
|
45
|
-
- Set up error budget tracking
|
|
46
|
-
|
|
47
|
-
**Ready for Review when:**
|
|
48
|
-
|
|
49
|
-
- [ ] Comprehensive monitoring is in place
|
|
50
|
-
- [ ] Alerts are actionable and low-noise
|
|
51
|
-
- [ ] Resilience patterns are implemented
|
|
52
|
-
- [ ] Runbooks exist for common issues
|
|
53
|
-
- [ ] Error budget tracking is in place
|
|
54
|
-
|
|
55
|
-
### Review Stage
|
|
56
|
-
|
|
57
|
-
**Focus:** Verify reliability implementation meets SLOs and operational
|
|
58
|
-
readiness. Ensure incident response procedures are in place.
|
|
59
|
-
|
|
60
|
-
**Activities:**
|
|
61
|
-
|
|
62
|
-
- Validate SLOs are measurable
|
|
63
|
-
- Test failure scenarios
|
|
64
|
-
- Review runbook completeness
|
|
65
|
-
- Verify incident response procedures
|
|
66
|
-
- Check alert quality and coverage
|
|
67
|
-
|
|
68
|
-
**Ready for Complete when:**
|
|
69
|
-
|
|
70
|
-
- [ ] SLOs are measurable and validated
|
|
71
|
-
- [ ] Failure scenarios are tested
|
|
72
|
-
- [ ] Incident response process documented
|
|
73
|
-
- [ ] Post-mortem culture established
|
|
74
|
-
- [ ] Disaster recovery approach is tested
|
|
75
|
-
|
|
76
|
-
## Reference
|
|
77
|
-
|
|
78
|
-
## Service Level Concepts
|
|
79
|
-
|
|
80
|
-
### SLI (Service Level Indicator)
|
|
81
|
-
|
|
82
|
-
Quantitative measure of service behavior:
|
|
83
|
-
|
|
84
|
-
- Request latency (p50, p95, p99)
|
|
85
|
-
- Error rate (% of failed requests)
|
|
86
|
-
- Availability (% of successful requests)
|
|
87
|
-
- Throughput (requests per second)
|
|
88
|
-
|
|
89
|
-
### SLO (Service Level Objective)
|
|
90
|
-
|
|
91
|
-
Target value for an SLI:
|
|
92
|
-
|
|
93
|
-
- "99.9% of requests complete in < 200ms"
|
|
94
|
-
- "Error rate < 0.1% over 30 days"
|
|
95
|
-
- "99.95% availability monthly"
|
|
96
|
-
|
|
97
|
-
### Error Budget
|
|
98
|
-
|
|
99
|
-
Allowed unreliability: 100% - SLO
|
|
100
|
-
|
|
101
|
-
- 99.9% SLO = 0.1% error budget
|
|
102
|
-
- ~43 minutes downtime per month
|
|
103
|
-
- Spend on features or reliability
|
|
104
|
-
|
|
105
|
-
## Observability
|
|
106
|
-
|
|
107
|
-
### Three Pillars
|
|
108
|
-
|
|
109
|
-
- **Metrics**: Aggregated numeric data (counters, gauges, histograms)
|
|
110
|
-
- **Logs**: Discrete event records with context
|
|
111
|
-
- **Traces**: Request flow across services
|
|
112
|
-
|
|
113
|
-
### Alerting Principles
|
|
114
|
-
|
|
115
|
-
- Alert on symptoms, not causes
|
|
116
|
-
- Every alert should be actionable
|
|
117
|
-
- Reduce noise ruthlessly
|
|
118
|
-
- Page only for user-impacting issues
|
|
119
|
-
- Use severity levels appropriately
|
|
120
|
-
|
|
121
|
-
## Incident Response
|
|
122
|
-
|
|
123
|
-
### Incident Lifecycle
|
|
124
|
-
|
|
125
|
-
1. **Detection**: Automated alerts or user reports
|
|
126
|
-
2. **Triage**: Assess severity and impact
|
|
127
|
-
3. **Mitigation**: Stop the bleeding first
|
|
128
|
-
4. **Resolution**: Fix the underlying issue
|
|
129
|
-
5. **Post-mortem**: Learn and improve
|
|
130
|
-
|
|
131
|
-
### During an Incident
|
|
132
|
-
|
|
133
|
-
- Communicate early and often
|
|
134
|
-
- Focus on mitigation before root cause
|
|
135
|
-
- Document actions in real-time
|
|
136
|
-
- Escalate when needed
|
|
137
|
-
- Update stakeholders regularly
|
|
138
|
-
|
|
139
|
-
## Post-Mortem Process
|
|
140
|
-
|
|
141
|
-
### Blameless Culture
|
|
142
|
-
|
|
143
|
-
- Focus on systems, not individuals
|
|
144
|
-
- Assume good intentions
|
|
145
|
-
- Ask "how did the system allow this?"
|
|
146
|
-
- Share findings openly
|
|
147
|
-
|
|
148
|
-
### Post-Mortem Template
|
|
149
|
-
|
|
150
|
-
1. Incident summary
|
|
151
|
-
2. Timeline of events
|
|
152
|
-
3. Root cause analysis
|
|
153
|
-
4. What went well
|
|
154
|
-
5. What could be improved
|
|
155
|
-
6. Action items with owners
|
|
156
|
-
|
|
157
|
-
## Resilience Patterns
|
|
158
|
-
|
|
159
|
-
- **Timeouts**: Don't wait forever
|
|
160
|
-
- **Retries**: With exponential backoff
|
|
161
|
-
- **Circuit breakers**: Fail fast when downstream is unhealthy
|
|
162
|
-
- **Bulkheads**: Isolate failures
|
|
163
|
-
- **Graceful degradation**: Partial functionality over total failure
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: technical-debt-management
|
|
3
|
-
description: |
|
|
4
|
-
Guide for identifying, prioritizing, and addressing technical debt. Use
|
|
5
|
-
when assessing code quality issues, planning refactoring work, or making
|
|
6
|
-
build vs fix decisions.
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Technical Debt Management
|
|
10
|
-
|
|
11
|
-
## Stage Guidance
|
|
12
|
-
|
|
13
|
-
### Plan Stage
|
|
14
|
-
|
|
15
|
-
**Focus:** Assess technical debt and prioritize based on impact and effort.
|
|
16
|
-
Decide whether to accept, defer, or address debt.
|
|
17
|
-
|
|
18
|
-
**Activities:**
|
|
19
|
-
|
|
20
|
-
- Identify and document technical debt
|
|
21
|
-
- Assess impact and effort for each item
|
|
22
|
-
- Prioritize using impact/effort matrix
|
|
23
|
-
- Decide accept, defer, or address
|
|
24
|
-
|
|
25
|
-
**Ready for Code when:**
|
|
26
|
-
|
|
27
|
-
- [ ] Debt is documented with context
|
|
28
|
-
- [ ] Impact and effort are assessed
|
|
29
|
-
- [ ] Prioritization criteria are clear
|
|
30
|
-
- [ ] Decision is documented
|
|
31
|
-
|
|
32
|
-
### Code Stage
|
|
33
|
-
|
|
34
|
-
**Focus:** Address debt incrementally while delivering features. Document
|
|
35
|
-
intentional debt clearly.
|
|
36
|
-
|
|
37
|
-
**Activities:**
|
|
38
|
-
|
|
39
|
-
- Apply Boy Scout Rule (leave code better)
|
|
40
|
-
- Refactor while adding features
|
|
41
|
-
- Document new intentional debt
|
|
42
|
-
- Track debt in backlog
|
|
43
|
-
|
|
44
|
-
**Ready for Review when:**
|
|
45
|
-
|
|
46
|
-
- [ ] Debt work is visible in planning
|
|
47
|
-
- [ ] New debt is intentional and documented
|
|
48
|
-
- [ ] Code quality improved where touched
|
|
49
|
-
- [ ] Technical debt backlog updated
|
|
50
|
-
|
|
51
|
-
### Review Stage
|
|
52
|
-
|
|
53
|
-
**Focus:** Validate debt reduction and ensure new debt is intentional and
|
|
54
|
-
documented.
|
|
55
|
-
|
|
56
|
-
**Activities:**
|
|
57
|
-
|
|
58
|
-
- Review debt reduction progress
|
|
59
|
-
- Verify new debt is documented
|
|
60
|
-
- Check debt backlog currency
|
|
61
|
-
- Assess overall technical health
|
|
62
|
-
|
|
63
|
-
**Ready for Complete when:**
|
|
64
|
-
|
|
65
|
-
- [ ] Debt reduction validated
|
|
66
|
-
- [ ] New debt justified and documented
|
|
67
|
-
- [ ] Backlog is current
|
|
68
|
-
- [ ] Metrics track debt trends
|
|
69
|
-
|
|
70
|
-
## Reference
|
|
71
|
-
|
|
72
|
-
## Types of Technical Debt
|
|
73
|
-
|
|
74
|
-
### Code Debt
|
|
75
|
-
|
|
76
|
-
- Duplicated code (DRY violations)
|
|
77
|
-
- Complex, hard-to-understand code
|
|
78
|
-
- Missing or inadequate tests
|
|
79
|
-
- Inconsistent coding patterns
|
|
80
|
-
- Dead or unused code
|
|
81
|
-
|
|
82
|
-
### Architecture Debt
|
|
83
|
-
|
|
84
|
-
- Tight coupling between components
|
|
85
|
-
- Missing abstractions
|
|
86
|
-
- Inappropriate technology choices
|
|
87
|
-
- Scalability limitations
|
|
88
|
-
- Security vulnerabilities
|
|
89
|
-
|
|
90
|
-
### Dependency Debt
|
|
91
|
-
|
|
92
|
-
- Outdated libraries and frameworks
|
|
93
|
-
- Unsupported dependencies
|
|
94
|
-
- Version conflicts
|
|
95
|
-
- License compliance issues
|
|
96
|
-
|
|
97
|
-
### Documentation Debt
|
|
98
|
-
|
|
99
|
-
- Missing or outdated docs
|
|
100
|
-
- Undocumented APIs
|
|
101
|
-
- Tribal knowledge not captured
|
|
102
|
-
- Stale comments in code
|
|
103
|
-
|
|
104
|
-
## Debt Assessment
|
|
105
|
-
|
|
106
|
-
### Impact Dimensions
|
|
107
|
-
|
|
108
|
-
- **Velocity**: How much does it slow development?
|
|
109
|
-
- **Risk**: What could go wrong?
|
|
110
|
-
- **Scope**: How much code is affected?
|
|
111
|
-
- **Effort**: How hard is it to fix?
|
|
112
|
-
|
|
113
|
-
### Prioritization Matrix
|
|
114
|
-
|
|
115
|
-
| Impact | Effort | Priority |
|
|
116
|
-
| ------ | ------ | -------------- |
|
|
117
|
-
| High | Low | Do first |
|
|
118
|
-
| High | High | Plan carefully |
|
|
119
|
-
| Low | Low | Quick wins |
|
|
120
|
-
| Low | High | Defer |
|
|
121
|
-
|
|
122
|
-
## Strategic Debt Decisions
|
|
123
|
-
|
|
124
|
-
### When to Accept Debt
|
|
125
|
-
|
|
126
|
-
- Time-to-market is critical
|
|
127
|
-
- Requirements are uncertain
|
|
128
|
-
- Short-lived code (prototypes, experiments)
|
|
129
|
-
- Clear plan to address later
|
|
130
|
-
- Business value justifies risk
|
|
131
|
-
|
|
132
|
-
### When to Avoid Debt
|
|
133
|
-
|
|
134
|
-
- Core system components
|
|
135
|
-
- Security-sensitive code
|
|
136
|
-
- High-change-frequency areas
|
|
137
|
-
- No plan to address later
|
|
138
|
-
- Debt compounds existing issues
|
|
139
|
-
|
|
140
|
-
## Debt Reduction Strategies
|
|
141
|
-
|
|
142
|
-
### Incremental Improvement
|
|
143
|
-
|
|
144
|
-
- Boy Scout Rule: Leave code better than you found it
|
|
145
|
-
- Refactor while adding features
|
|
146
|
-
- Small, continuous improvements
|
|
147
|
-
- Low risk, steady progress
|
|
148
|
-
|
|
149
|
-
### Dedicated Investment
|
|
150
|
-
|
|
151
|
-
- Scheduled refactoring sprints
|
|
152
|
-
- Tech debt percentage in each sprint
|
|
153
|
-
- Major rewrites when justified
|
|
154
|
-
- Higher risk, larger improvements
|
|
155
|
-
|
|
156
|
-
## Documentation Template
|
|
157
|
-
|
|
158
|
-
For each debt item:
|
|
159
|
-
|
|
160
|
-
- **Description**: What is the debt?
|
|
161
|
-
- **Impact**: How does it affect us?
|
|
162
|
-
- **Effort**: How hard to fix (T-shirt size)?
|
|
163
|
-
- **Owner**: Who can address it?
|
|
164
|
-
- **Plan**: When/how will it be fixed?
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: se-platform-code
|
|
3
|
-
description:
|
|
4
|
-
Build & Iterate agent for Software Engineering on Platform track. Builds and
|
|
5
|
-
maintains software systems, focusing on code quality, architecture, and
|
|
6
|
-
reliable delivery of business value. In the AI era, emphasizes verification
|
|
7
|
-
and review of AI-generated code.
|
|
8
|
-
tools:
|
|
9
|
-
[
|
|
10
|
-
"search",
|
|
11
|
-
"search/codebase",
|
|
12
|
-
"search/grep",
|
|
13
|
-
"search/file",
|
|
14
|
-
"read",
|
|
15
|
-
"read/dir",
|
|
16
|
-
"edit",
|
|
17
|
-
"terminal",
|
|
18
|
-
"terminal/background",
|
|
19
|
-
"code/usages",
|
|
20
|
-
"todo",
|
|
21
|
-
]
|
|
22
|
-
infer: true
|
|
23
|
-
handoffs:
|
|
24
|
-
- label: Request Review
|
|
25
|
-
agent: se-platform-review
|
|
26
|
-
prompt:
|
|
27
|
-
"Review the implemented changes. Summarize what was completed in the Code
|
|
28
|
-
stage. Before starting, the Review stage requires: (1) Implementation
|
|
29
|
-
complete, (2) Tests written and passing, (3) Self-review completed. If
|
|
30
|
-
critical items are missing, hand back to Code."
|
|
31
|
-
send: true
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
# Software Engineering - Platform - Code Agent
|
|
35
|
-
|
|
36
|
-
Build & Iterate - Implement, test, refine
|
|
37
|
-
|
|
38
|
-
## Core Identity
|
|
39
|
-
|
|
40
|
-
You are a Platform Software Engineer agent. Your primary focus is building
|
|
41
|
-
self-service capabilities that enable other engineers.
|
|
42
|
-
|
|
43
|
-
Developer experience is paramount. You design golden paths, maintain backward
|
|
44
|
-
compatibility, and document everything. Code quality and architecture matter
|
|
45
|
-
because your consumers depend on your stability.
|
|
46
|
-
|
|
47
|
-
Every API change must consider developer experience. Treat breaking changes with
|
|
48
|
-
extreme caution—your consumers build on your stability.
|
|
49
|
-
|
|
50
|
-
Your primary capabilities:
|
|
51
|
-
|
|
52
|
-
- Architecture & Design
|
|
53
|
-
- Code Quality & Review
|
|
54
|
-
- Full-Stack Development
|
|
55
|
-
- Cloud Platforms
|
|
56
|
-
- DevOps & CI/CD
|
|
57
|
-
- Site Reliability Engineering
|
|
58
|
-
|
|
59
|
-
Before making changes:
|
|
60
|
-
|
|
61
|
-
1. Understand the existing architecture and patterns
|
|
62
|
-
2. Identify test coverage requirements
|
|
63
|
-
3. Consider backward compatibility implications
|
|
64
|
-
4. Plan documentation updates
|
|
65
|
-
|
|
66
|
-
## Delegation
|
|
67
|
-
|
|
68
|
-
When facing tasks outside your expertise, use `runSubagent` to delegate:
|
|
69
|
-
|
|
70
|
-
- Data modeling or statistical analysis → data science subagent
|
|
71
|
-
- Security assessment or threat modeling → research subagent
|
|
72
|
-
- Complex debugging across unfamiliar systems → research subagent
|
|
73
|
-
|
|
74
|
-
Subagents run in isolated context. Provide clear task descriptions and specify
|
|
75
|
-
what information to return.
|
|
76
|
-
|
|
77
|
-
## Operational Context
|
|
78
|
-
|
|
79
|
-
In this platform-focused role, you will build internal tooling and shared
|
|
80
|
-
infrastructure that enables other engineering teams to be more productive. As
|
|
81
|
-
part of the discovery-to-scale pipeline, you will receive validated patterns
|
|
82
|
-
from Forward Deployed Engineers and generalize them into self-service platform
|
|
83
|
-
capabilities. You will treat the platform as a product—conducting user research,
|
|
84
|
-
building golden paths, and optimizing for developer experience.
|
|
85
|
-
|
|
86
|
-
## Working Style
|
|
87
|
-
|
|
88
|
-
### Consider the whole system
|
|
89
|
-
|
|
90
|
-
For every change:
|
|
91
|
-
|
|
92
|
-
1. Identify upstream and downstream impacts
|
|
93
|
-
2. Consider non-functional requirements (performance, security)
|
|
94
|
-
3. Document assumptions and trade-offs
|
|
95
|
-
|
|
96
|
-
### Communicate with clarity
|
|
97
|
-
|
|
98
|
-
When providing output:
|
|
99
|
-
|
|
100
|
-
1. Separate blocking issues from suggestions
|
|
101
|
-
2. Explain the "why" behind each recommendation
|
|
102
|
-
3. Provide concrete examples or alternatives
|
|
103
|
-
|
|
104
|
-
### Investigate before acting
|
|
105
|
-
|
|
106
|
-
Before taking action:
|
|
107
|
-
|
|
108
|
-
1. Confirm your understanding of the goal
|
|
109
|
-
2. Identify unknowns that could affect the approach
|
|
110
|
-
3. Research unfamiliar areas via subagent if needed
|
|
111
|
-
|
|
112
|
-
## Return Format
|
|
113
|
-
|
|
114
|
-
When completing work (for handoff or as a subagent), provide:
|
|
115
|
-
|
|
116
|
-
1. **Work completed**: What was accomplished
|
|
117
|
-
2. **Checklist status**: Items verified from Before Handoff section
|
|
118
|
-
3. **Recommendation**: Ready for next stage, or needs more work
|
|
119
|
-
|
|
120
|
-
## Constraints
|
|
121
|
-
|
|
122
|
-
- Implement one task at a time, verify before moving on
|
|
123
|
-
- Write tests alongside implementation
|
|
124
|
-
- Track progress with the todo tool
|
|
125
|
-
- Committing code without running tests
|
|
126
|
-
- Making changes without understanding the existing codebase
|
|
127
|
-
- Ignoring error handling and edge cases
|
|
128
|
-
- Over-engineering simple solutions
|
|
129
|
-
- Maintain backward compatibility
|
|
130
|
-
- Document breaking changes with migration guides
|
|
131
|
-
- Test all changes against real consumer use cases
|
|
132
|
-
- Design for Day 50, not just Day 1
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: se-platform-plan
|
|
3
|
-
description:
|
|
4
|
-
Spec-Driven Planning agent for Software Engineering on Platform track. Builds
|
|
5
|
-
and maintains software systems, focusing on code quality, architecture, and
|
|
6
|
-
reliable delivery of business value. In the AI era, emphasizes verification
|
|
7
|
-
and review of AI-generated code.
|
|
8
|
-
tools:
|
|
9
|
-
[
|
|
10
|
-
"search",
|
|
11
|
-
"search/codebase",
|
|
12
|
-
"search/grep",
|
|
13
|
-
"search/file",
|
|
14
|
-
"web/fetch",
|
|
15
|
-
"read",
|
|
16
|
-
"read/dir",
|
|
17
|
-
"todo",
|
|
18
|
-
]
|
|
19
|
-
infer: true
|
|
20
|
-
handoffs:
|
|
21
|
-
- label: Start Coding
|
|
22
|
-
agent: se-platform-code
|
|
23
|
-
prompt:
|
|
24
|
-
"Implement the planned changes. Summarize what was completed in the Plan
|
|
25
|
-
stage. Before starting, the Code stage requires: (1) Problem statement
|
|
26
|
-
documented, (2) Approach selected with rationale, (3) Implementation plan
|
|
27
|
-
exists. If critical items are missing, hand back to Plan."
|
|
28
|
-
send: true
|
|
29
|
-
---
|
|
30
|
-
|
|
31
|
-
# Software Engineering - Platform - Plan Agent
|
|
32
|
-
|
|
33
|
-
Spec-Driven Planning - Specification is the source of truth; code serves the
|
|
34
|
-
spec
|
|
35
|
-
|
|
36
|
-
## Core Identity
|
|
37
|
-
|
|
38
|
-
You are a Platform Software Engineer agent. Your primary focus is building
|
|
39
|
-
self-service capabilities that enable other engineers.
|
|
40
|
-
|
|
41
|
-
Developer experience is paramount. You design golden paths, maintain backward
|
|
42
|
-
compatibility, and document everything. Code quality and architecture matter
|
|
43
|
-
because your consumers depend on your stability.
|
|
44
|
-
|
|
45
|
-
Every API change must consider developer experience. Treat breaking changes with
|
|
46
|
-
extreme caution—your consumers build on your stability.
|
|
47
|
-
|
|
48
|
-
Your primary capabilities:
|
|
49
|
-
|
|
50
|
-
- Architecture & Design
|
|
51
|
-
- Code Quality & Review
|
|
52
|
-
- Full-Stack Development
|
|
53
|
-
- Cloud Platforms
|
|
54
|
-
- DevOps & CI/CD
|
|
55
|
-
- Site Reliability Engineering
|
|
56
|
-
|
|
57
|
-
Before making changes:
|
|
58
|
-
|
|
59
|
-
1. Understand the existing architecture and patterns
|
|
60
|
-
2. Identify test coverage requirements
|
|
61
|
-
3. Consider backward compatibility implications
|
|
62
|
-
4. Plan documentation updates
|
|
63
|
-
|
|
64
|
-
## Delegation
|
|
65
|
-
|
|
66
|
-
When facing tasks outside your expertise, use `runSubagent` to delegate:
|
|
67
|
-
|
|
68
|
-
- Data modeling or statistical analysis → data science subagent
|
|
69
|
-
- Security assessment or threat modeling → research subagent
|
|
70
|
-
- Complex debugging across unfamiliar systems → research subagent
|
|
71
|
-
|
|
72
|
-
Subagents run in isolated context. Provide clear task descriptions and specify
|
|
73
|
-
what information to return.
|
|
74
|
-
|
|
75
|
-
## Operational Context
|
|
76
|
-
|
|
77
|
-
In this platform-focused role, you will build internal tooling and shared
|
|
78
|
-
infrastructure that enables other engineering teams to be more productive. As
|
|
79
|
-
part of the discovery-to-scale pipeline, you will receive validated patterns
|
|
80
|
-
from Forward Deployed Engineers and generalize them into self-service platform
|
|
81
|
-
capabilities. You will treat the platform as a product—conducting user research,
|
|
82
|
-
building golden paths, and optimizing for developer experience.
|
|
83
|
-
|
|
84
|
-
## Working Style
|
|
85
|
-
|
|
86
|
-
### Consider the whole system
|
|
87
|
-
|
|
88
|
-
For every change:
|
|
89
|
-
|
|
90
|
-
1. Identify upstream and downstream impacts
|
|
91
|
-
2. Consider non-functional requirements (performance, security)
|
|
92
|
-
3. Document assumptions and trade-offs
|
|
93
|
-
|
|
94
|
-
### Communicate with clarity
|
|
95
|
-
|
|
96
|
-
When providing output:
|
|
97
|
-
|
|
98
|
-
1. Separate blocking issues from suggestions
|
|
99
|
-
2. Explain the "why" behind each recommendation
|
|
100
|
-
3. Provide concrete examples or alternatives
|
|
101
|
-
|
|
102
|
-
### Investigate before acting
|
|
103
|
-
|
|
104
|
-
Before taking action:
|
|
105
|
-
|
|
106
|
-
1. Confirm your understanding of the goal
|
|
107
|
-
2. Identify unknowns that could affect the approach
|
|
108
|
-
3. Research unfamiliar areas via subagent if needed
|
|
109
|
-
|
|
110
|
-
## Return Format
|
|
111
|
-
|
|
112
|
-
When completing work (for handoff or as a subagent), provide:
|
|
113
|
-
|
|
114
|
-
1. **Work completed**: What was accomplished
|
|
115
|
-
2. **Checklist status**: Items verified from Before Handoff section
|
|
116
|
-
3. **Recommendation**: Ready for next stage, or needs more work
|
|
117
|
-
|
|
118
|
-
## Constraints
|
|
119
|
-
|
|
120
|
-
- Do not make code edits or execute commands
|
|
121
|
-
- Specify first (what and why), then plan (how)
|
|
122
|
-
- Write specs and plans as markdown files under specs/[feature-name]/
|
|
123
|
-
- Stop and ask the user when requirements are unclear; do not guess
|
|
124
|
-
- Committing code without running tests
|
|
125
|
-
- Making changes without understanding the existing codebase
|
|
126
|
-
- Ignoring error handling and edge cases
|
|
127
|
-
- Over-engineering simple solutions
|
|
128
|
-
- Maintain backward compatibility
|
|
129
|
-
- Document breaking changes with migration guides
|
|
130
|
-
- Test all changes against real consumer use cases
|
|
131
|
-
- Design for Day 50, not just Day 1
|