How we can make our decision-making visible, explainable, and reusable
To meaningfully collaborate, both core and external contributors need more than open code and design—they need context. This post proposes a lightweight but powerful way to log the thinking behind our product decisions, tradeoffs, and implementation paths. It’s one of the first improvements we’ll be experimenting with starting in May to make building in public more productive, collaborative, and sustainable.
Observation
It’s surprisingly easy to open the code and still keep the thinking closed.
Even for experienced contributors, it can be difficult to engage meaningfully when product rationale and decisions are buried across Discord threads or scattered chats. Following outcomes becomes easier than understanding the “why”—and that dynamic quietly recreates top-down hierarchies, even in open-source settings.
A helpful analogy
The products and services we create are like software.
But our culture—how we solve problems, communicate, share knowledge, and make decisions—is more like hardware.
It sets the constraints and capabilities of everything we build on top.
To truly build in an open-source way—beyond Status, at the wider IFT and public level—we need to keep both the software and the “hardware silicon” of culture open. That means:
- Code and protocols → open, auditable, forkable
- Decision-making and culture → visible, explainable, reusable
Without both, we risk creating barriers to contribution—even when the code is public. Making our culture of decision-making transparent turns open code into an open project.
A proposal: Feature Context Doc
I’m suggesting we start maintaining a simple Feature Context Doc for each epic or problem space. These live in Notion (or any open wiki with inline comments) and are:
- Created during epic decomposition
- Co-authored by developers, design, QA, and tech writers
- Updated as decisions evolve
- Linked from the GitHub Epic
- Open whenever possible
Important note: This is not a product brief. The brief is a high-level feature request from a product lead, grounded in business or user needs.
The Feature Context Doc picks up from there—capturing the deeper design, tech, and implementation context needed to execute well.
Suggested structure
This isn’t rigid—but from experience, these sections help everyone stay aligned:
1. Current state
What exists today? What works, what doesn’t?
Known issues, UX gaps, or QA insights
2. Reusability
What parts of the frontend/backend can be reused?
What needs redesign or cleanup?
3. Dependencies
What APIs, protocols, or third-party tools are involved?
What tradeoffs exist between alternatives?
4. Agreed compromises
Where are we intentionally cutting corners to deliver value faster?
What risks are we accepting?
5. Success metrics
How will we know this worked?
Direct or indirect indicators (conversion, feedback, reduced bug volume, etc.)
6. Traceability
Links to Discord threads, specs, Figma, research, user input, etc.
This helps people catch up without needing a deep Discord archaeology session.
To be clear: this isn’t about replacing Discord discussions.
The goal is to complement them—by giving key decisions and insights a structured, searchable home. That way, even deep async collaboration stays aligned, and contributors don’t have to reverse-engineer decisions from scattered threads.
Benefits
- Faster onboarding to active participation for internal and external contributors
- Better async work with fewer misunderstandings
- More autonomy across product, design, and engineering
- Less duplicated effort and more durable team knowledge
- Documentation of rationale, not just implementation
TL;DR
- Open code isn’t enough—we also need to open up decision-making
- Feature Context Docs are structured, evolving documents created after a team receives a brief from the product lead
- They include: current state, reuse, dependencies, compromises, metrics, and links to decision history
- These docs improve onboarding, reduce ambiguity, and make async collaboration easier
- This is one of the small improvements we’ll start experimenting with in May
- Happy to share a template—curious what others think and how you approach this
Thanks for reading. Sharing this based on what I’ve seen across Status Mobile, Desktop, Shell, and Keycard workflows—shaped by the evolution we’ve made as one team and one org over the past year. Feedback welcome, and I’d love to hear how others are making thinking visible in open work.
Update (based on @Tetiana feedback):
Thanks to some insightful discussion, I’ve clarified a few key points:
- Feature Context Docs are not formal specs—they’re lightweight, living references meant to reduce noise and help everyone stay in sync.
- Planning one milestone ahead is essential for this to work well. We’re already moving in that direction, and I see this as part of that evolution.
Appreciate the feedback—it helped refine the intent and fill in blind spots. Let’s keep shaping this together