Add the phase MIL-009 (proposed 2026-12-21 to 2026-12-23): after the framework is installed, the new project excludes .claude, .agents and AGENTS.md through its own .git/info/exclude, so no tracked file changes. The analysis and design documents agree with it: Business Case objective 5, US-001.03, UC-001 (postcondition, step 9, extension 9f, a rule), OC-001 (P15 and two exceptions), SD-001, DCD-001 and DCD-002 (excludeFromGit, trackedPaths), and the Framework Setup and Template definitions in DM-001, DM-002 and the dictionary. Refs #65 Refs #66 Refs #67 Refs #68 Refs #69
6.9 KiB
6.9 KiB
Project Plan
Metadata
| Key | Value |
|---|---|
| ID | PP-001 |
| CrossReference | BC-001, SA-001, MIL-001, MIL-002, MIL-003, MIL-004, MIL-005, MIL-006, MIL-007, MIL-008, MIL-009, US-001 |
Version History
| Date | Status | Author | Reviewer | Change | Commit |
|---|---|---|---|---|---|
| 2026-10-08 | Accepted | Jens Tirsvad Nielsen | S02 | Added phase MIL-008 (proposed dates 2026-12-14 to 2026-12-18): the local project has origin as its only remote | 039a28c |
| 2026-10-08 | Proposed | Jens Tirsvad Nielsen | S02 | Added phase MIL-009 (proposed dates 2026-12-21 to 2026-12-23): the framework files .claude, .agents and AGENTS.md are excluded from git | pending |
Purpose
Schedule the nine phases that deliver RepoFoundry (create-project.sh and its documentation) in dependency order. The Business Case sets no deadline, so the dates below are proposals for S01 to confirm.
Planning Assumptions
- Week 1 starts 2026-10-05; the plan ends by 2026-12-23 (the last four phases are proposed).
- Phase length: two weeks.
- S01 and S02 review each phase through a pull request, as described in SA-001. For now one person holds both roles.
- The PO language is English, so no translated copies are kept.
Gateway Schedule
| Gateway | Document | Window | Decision date | Owner | Stories | Main deliverable | Milestone |
|---|---|---|---|---|---|---|---|
| Foundation | MIL-001 | 2026-10-05 to 2026-10-16 | 2026-10-16 | S01 | US-001.01 | Safe skeleton, config parsing, prompts, tests | Milestone 43 |
| Repositories and Mirror | MIL-002 | 2026-10-19 to 2026-10-30 | 2026-10-30 | S02 | US-001.02 | GitHub and Gitea repositories and the push mirror | Milestone 44 |
| Scaffold and Release | MIL-003 | 2026-11-02 to 2026-11-13 | 2026-11-13 | S01 | US-001.03 | Local project, framework, README, final review | Milestone 45 |
| Configurable Details | MIL-004 | 2026-11-16 to 2026-11-20 | 2026-11-20 | S01 | US-001.04 | Project details preset in config.env | |
| Credentials | MIL-005 | 2026-11-23 to 2026-11-27 | 2026-11-27 | S01 | US-001.05 | Missing credentials asked; project .env | |
| Project License | MIL-006 | 2026-11-30 to 2026-12-04 | 2026-12-04 | S01 | US-001.06 | PROJECT_LICENSE in config.env; AGPL-3.0 default only for a public GitHub project | |
| Framework Checklists and Usage | MIL-007 | 2026-12-07 to 2026-12-11 | 2026-12-11 | S01 | US-001.07 | qc fetched with the framework; global command; README usage | |
| Gitea Is the Only Remote | MIL-008 | 2026-12-14 to 2026-12-18 | 2026-12-18 | S01 | US-001.03 | The local project has origin only; GitHub is reached through the mirror |
|
| Framework Files Excluded from Git | MIL-009 | 2026-12-21 to 2026-12-23 | 2026-12-23 | S01 | US-001.03 | .claude, .agents and AGENTS.md excluded from git in the new project |
@startgantt
Project starts 2026-10-05
[Foundation] starts 2026-10-05 and ends 2026-10-16
[Foundation Go/No-Go] happens 2026-10-16
[Repositories and Mirror] starts 2026-10-19 and ends 2026-10-30
[Repositories and Mirror Go/No-Go] happens 2026-10-30
[Scaffold and Release] starts 2026-11-02 and ends 2026-11-13
[Scaffold and Release Go/No-Go] happens 2026-11-13
[Configurable Details] starts 2026-11-16 and ends 2026-11-20
[Configurable Details Go/No-Go] happens 2026-11-20
[Credentials] starts 2026-11-23 and ends 2026-11-27
[Credentials Go/No-Go] happens 2026-11-27
[Project License] starts 2026-11-30 and ends 2026-12-04
[Project License Go/No-Go] happens 2026-12-04
[Framework Checklists and Usage] starts 2026-12-07 and ends 2026-12-11
[Framework Checklists and Usage Go/No-Go] happens 2026-12-11
[Gitea Is the Only Remote] starts 2026-12-14 and ends 2026-12-18
[Gitea Is the Only Remote Go/No-Go] happens 2026-12-18
[Framework Files Excluded from Git] starts 2026-12-21 and ends 2026-12-23
[Framework Files Excluded from Git Go/No-Go] happens 2026-12-23
@endgantt
Scope Coverage
| Business Case scope item | Gateway |
|---|---|
Safe parsing of config.env and .env, tool checks, prompts, .gitignore |
MIL-001 |
| Project name check on GitHub | MIL-001 |
| Creation of both repositories and the push mirror | MIL-002 |
| Partial-failure reporting | MIL-002 |
| Local directory, remotes, framework submodule, skills, hooks, templates, plan gate | MIL-003 |
| README and SSH prerequisite documentation | MIL-003 |
Project details set in config.env instead of asked |
MIL-004 |
Missing credentials asked; the new project's .env |
MIL-005 |
Project license set in config.env |
MIL-006 |
| Framework's own submodules fetched | MIL-007 |
| README usage from the target folder and as a global command | MIL-007 |
The local project has origin as its only remote |
MIL-008 |
.claude, .agents and AGENTS.md excluded from git in the new project |
MIL-009 |
Dependencies
MIL-001 → MIL-002 → MIL-003 → MIL-004 → MIL-005 → MIL-006 → MIL-007 → MIL-008 → MIL-009
A No-Go moves every later date by the time needed to rework the failed criteria.
Plan Risks
| Risk | Impact | Mitigation |
|---|---|---|
| No disposable GitHub organization for testing | Organization-owner path untested | Agree the test owners before MIL-002 starts |
| Gitea API behaviour differs from the swagger on the live server | Mirror task takes longer | Test against git.tirsystem.com early in MIL-002 |
Open Issues
- Decided: the proposed dates are accepted with this plan (S01 asked for its acceptance on 2026-10-05); a change needs a new Version History row.
- Decided:
originuses HTTPS derived fromGITEA_URL, unless the SSH test passed, in which case it uses SSH on port 10022. - Decided: use case UC-001 "Create a new project" is created, with SSD-001; tasks that implement its steps reference it.
- Decided: S01 and S02 are both held by one person for now.
- Open: this plan says the script does not make the first commit; confirm before MIL-003 starts.