@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,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