NEP-0001: NOC Problem Statement Process¶
This document defines the process and lifecycle of NOC Problem Statements (NPS) — a formal mechanism for identifying, describing, and tracking known problems, limitations, or challenges within the NOC platform.
What is an NPS?¶
A NOC Problem Statement (NPS) is a document that formally describes an existing issue,
design limitation, or architectural constraint in the NOC platform.
NPS documents are intended to foster understanding, encourage discussion, and provide
a foundation for future proposals (NEPs) aimed at solving the problems.
Goals of the NPS process¶
- Encourage the transparent documentation of current problems
- Create a shared understanding of platform limitations
- Help guide future NEPs toward meaningful and needed improvements
- Maintain a historical record of resolved, rejected, or evolving challenges
NPS Workflow¶
The NPS process follows the same state model as NEPs:
- 📝 Draft — A new NPS is written and submitted as a draft, typically as a pull request.
- 💬 Discussion — The NPS is reviewed, discussed, and possibly revised.
- ✅ Accepted — Once consensus is reached, the NPS is acknowledged as valid and marked
Accepted
. - 🛠️ In Progress — The problem is being actively addressed, often in connection with an NEP.
- ❌ Rejected — The problem is deemed invalid or not actionable and marked as
Rejected
. - 🚀 Done — The issue has been successfully resolved and is marked
Done
.
stateDiagram-v2
draft: 📝 Draft
discussion: 💬 Discussion
accepted: ✅ Accepted
inprogress: 🛠️ In Progress
rejected: ❌ Rejected
done: 🚀 Done
[*] --> draft
draft --> discussion
discussion --> draft
draft --> rejected
discussion --> accepted
discussion --> rejected
accepted --> inprogress
inprogress --> done
NPS Metadata¶
Each NPS must include a YAML metadata block at the top:
---
nps: NPS-xxxx
title: Descriptive Title
author: Your Name or Team
status: Draft | Discussion | Accepted | Rejected | In Progress | Done
created: YYYY-MM-DD
---
NPS Filename and Numbering¶
- NPS documents must be placed in docs/nps/
- Filenames must be lowercase and follow the format: nps-XXXX.md
- NPS numbers are 4-digit, zero-padded integers, assigned sequentially
- There are no reserved numbers, but early entries may describe process-related matters
Best Practices¶
- Clearly describe the observed issue or limitation
- Avoid proposing solutions in the NPS itself (save those for NEPs)
- Include affected subsystems, impact level, and any relevant background
- Link to related NEPs, bugs, or documentation if available
How to Contribute an NPS¶
- Fork this repository
- Create a new file docs/nps/nps-XXXX.md
- Add a reference to docs/nps/SUMMARY.md
- Write the problem statement following this template
- Submit a merge request for review