Project management
Spatialnode plans work in GitHub Projects and executes it through GitHub Issues. The issue is the durable record of intent, scope, and outcome.
Project fields
Every active project uses these fields:
| Field | Values |
|---|---|
| Status | Backlog, Ready, In progress, In review, Blocked, Done |
| Priority | P0, P1, P2, P3 |
| Size | XS, S, M, L |
| Milestone | Named release, client phase, or operational goal |
| Area | Frontend, Backend, GIS/Data, Infrastructure, Documentation |
Issue lifecycle
stateDiagram-v2
[*] --> Backlog
Backlog --> Ready: scoped + prioritized
Ready --> In_progress: owner starts
In_progress --> In_review: PR opened
In_review --> In_progress: changes requested
In_review --> Done: merged + verified
In_progress --> Blocked: external dependency
Blocked --> Ready: dependency resolved
An issue in Ready has a clear user or operational outcome, acceptance criteria, owner or owning team, and known dependencies. Do not start ambiguous work.
Milestones
Milestones represent an outcome with a date or decision point, not a bucket of unrelated work. Each milestone has an owner, a concise success statement, a target date, and a weekly risk review.
Use priorities consistently:
- P0: active incident, security exposure, or delivery blocker; interrupt normal work.
- P1: committed milestone work or material user impact.
- P2: valuable planned improvement.
- P3: worthwhile but unscheduled.
Definition of done
- [ ] Acceptance criteria are met and confirmed.
- [ ] Tests and quality checks pass.
- [ ] Security, privacy, accessibility, and spatial-data implications were considered.
- [ ] Documentation, runbooks, and dashboards changed where needed.
- [ ] Monitoring or an explicit verification step exists for production behavior.
- [ ] The PR merged, deployed if applicable, and the issue is updated with outcome.
[SCREENSHOT: GitHub Project Board]