@forwardimpact/map 0.11.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 (83) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +67 -0
  3. package/bin/fit-map.js +287 -0
  4. package/examples/behaviours/_index.yaml +8 -0
  5. package/examples/behaviours/outcome_ownership.yaml +43 -0
  6. package/examples/behaviours/polymathic_knowledge.yaml +41 -0
  7. package/examples/behaviours/precise_communication.yaml +39 -0
  8. package/examples/behaviours/relentless_curiosity.yaml +37 -0
  9. package/examples/behaviours/systems_thinking.yaml +40 -0
  10. package/examples/capabilities/_index.yaml +8 -0
  11. package/examples/capabilities/business.yaml +205 -0
  12. package/examples/capabilities/delivery.yaml +1001 -0
  13. package/examples/capabilities/people.yaml +68 -0
  14. package/examples/capabilities/reliability.yaml +349 -0
  15. package/examples/capabilities/scale.yaml +1672 -0
  16. package/examples/copilot-setup-steps.yaml +25 -0
  17. package/examples/devcontainer.yaml +21 -0
  18. package/examples/disciplines/_index.yaml +6 -0
  19. package/examples/disciplines/data_engineering.yaml +68 -0
  20. package/examples/disciplines/engineering_management.yaml +61 -0
  21. package/examples/disciplines/software_engineering.yaml +68 -0
  22. package/examples/drivers.yaml +202 -0
  23. package/examples/framework.yaml +73 -0
  24. package/examples/levels.yaml +115 -0
  25. package/examples/questions/behaviours/outcome_ownership.yaml +228 -0
  26. package/examples/questions/behaviours/polymathic_knowledge.yaml +275 -0
  27. package/examples/questions/behaviours/precise_communication.yaml +248 -0
  28. package/examples/questions/behaviours/relentless_curiosity.yaml +248 -0
  29. package/examples/questions/behaviours/systems_thinking.yaml +238 -0
  30. package/examples/questions/capabilities/business.yaml +107 -0
  31. package/examples/questions/capabilities/delivery.yaml +101 -0
  32. package/examples/questions/capabilities/people.yaml +106 -0
  33. package/examples/questions/capabilities/reliability.yaml +105 -0
  34. package/examples/questions/capabilities/scale.yaml +104 -0
  35. package/examples/questions/skills/architecture_design.yaml +115 -0
  36. package/examples/questions/skills/cloud_platforms.yaml +105 -0
  37. package/examples/questions/skills/code_quality.yaml +162 -0
  38. package/examples/questions/skills/data_modeling.yaml +107 -0
  39. package/examples/questions/skills/devops.yaml +111 -0
  40. package/examples/questions/skills/full_stack_development.yaml +118 -0
  41. package/examples/questions/skills/sre_practices.yaml +113 -0
  42. package/examples/questions/skills/stakeholder_management.yaml +116 -0
  43. package/examples/questions/skills/team_collaboration.yaml +106 -0
  44. package/examples/questions/skills/technical_writing.yaml +110 -0
  45. package/examples/self-assessments.yaml +64 -0
  46. package/examples/stages.yaml +191 -0
  47. package/examples/tracks/_index.yaml +5 -0
  48. package/examples/tracks/platform.yaml +47 -0
  49. package/examples/tracks/sre.yaml +46 -0
  50. package/examples/vscode-settings.yaml +21 -0
  51. package/package.json +49 -0
  52. package/schema/json/behaviour-questions.schema.json +95 -0
  53. package/schema/json/behaviour.schema.json +73 -0
  54. package/schema/json/capability-questions.schema.json +95 -0
  55. package/schema/json/capability.schema.json +229 -0
  56. package/schema/json/defs.schema.json +132 -0
  57. package/schema/json/discipline.schema.json +123 -0
  58. package/schema/json/drivers.schema.json +48 -0
  59. package/schema/json/framework.schema.json +68 -0
  60. package/schema/json/levels.schema.json +121 -0
  61. package/schema/json/self-assessments.schema.json +52 -0
  62. package/schema/json/skill-questions.schema.json +83 -0
  63. package/schema/json/stages.schema.json +88 -0
  64. package/schema/json/track.schema.json +95 -0
  65. package/schema/rdf/behaviour-questions.ttl +128 -0
  66. package/schema/rdf/behaviour.ttl +130 -0
  67. package/schema/rdf/capability.ttl +466 -0
  68. package/schema/rdf/defs.ttl +396 -0
  69. package/schema/rdf/discipline.ttl +313 -0
  70. package/schema/rdf/drivers.ttl +84 -0
  71. package/schema/rdf/framework.ttl +166 -0
  72. package/schema/rdf/levels.ttl +357 -0
  73. package/schema/rdf/self-assessments.ttl +147 -0
  74. package/schema/rdf/skill-questions.ttl +155 -0
  75. package/schema/rdf/stages.ttl +166 -0
  76. package/schema/rdf/track.ttl +225 -0
  77. package/src/index-generator.js +65 -0
  78. package/src/index.js +44 -0
  79. package/src/levels.js +553 -0
  80. package/src/loader.js +608 -0
  81. package/src/modifiers.js +23 -0
  82. package/src/schema-validation.js +438 -0
  83. package/src/validation.js +2136 -0
