Files
RepoFoundry/docs/uc-001/ssd.md
T
TirsvadandClaude Sonnet 5.5 ded26a658c Plan MIL-005: ask for missing credentials and create the project .env
Add objective 9 to the Business Case (and amend objective 6 and success
criterion 1: a token may be written only to the new project's .env after a
yes), US-001.05, UC-001 extensions 2b, 9c and 9d, with the SSD, OC, SD,
DM-001, DM-002 and dictionary in step. Add the classes CredentialCollector,
EnvFileWriter and EnvFile to DCD-001 and DCD-002, and both ends'
multiplicities to every association. Restore three lines of SD-001 damaged
by an earlier edit.

Add milestone MIL-005 (9 Go/No-Go criteria, 5 tasks) and its phase in the
Project Plan. Accept the planning set and the two DCDs; reviews recorded in
RC-020 and RC-021.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-06 12:47:26 +08:00

2.3 KiB

System Sequence Diagram

Metadata

Key Value
ID SSD-001
CrossReference UC-001, DM-001, OC-001

Version History

Date Status Author Reviewer Change Commit
2026-10-05 Deprecated Jens Tirsvad Nielsen S02 Parameters may come from config.env; the message is unchanged 2a6bb8e
2026-10-06 Accepted Jens Tirsvad Nielsen S02 writeEnvFile parameter and the credentials that .env does not provide pending

Source Use Case

Create a new project (UC-001) — scenario: main success scenario

Diagram

@startuml
actor Maintainer as A
participant ":System" as S
A -> S : startProjectCreation()
S --> A : prompts for project details
A -> S : provideProjectDetails(name, description, visibility, giteaOwner, githubOwner, directory, enablePlanGate, writeEnvFile)
S --> A : checks passed
S --> A : creation summary
@enduml

System Operations

Step Message Parameters Return Use case step
1 startProjectCreation none prompts for project details (after configuration and tool checks; a missing credential is asked first) 1, 2
2 provideProjectDetails name, description, visibility, giteaOwner, githubOwner (optional; given means GitHub is chosen and the Gitea repository gets the AGPL license; omitted means no GitHub and no license), directory, enablePlanGate (each of these may come from config.env instead of the Maintainer; the message is unchanged), writeEnvFile (whether to create the project's .env), and the credentials that .env does not provide (GitHub ones only when GitHub is chosen) checks passed, then a creation summary 3 to 10

Steps 4 to 9 are internal to the system, so one operation covers them. A consent question (step 8a, 9a, 9b) is a prompt from the system and is out of scope for this diagram; failure flows are out of scope here.

Lifecycle Notes

The system is one script run. It starts with the first operation and ends after the summary; nothing persists between runs except the .env the Maintainer agreed to in the new project.