huskies: merge 763
This commit is contained in:
@@ -53,9 +53,6 @@ pub(super) fn write_story_kit_gitignore(root: &Path) -> Result<(), String> {
|
||||
"worktrees/",
|
||||
"merge_workspace/",
|
||||
"coverage/",
|
||||
"work/2_current/",
|
||||
"work/3_qa/",
|
||||
"work/4_merge/",
|
||||
"logs/",
|
||||
"token_usage.jsonl",
|
||||
"wizard_state.json",
|
||||
|
||||
@@ -27,20 +27,8 @@ pub(crate) fn scaffold_story_kit(root: &Path, port: u16) -> Result<(), String> {
|
||||
let functional_root = specs_root.join("functional");
|
||||
let script_root = root.join("script");
|
||||
|
||||
// Create the work/ pipeline directories, each with a .gitkeep so empty dirs survive git clone
|
||||
let work_stages = [
|
||||
"1_backlog",
|
||||
"2_current",
|
||||
"3_qa",
|
||||
"4_merge",
|
||||
"5_done",
|
||||
"6_archived",
|
||||
];
|
||||
for stage in &work_stages {
|
||||
let dir = story_kit_root.join("work").join(stage);
|
||||
fs::create_dir_all(&dir).map_err(|e| format!("Failed to create work/{}: {}", stage, e))?;
|
||||
write_file_if_missing(&dir.join(".gitkeep"), "")?;
|
||||
}
|
||||
// The `.huskies/work/` directory tree is no longer scaffolded — the CRDT
|
||||
// is the canonical pipeline state store (see stories 738 / 758 / 763).
|
||||
|
||||
fs::create_dir_all(&tech_root).map_err(|e| format!("Failed to create specs/tech: {}", e))?;
|
||||
fs::create_dir_all(&functional_root)
|
||||
@@ -174,27 +162,17 @@ mod tests {
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn scaffold_story_kit_creates_work_pipeline_dirs() {
|
||||
fn scaffold_story_kit_does_not_create_work_pipeline_dirs() {
|
||||
// After 763 the `.huskies/work/` tree is no longer scaffolded; CRDT is
|
||||
// the canonical pipeline state store.
|
||||
let dir = tempdir().unwrap();
|
||||
scaffold_story_kit(dir.path(), 3001).unwrap();
|
||||
|
||||
let stages = [
|
||||
"1_backlog",
|
||||
"2_current",
|
||||
"3_qa",
|
||||
"4_merge",
|
||||
"5_done",
|
||||
"6_archived",
|
||||
];
|
||||
for stage in &stages {
|
||||
let path = dir.path().join(".huskies/work").join(stage);
|
||||
assert!(path.is_dir(), "work/{} should be a directory", stage);
|
||||
assert!(
|
||||
path.join(".gitkeep").exists(),
|
||||
"work/{} should have a .gitkeep file",
|
||||
stage
|
||||
);
|
||||
}
|
||||
let work_root = dir.path().join(".huskies/work");
|
||||
assert!(
|
||||
!work_root.exists(),
|
||||
".huskies/work/ should not be created at scaffold time"
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
Reference in New Issue
Block a user