You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**WHEN** the project is cleaned for final closeout
32
+
-**THEN** the file MUST remain in `.gitignore` (already configured)
33
+
-**AND** it MUST NOT be tracked in version control
34
+
29
35
### Requirement: Final closeout work proceeds through one umbrella change with ordered phases
30
36
The repository MUST allow a final closeout initiative to run as one umbrella OpenSpec change, provided its internal tasks preserve explicit phase ordering and dependency tracking.
31
37
@@ -52,3 +58,4 @@ Governance documents MUST explain how `/review` or equivalent review steps are u
52
58
- One umbrella closeout change does not imply unordered execution.
53
59
- Review remains present as quality control without becoming a branching ritual.
54
60
- Handoff expectations are explicit enough for a follow-up model or maintainer.
61
+
- All zombie branches have been removed from the remote.
Copy file name to clipboardExpand all lines: openspec/specs/project-surface/spec.md
+16-1Lines changed: 16 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
## ADDED Requirements
1
+
## Requirements
2
2
3
3
### Requirement: The public documentation surface is intentionally small
4
4
The repository MUST keep a small set of maintained public-facing documents and MUST remove or retire low-value, redundant, or stale documentation that is not needed for users or maintainers.
@@ -9,6 +9,18 @@ The repository MUST keep a small set of maintained public-facing documents and M
9
9
-**THEN** one canonical maintained document MUST remain
10
10
-**AND** redundant documents MUST be removed, archived, or replaced with a brief migration breadcrumb
11
11
12
+
#### Scenario: Duplicate source files are removed
13
+
-**GIVEN** duplicate source files exist in the repository (e.g., `src/data_exporter.py` vs `src/data/exporter.py`)
14
+
-**WHEN** the project surface is normalized
15
+
-**THEN** only one version of each module MUST be retained
16
+
-**AND** the retained version MUST be in the canonical location matching `pyproject.toml` package configuration
17
+
18
+
#### Scenario: BMad Skills are removed
19
+
-**GIVEN** the repository contains 46 BMad skills unrelated to the project
20
+
-**WHEN** the project surface is cleaned
21
+
-**THEN** all `bmad-*` skills MUST be removed
22
+
-**AND** only OpenSpec-related skills (`opsx-*`) MAY be retained
23
+
12
24
### Requirement: README is the canonical repository entry point
13
25
The root README MUST present the maintained product story, supported installation paths, and links to the essential documentation surface without duplicating the entire docs site.
14
26
@@ -53,3 +65,6 @@ The maintained docs site MUST keep only pages that serve the product landing sto
53
65
- The docs source tree contains maintainable source, not large reproducible build outputs.
54
66
- Pages content stays aligned with active product messaging.
55
67
- Deep pages exist only when they still explain maintained behavior.
68
+
- No duplicate source files exist in the codebase.
69
+
- All source files match the package configuration in `pyproject.toml`.
70
+
- Only project-relevant skills remain in `.claude/skills/`.
0 commit comments