PRs 32 and 33 were merged into their stacked base branches, so their content never reached main; PR 26 was merged before the live end-to-end fixes were pushed to its branch. This PR brings all of it to main (11 commits).
1. Live end-to-end fixes and results (RC-017)
stdin is closed for ssh, git, curl and the framework scripts, so a real ssh no longer swallows answers meant for later prompts
LICENSE and LICENSE + README.md (what Gitea creates) count as content the script made, so a partly created repository can be reused
README documents the observed token scopes (write:user for user-owned Gitea repositories)
MIL-002 criterion 2 corrected (new Proposed row)
RC-017 records the live runs: the organization-owner run (B) and, with a write:user token, the user-owner run (A2) both pass on both hosts, with all eight MIL-004 details taken from config.env; criterion 7 is now Pass. The verdict stays Go-with-conditions: the README review (criterion 6) is the one condition left
2. The MIL-004 plan (accepted, RC-018)
Business Case objective 8, US-001.04, UC-001 extensions 3a and 3b, SSD, OC, SD, DM-001, DM-002, Project Plan, milestone MIL-004
PRs 32 and 33 were merged into their stacked base branches, so their content never reached `main`; PR 26 was merged before the live end-to-end fixes were pushed to its branch. This PR brings all of it to `main` (11 commits).
**1. Live end-to-end fixes and results (RC-017)**
- stdin is closed for `ssh`, `git`, `curl` and the framework scripts, so a real `ssh` no longer swallows answers meant for later prompts
- `LICENSE` and `LICENSE` + `README.md` (what Gitea creates) count as content the script made, so a partly created repository can be reused
- README documents the observed token scopes (`write:user` for user-owned Gitea repositories)
- MIL-002 criterion 2 corrected (new Proposed row)
- RC-017 records the live runs: the organization-owner run (B) and, with a `write:user` token, the user-owner run (A2) both pass on both hosts, with all eight MIL-004 details taken from `config.env`; criterion 7 is now Pass. The verdict stays Go-with-conditions: the README review (criterion 6) is the one condition left
**2. The MIL-004 plan (accepted, RC-018)**
- Business Case objective 8, US-001.04, UC-001 extensions 3a and 3b, SSD, OC, SD, DM-001, DM-002, Project Plan, milestone MIL-004
**3. MIL-004 implementation (RC-019, Go)**
- Eight optional keys in `config.env`: `PROJECT_NAME`, `PROJECT_DESCRIPTION`, `PROJECT_VISIBILITY`, `GITEA_OWNER`, `USE_GITHUB`, `GITHUB_OWNER`, `PROJECT_DIRECTORY`, `ENABLE_PLAN_GATE`
- A key that is present counts as set (only the description may be empty); it is not asked and the summary marks it `(from config.env)`
- An invalid value stops the run before any request and names the key; it never falls back to asking
- `USE_GITHUB=no` skips the GitHub owner; a stray `GITHUB_OWNER` is ignored with a warning
- The confirmations stay interactive and default to no
- A value containing ` #` must be quoted (documented and tested)
- New keys are rejected in `.env`; `config.env` is now ignored by git; `.env.example` gets a section banner
**Tests:** full suite 923 checks, 0 failed; mutation check done.
Not closed here: #20 (end-to-end test and final security review) stays open until the README review (RC-017 criterion 6) is done.
Closes #27
Closes #28
Closes #29
Closes #30
Closes #31
Refs #20
🤖 Generated with [Claude Code](https://claude.com/claude-code)
- Close stdin for ssh, git, curl and the framework scripts, so a real ssh
no longer swallows answers meant for later prompts.
- Count LICENSE and LICENSE + README.md (what Gitea creates) as content
the script made, so a partly created repository can be reused.
- Document the observed token scopes (write:user for user-owned Gitea
repositories) and the Gitea README.md in the README.
- Correct criterion 2 of MIL-002 (new Proposed version row).
- Record the run and the final security review as RC-017.
- Tests: stdin regression, initial_only reuse, other files count as
content, example config needs its address edited.
Task: MIL-003#6
Task: MIL-002#1
Refs #20
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Add objective 8 to the Business Case, US-001.04, extensions 3a and 3b of
UC-001 and the matching SSD, OC, SD, DM-001 and DM-002 notes. Add the phase
to the Project Plan and the milestone MIL-004 with eight Go/No-Go criteria
and five tasks (issues #27 to #31). Review recorded in RC-018.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Eight optional keys (PROJECT_NAME, PROJECT_DESCRIPTION, PROJECT_VISIBILITY,
GITEA_OWNER, USE_GITHUB, GITHUB_OWNER, PROJECT_DIRECTORY, ENABLE_PLAN_GATE)
are read and checked with the validators the prompts use. A key that is
present counts as set (only the description may be empty); it is not asked
and the summary marks it "(from config.env)". An invalid value stops the
run before any request and names the key. USE_GITHUB=no skips the GitHub
owner and warns about a stray GITHUB_OWNER. The confirmations stay
interactive. Keys and an example are documented; tests cover every key.
Task: MIL-004#1
Task: MIL-004#2
Task: MIL-004#3
Task: MIL-004#4
Task: MIL-004#5
Closes#27Closes#28Closes#29Closes#30Closes#31
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Say in the README and config.env.example that a value containing " #"
must be quoted, and pin both behaviours with a test.
- Say in the script header and the README that details set in config.env
are not asked.
- Record the review as RC-019 and link it in the traceability matrix.
Task: MIL-004#4
Task: MIL-004#5
Refs #30
Refs #31
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
The file holds the Maintainer's own addresses and project details, so it
stays out of the repository like .env.
Refs #31
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
PRs 32 and 33 were merged into their stacked base branches, so their content never reached
main; PR 26 was merged before the live end-to-end fixes were pushed to its branch. This PR brings all of it tomain(11 commits).1. Live end-to-end fixes and results (RC-017)
ssh,git,curland the framework scripts, so a realsshno longer swallows answers meant for later promptsLICENSEandLICENSE+README.md(what Gitea creates) count as content the script made, so a partly created repository can be reusedwrite:userfor user-owned Gitea repositories)write:usertoken, the user-owner run (A2) both pass on both hosts, with all eight MIL-004 details taken fromconfig.env; criterion 7 is now Pass. The verdict stays Go-with-conditions: the README review (criterion 6) is the one condition left2. The MIL-004 plan (accepted, RC-018)
3. MIL-004 implementation (RC-019, Go)
config.env:PROJECT_NAME,PROJECT_DESCRIPTION,PROJECT_VISIBILITY,GITEA_OWNER,USE_GITHUB,GITHUB_OWNER,PROJECT_DIRECTORY,ENABLE_PLAN_GATE(from config.env)USE_GITHUB=noskips the GitHub owner; a strayGITHUB_OWNERis ignored with a warning#must be quoted (documented and tested).env;config.envis now ignored by git;.env.examplegets a section bannerTests: full suite 923 checks, 0 failed; mutation check done.
Not closed here: #20 (end-to-end test and final security review) stays open until the README review (RC-017 criterion 6) is done.
Closes #27
Closes #28
Closes #29
Closes #30
Closes #31
Refs #20
🤖 Generated with Claude Code