@@ -0,0 +1,37 @@
1
+ # yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/behaviour.schema.json
2
+
3
+ name: Don't Lose Your Curiosity
4
+ human:
5
+ description:
6
+ The driving force behind learning and invention. Protect your instinct to
7
+ break things down and understand them deeply. Embrace an experimental spirit
8
+ that treats failure as a path to discovery, not a setback to avoid.
9
+ maturityDescriptions:
10
+ emerging:
11
+ Asks basic questions when prompted; shows interest in learning about
12
+ immediate tasks; willing to try new approaches
13
+ developing:
14
+ Regularly asks clarifying questions about "why" and "how"; explores
15
+ related topics with guidance; experiments without fear of failure;
16
+ investigates how AI tools work rather than using them blindly
17
+ practicing:
18
+ Proactively investigates root causes; experiments with new technologies
19
+ and AI capabilities; protects time for exploration; treats failure as
20
+ learning; discovers requirements through immersion in problem spaces
21
+ role_modeling:
22
+ Drives team curiosity through challenging questions; creates environments
23
+ where exploration and experimentation are encouraged; models problem
24
+ discovery orientation; seeks out ambiguity rather than avoiding it
25
+ exemplifying:
26
+ Shapes organizational culture around curiosity and continuous learning;
27
+ sponsors experimental initiatives across the organization; recognized
28
+ externally as a thought leader in problem discovery; influences industry
29
+ practices around innovation and exploration
30
+
31
+ agent:
32
+ title: Investigate before acting
33
+ workingStyle: |
34
+ Before taking action:
35
+ 1. Confirm your understanding of the goal
36
+ 2. Identify unknowns that could affect the approach
37
+ 3. Research unfamiliar areas via subagent if needed
@@ -0,0 +1,40 @@
1
+ # yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/behaviour.schema.json
2
+
3
+ name: Think in Systems
4
+ human:
5
+ description:
6
+ The ability to see beyond individual components to understand how the entire
7
+ system behaves. Like understanding how reintroducing wolves to Yellowstone
8
+ transformed not just deer but rivers, engineers recognize that every
9
+ service, API, and queue is part of a larger whole—isolated changes ripple
10
+ across the system.
11
+ maturityDescriptions:
12
+ emerging:
13
+ Recognizes that systems have interconnected parts; considers immediate
14
+ dependencies in code; understands basic cause-and-effect
15
+ developing:
16
+ Identifies upstream and downstream impacts; uses observability tools to
17
+ trace requests across services; understands feedback loops; maps
18
+ dependencies before making changes
19
+ practicing:
20
+ Maps complex system interactions across technical and business domains;
21
+ anticipates cascading effects; designs systems that degrade gracefully;
22
+ understands how technology changes impact business operations
23
+ role_modeling:
24
+ Shapes systems design practices across their function; conducts chaos
25
+ engineering experiments; influences cross-team architecture decisions;
26
+ creates clarity from complexity; bridges technical systems with business
27
+ processes
28
+ exemplifying:
29
+ Defines organizational systems architecture principles; recognized
30
+ industry authority on complex systems; advises executive leadership on
31
+ systemic risks and opportunities; publishes thought leadership on systems
32
+ thinking in technology organizations
33
+
34
+ agent:
35
+ title: Consider the whole system
36
+ workingStyle: |
37
+ For every change:
38
+ 1. Identify upstream and downstream impacts
39
+ 2. Consider non-functional requirements (performance, security)
40
+ 3. Document assumptions and trade-offs
@@ -0,0 +1,8 @@
1
+ # Auto-generated index for browser loading
2
+ # Do not edit manually - regenerate with: npx pathway --generate-index
3
+ files:
4
+ - business
5
+ - delivery
6
+ - people
7
+ - reliability
8
+ - scale
@@ -0,0 +1,205 @@
1
+ # yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/capability.schema.json
2
+
3
+ name: Business
4
+ emojiIcon: 💼
5
+ ordinalRank: 8
6
+ description: |
7
+ Understanding and driving business value.
8
+ Includes domain knowledge, stakeholder management, strategic thinking,
9
+ and translating between technical and business contexts.
10
+ professionalResponsibilities:
11
+ awareness:
12
+ You understand the business context for your assigned work and communicate
13
+ progress clearly when asked
14
+ foundational:
15
+ You connect your technical work to business outcomes, engage with
16
+ stakeholders to clarify requirements
17
+ working:
18
+ You translate business needs into technical solutions, manage stakeholder
19
+ expectations, and articulate technical decisions in business terms
20
+ practitioner:
21
+ You drive business outcomes through technical solutions across your area,
22
+ influence product roadmaps, and partner effectively with business
23
+ stakeholders
24
+ expert:
25
+ You shape technology-driven business strategy, represent the technical
26
+ perspective at executive level, and are recognized as a bridge between
27
+ engineering and business
28
+ managementResponsibilities:
29
+ awareness:
30
+ You understand business context and communicate team progress to
31
+ stakeholders with guidance
32
+ foundational:
33
+ You align team priorities with business objectives, manage stakeholder
34
+ relationships, and communicate team impact
35
+ working:
36
+ You translate business strategy into team objectives, own stakeholder
37
+ relationships, and ensure your team delivers business value
38
+ practitioner:
39
+ You partner with business leaders to shape strategy for your area, influence
40
+ direction across teams, and deliver measurable business impact
41
+ expert:
42
+ You shape technology-driven business strategy, represent engineering at
43
+ executive level, and own strategic business outcomes
44
+ skills:
45
+ - id: stakeholder_management
46
+ name: Stakeholder Management
47
+ isHumanOnly: true
48
+ human:
49
+ description:
50
+ Building relationships with and managing expectations of stakeholders
51
+ across the organization, from frontline workers to C-level executives
52
+ proficiencyDescriptions:
53
+ awareness:
54
+ You identify key stakeholders for your work and communicate status
55
+ when asked. You understand that different stakeholders have different
56
+ needs.
57
+ foundational:
58
+ You proactively update stakeholders on progress, handle basic
59
+ expectation setting, and escalate concerns appropriately. You build
60
+ rapport with regular collaborators.
61
+ working:
62
+ You manage multiple stakeholders with different interests, navigate
63
+ conflicting priorities diplomatically, and build trust through
64
+ consistent delivery. You tailor communication to each audience.
65
+ practitioner:
66
+ You influence senior stakeholders effectively across your area, manage
67
+ complex stakeholder landscapes with competing agendas, build trust
68
+ rapidly with new stakeholders, and shield teams from organizational
69
+ friction.
70
+ expert:
71
+ You shape stakeholder practices across the business unit. You manage
72
+ executive relationships, represent engineering at the highest levels,
73
+ and are recognized for exceptional stakeholder partnerships.
74
+ - id: technical_writing
75
+ name: Technical Writing
76
+ human:
77
+ description:
78
+ Creating clear, accurate, and useful technical documentation. Good specs
79
+ enable AI to generate accurate solutions; poor specs lead to poor
80
+ results.
81
+ proficiencyDescriptions:
82
+ awareness:
83
+ You document your own work following team templates and standards. You
84
+ keep code comments current and write basic README content.
85
+ foundational:
86
+ You write clear READMEs, inline documentation, and technical guides.
87
+ You update existing docs when making changes and ensure documentation
88
+ matches implementation.
89
+ working:
90
+ You create comprehensive documentation for complex systems. You write
91
+ precise specifications that enable accurate AI-generated code,
92
+ establish documentation practices for your projects, and ensure docs
93
+ are discoverable.
94
+ practitioner:
95
+ You define documentation standards across teams in your area, create
96
+ documentation systems and templates, train engineers on spec-driven
97
+ development, and ensure documentation quality across projects.
98
+ expert:
99
+ You shape documentation culture and standards across the business
100
+ unit. You innovate on documentation approaches, are recognized for
101
+ exceptional technical writing clarity, and lead documentation
102
+ initiatives.
103
+ agent:
104
+ name: technical-writing
105
+ description: Guide for creating clear technical documentation.
106
+ useWhen: |
107
+ Writing READMEs, API docs, specifications, or any technical content
108
+ that needs to be clear and accurate.
109
+ stages:
110
+ specify:
111
+ focus: |
112
+ Define documentation requirements and audience needs.
113
+ Clarify what the documentation must accomplish.
114
+ readChecklist:
115
+ - Identify target audience and their skill level
116
+ - Document what questions the docs must answer
117
+ - Define documentation type (README, API, spec, tutorial)
118
+ - Specify accuracy and completeness requirements
119
+ - Mark ambiguities with [NEEDS CLARIFICATION]
120
+ confirmChecklist:
121
+ - Audience is identified
122
+ - Questions to answer are documented
123
+ - Documentation type is chosen
124
+ - Requirements are clear
125
+ plan:
126
+ focus: Understanding audience and planning documentation
127
+ readChecklist:
128
+ - Identify target audience and their needs
129
+ - Determine document type and structure
130
+ - List prerequisites and assumptions
131
+ - Outline key sections and content
132
+ confirmChecklist:
133
+ - Audience is identified
134
+ - Document type and structure planned
135
+ - Prerequisites listed
136
+ - Outline complete
137
+ onboard:
138
+ focus: |
139
+ Set up the documentation environment. Install documentation
140
+ tools, configure rendering, and verify preview works.
141
+ readChecklist:
142
+ - Install documentation framework (MkDocs, Docusaurus, etc.)
143
+ - Configure markdown linter (markdownlint)
144
+ - Set up diagram rendering (Mermaid, PlantUML)
145
+ - Configure spell checker (cspell)
146
+ - Verify documentation preview server works
147
+ confirmChecklist:
148
+ - Documentation framework builds without errors
149
+ - Markdown linter runs and catches issues
150
+ - Diagrams render correctly in preview
151
+ - Spell checker configured with project dictionary
152
+ - Preview server shows formatted documentation
153
+ code:
154
+ focus: Writing clear and accurate documentation
155
+ readChecklist:
156
+ - Write using simple, direct language
157
+ - Structure content for scanning
158
+ - Include tested, runnable examples
159
+ - Define technical terms
160
+ confirmChecklist:
161
+ - Purpose clear in first paragraph
162
+ - Examples are tested and work
163
+ - Technical terms are defined
164
+ - Structure supports scanning
165
+ review:
166
+ focus: Verifying documentation quality
167
+ readChecklist:
168
+ - Check accuracy against implementation
169
+ - Verify examples are runnable
170
+ - Review for clarity and completeness
171
+ - Test with target audience if possible
172
+ confirmChecklist:
173
+ - Documentation matches implementation
174
+ - All examples verified working
175
+ - No ambiguous pronouns
176
+ - Structure is logical and complete
177
+ deploy:
178
+ focus: |
179
+ Publish documentation and ensure it reaches the audience.
180
+ Set up maintenance process.
181
+ readChecklist:
182
+ - Publish to documentation site
183
+ - Announce to relevant teams
184
+ - Add to search indexes and navigation
185
+ - Establish update and review schedule
186
+ confirmChecklist:
187
+ - Documentation is published and accessible
188
+ - Audience can discover and find it
189
+ - Search and navigation are updated
190
+ - Maintenance schedule is established
191
+ implementationReference: |
192
+ ## Document Types
193
+
194
+ | Type | Purpose | Key Sections |
195
+ |------|---------|--------------|
196
+ | README | Project overview | Description, Getting Started, Usage |
197
+ | API Docs | API reference | Endpoints, Parameters, Examples |
198
+ | Spec | Design proposal | Problem, Solution, Alternatives |
199
+ | Tutorial | Learning guide | Objective, Steps, Outcomes |
200
+
201
+ ## Writing Principles
202
+ - Use simple, direct language
203
+ - One idea per sentence
204
+ - Active voice over passive
205
+ - Lead with most important info