code_work_spawner/docs/arch.md

1.5 KiB

arch

coding flow

flowchart TD
	n4["agents implement"]
	n5["agents create worktree, branch"]
	n5
	n5 --> n4
	n6["create PR"]
	n8["human merge"]
	n9@{ shape: "diam", label: "human review" }
	n5["agents create worktree, branch"]
	n10@{ shape: "diam", label: "infra CI" }
	n4
	n10
	n10 -->|"y"| n9
	n9 -->|"y"| n8
	n4 --> n6
	n6["upsert PR"] --> n10
	n10 -->|"n"| n4
	n9 -->|"n"| n4
	style n1 fill:#5CE1E6
	style n7 fill:#C1FF72
	style n9 fill:#C1FF72
	style n8 fill:#C1FF72
	style n3 fill:#5CE1E6
	subgraph s1["planing stage"]
		n3["issue session in chat"]
		n11["agents propose plan"]
		n2["agents propose plan"]
		n7@{ shape: "diam", label: "user review plan" }
		n1["create issue"]
	end
	n1
	n1
	n7
	n7
	n7
	n7 -->|"y"| n5
	n7
	n2 --> n7
	n7 -->|"n: human prompt"| n2
	n1 --> n2
	n2 -->|"split to issues"| n1
	n11 --> n7
	n7 -->|"n: human prompt"| n11
	n11
	n11
	n3 --> n11
	n11 -->|"split to issue sessions"| n3

arch

flowchart
	s2
	s2
	s2
	s2
	s2
	n3["ssh"]
	subgraph s3["my pc"]
		subgraph s4["spawner"]
			n7["db for cache"]
			n6["config file"]
			n2["codex2"]
			n5["codex1"]
		end
	end
	s2
	s2
	s2
	s2
	n3 --> s3
	s2 -->|"poll through API to execute job"| s4
	s4 -->|"report execute status through API"| s2
	n1@{ label: "Rectangle" }
	n1["runners dashboard"]
	s3
	n1 --> s4
	subgraph s5["github"]
		subgraph s2["middle record server"]
			n4["db<br>save tmux session id, or codex session id, success/fail..."]
		end
		s1["workflow dashboard"]
	end
	s1 --> s2