diff --git a/desktop/src-tauri/Cargo.lock b/desktop/src-tauri/Cargo.lock index d2486a72e5a..2bfb0de69c3 100644 --- a/desktop/src-tauri/Cargo.lock +++ b/desktop/src-tauri/Cargo.lock @@ -2645,7 +2645,7 @@ dependencies = [ [[package]] name = "opencodex-desktop" -version = "2.82.0" +version = "2.83.0" dependencies = [ "base64 0.22.1", "dbus", diff --git a/desktop/src-tauri/Cargo.toml b/desktop/src-tauri/Cargo.toml index b2676e5f3ca..bed8513efd5 100644 --- a/desktop/src-tauri/Cargo.toml +++ b/desktop/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "opencodex-desktop" -version = "2.82.0" +version = "2.83.0" description = "OpenCodex desktop shell" authors = ["OpenCodex contributors"] license = "MIT" diff --git a/desktop/src-tauri/src/cli_command.rs b/desktop/src-tauri/src/cli_command.rs index c701fed923b..a89361e9fd7 100644 --- a/desktop/src-tauri/src/cli_command.rs +++ b/desktop/src-tauri/src/cli_command.rs @@ -263,6 +263,16 @@ fn perform_in( issues.push(e); } } + #[cfg(windows)] + if !remove && r.enabled { + if let Some(owned) = &r.windows { + match windows::machine_conflict(&owned.entry) { + Ok(true) => issues.push("machine-path-conflict".into()), + Ok(false) => {} + Err(e) => issues.push(e), + } + } + } let configured = r.enabled && r.bundle.is_some() && (r.posix.is_some() || r.windows.is_some()) diff --git a/desktop/src-tauri/src/cli_command_windows.rs b/desktop/src-tauri/src/cli_command_windows.rs index fcabe70b508..34c6220d1c6 100644 --- a/desktop/src-tauri/src/cli_command_windows.rs +++ b/desktop/src-tauri/src/cli_command_windows.rs @@ -571,6 +571,76 @@ fn normalized(s: &str) -> String { .to_ascii_lowercase() } #[cfg(any(windows, test))] +fn path_from_environment_block(block: &[u16]) -> Result>> { + let end = block + .windows(2) + .position(|pair| pair == [0, 0]) + .ok_or("machine-path-unobserved")?; + let mut start = 0; + while start < end { + let finish = block[start..end] + .iter() + .position(|unit| *unit == 0) + .map(|offset| start + offset) + .unwrap_or(end); + let variable = &block[start..finish]; + // A drive pseudo-variable such as =C:=C:\x is not an environment name. + if variable.first() != Some(&(b'=' as u16)) { + if let Some(separator) = variable.iter().position(|unit| *unit == b'=' as u16) { + if String::from_utf16(&variable[..separator]) + .is_ok_and(|name| name.eq_ignore_ascii_case("PATH")) + { + let value = String::from_utf16(&variable[separator + 1..]) + .map_err(|_| "machine-path-unobserved")?; + return Ok(Some(parts(&value))); + } + } + } + start = finish + 1; + } + Ok(None) +} +#[cfg(any(windows, test))] +fn unquoted_entry(entry: &str) -> &str { + entry + .strip_prefix('"') + .and_then(|s| s.strip_suffix('"')) + .unwrap_or(entry) +} +#[cfg(any(windows, test))] +fn searchable_entry(entry: &str) -> Option<&str> { + let entry = unquoted_entry(entry); + let bytes = entry.as_bytes(); + let absolute = (bytes.len() >= 3 + && bytes[0].is_ascii_alphabetic() + && bytes[1] == b':' + && matches!(bytes[2], b'\\' | b'/')) + || entry.starts_with("\\\\") + || entry.starts_with("//"); + // cmd searches the working directory before PATH; relative and %-literal entries + // are cwd-dependent, so probing them cannot establish a PATH conflict. + (!entry.is_empty() && !entry.contains('%') && absolute).then_some(entry) +} +#[cfg(any(windows, test))] +fn conflict_before_desktop( + entries: &[String], + desktop_dir: &str, + mut has_ocx: impl FnMut(&str) -> bool, +) -> Result { + for entry in entries { + let unquoted = unquoted_entry(entry); + if normalized(unquoted) == normalized(desktop_dir) { + return Ok(false); + } + if let Some(searchable) = searchable_entry(entry) { + if has_ocx(searchable) { + return Ok(true); + } + } + } + Err("machine-path-unobserved".into()) +} +#[cfg(any(windows, test))] fn parts(s: &str) -> Vec { if s.is_empty() { Vec::new() @@ -802,7 +872,7 @@ mod os { }, } } - pub fn machine_conflict() -> Result { + fn legacy_machine_conflict() -> Result { let k = RegKey::predef(HKEY_LOCAL_MACHINE) .open_subkey_with_flags( "SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment", @@ -826,6 +896,76 @@ mod os { } Ok(false) } + fn fresh_logon_path() -> Result>> { + use std::{ffi::c_void, ptr}; + type Ptr = *mut c_void; + #[link(name = "advapi32")] + unsafe extern "system" { + fn OpenProcessToken(process: Ptr, access: u32, token: *mut Ptr) -> i32; + } + #[link(name = "userenv")] + unsafe extern "system" { + fn CreateEnvironmentBlock(block: *mut Ptr, token: Ptr, inherit: i32) -> i32; + fn DestroyEnvironmentBlock(block: Ptr) -> i32; + } + #[link(name = "kernel32")] + unsafe extern "system" { + fn GetCurrentProcess() -> Ptr; + fn CloseHandle(handle: Ptr) -> i32; + } + struct Token(Ptr); + impl Drop for Token { + fn drop(&mut self) { + unsafe { CloseHandle(self.0) }; + } + } + struct Block(Ptr); + impl Drop for Block { + fn drop(&mut self) { + if !self.0.is_null() { + unsafe { DestroyEnvironmentBlock(self.0) }; + } + } + } + let mut token = ptr::null_mut(); + if unsafe { OpenProcessToken(GetCurrentProcess(), 0x8 | 0x2, &mut token) } == 0 { + return Err("machine-path-unobserved".into()); + } + let token = Token(token); + let mut block = ptr::null_mut(); + let created = unsafe { CreateEnvironmentBlock(&mut block, token.0, 0) }; + let block = Block(block); + if created == 0 || block.0.is_null() { + return Err("machine-path-unobserved".into()); + } + let mut words = Vec::new(); + for index in 0..(1 << 20) { + let unit = unsafe { *block.0.cast::().add(index) }; + words.push(unit); + if unit == 0 && (index == 0 || words[index - 1] == 0) { + if index == 0 { + words.push(0); + } + return path_from_environment_block(&words); + } + } + Err("machine-path-unobserved".into()) + } + fn has_ocx(dir: &str) -> bool { + ["ocx.exe", "ocx.com", "ocx.cmd", "ocx.bat"] + .iter() + .any(|name| Path::new(dir).join(name).is_file()) + } + pub fn machine_conflict(desktop_dir: &str) -> Result { + match fresh_logon_path() { + Ok(Some(entries)) => conflict_before_desktop(&entries, desktop_dir, has_ocx), + Err(_) | Ok(None) => match legacy_machine_conflict() { + Ok(false) => Ok(false), + Ok(true) => Err("machine-path-unobserved".into()), + Err(e) => Err(e), + }, + } + } fn expand(s: &str) -> Result { #[link(name = "kernel32")] unsafe extern "system" { @@ -900,6 +1040,10 @@ pub fn apply_change(c: &Change) -> Result<()> { } os::write(c) } +#[cfg(windows)] +pub fn machine_conflict(desktop_dir: &str) -> Result { + os::machine_conflict(desktop_dir) +} #[cfg(not(windows))] pub fn apply_change(_: &Change) -> Result<()> { Err("registry-unsupported".into()) @@ -918,7 +1062,7 @@ pub fn plan( .transpose()? .unwrap_or_default(); let mut next = current.clone(); - let mut issues = Vec::new(); + let issues = Vec::new(); let result = if remove_owned { if let Some(owned) = ¤t.windows { remove(&raw, owned)? @@ -962,13 +1106,6 @@ pub fn plan( backup_path: None, }] }; - if !remove_owned { - match os::machine_conflict() { - Ok(true) => issues.push("machine-path-conflict".into()), - Ok(false) => {} - Err(e) => issues.push(e), - } - } Ok((next, changes, issues)) } #[cfg(windows)] @@ -982,6 +1119,109 @@ pub fn notify() -> Result<()> { #[cfg(test)] mod tests { use super::*; + fn environment_block(variables: &[&str]) -> Vec { + let mut block = Vec::new(); + for variable in variables { + block.extend(variable.encode_utf16()); + block.push(0); + } + block.push(0); + if variables.is_empty() { + block.push(0); + } + block + } + #[test] + fn fresh_logon_environment_block_path_parsing() { + let block = environment_block(&["=C:=C:\\x", "TEMP=C:\\tmp", "Path=C:\\one;;C:\\two;"]); + assert_eq!( + path_from_environment_block(&block).unwrap(), + Some(vec![ + "C:\\one".into(), + "".into(), + "C:\\two".into(), + "".into() + ]) + ); + assert_eq!( + path_from_environment_block(&environment_block(&["PATH=C:\\upper"])).unwrap(), + Some(vec!["C:\\upper".into()]) + ); + assert_eq!( + path_from_environment_block(&environment_block(&["=C:=C:\\x", "TEMP=x"])).unwrap(), + None + ); + assert_eq!( + path_from_environment_block(&environment_block(&["Path="])).unwrap(), + Some(vec![]) + ); + assert_eq!(path_from_environment_block(&[0, 0]).unwrap(), None); + assert_eq!( + path_from_environment_block(&[]).unwrap_err(), + "machine-path-unobserved" + ); + assert_eq!( + path_from_environment_block(&"PATH=x\0".encode_utf16().collect::>()) + .unwrap_err(), + "machine-path-unobserved" + ); + let mut invalid = environment_block(&["PATH="]); + invalid.insert(5, 0xd800); + assert_eq!( + path_from_environment_block(&invalid).unwrap_err(), + "machine-path-unobserved" + ); + } + #[test] + fn fresh_logon_conflict_respects_desktop_order() { + let desktop = r"C:\Program Files\OpenCodex"; + let entries = [ + r"C:\Windows\system32", + "%NVM_HOME%", + "%NVM_SYMLINK%", + desktop, + r"C:\nvm4w\nodejs", + ]; + let entries: Vec = entries.iter().map(|entry| (*entry).into()).collect(); + assert_eq!( + conflict_before_desktop(&entries, desktop, |dir| dir == r"C:\nvm4w\nodejs"), + Ok(false) + ); + let before = vec![r"C:\nvm4w\nodejs".into(), desktop.into()]; + assert_eq!( + conflict_before_desktop(&before, desktop, |dir| dir == r"C:\nvm4w\nodejs"), + Ok(true) + ); + let after = vec![desktop.into(), r"C:\nvm4w\nodejs".into()]; + assert_eq!( + conflict_before_desktop(&after, desktop, |dir| dir == r"C:\nvm4w\nodejs"), + Ok(false) + ); + assert_eq!( + conflict_before_desktop(&[r"C:\other".into()], desktop, |_| false).unwrap_err(), + "machine-path-unobserved" + ); + } + #[test] + fn fresh_logon_conflict_ignores_cwd_dependent_entries() { + let desktop = r"C:\Program Files\OpenCodex"; + let entries = vec![ + "bin".into(), + "".into(), + "%NVM_HOME%".into(), + r"C:\%NVM_HOME%\bin".into(), + r#""c:/PROGRAM FILES/OpenCodex/""#.into(), + ]; + let mut probed = Vec::new(); + assert_eq!( + conflict_before_desktop(&entries, desktop, |dir| { + probed.push(dir.to_owned()); + true + }), + Ok(false) + ); + assert!(probed.is_empty()); + } #[test] fn prepend_preserves_raw_expansions_type_and_empty_entries() { let raw = r"%APPDATA%\npm;;C:\Tools;"; diff --git a/desktop/src-tauri/tauri.conf.json b/desktop/src-tauri/tauri.conf.json index 60b72fcd690..80755617547 100644 --- a/desktop/src-tauri/tauri.conf.json +++ b/desktop/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "OpenCodex", - "version": "2.82.0", + "version": "2.83.0", "identifier": "com.opencodex.desktop", "build": { "frontendDist": "../ui", diff --git a/devlog/_plan/260819_next_roadmap/000_roadmap.md b/devlog/_fin/260819_next_roadmap/000_roadmap.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/000_roadmap.md rename to devlog/_fin/260819_next_roadmap/000_roadmap.md diff --git a/devlog/_plan/260819_next_roadmap/010_r1_split_rebase.md b/devlog/_fin/260819_next_roadmap/010_r1_split_rebase.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/010_r1_split_rebase.md rename to devlog/_fin/260819_next_roadmap/010_r1_split_rebase.md diff --git a/devlog/_plan/260819_next_roadmap/020_r2_temp_reclaim_merge.md b/devlog/_fin/260819_next_roadmap/020_r2_temp_reclaim_merge.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/020_r2_temp_reclaim_merge.md rename to devlog/_fin/260819_next_roadmap/020_r2_temp_reclaim_merge.md diff --git a/devlog/_plan/260819_next_roadmap/030_r3_collisions_and_retargets.md b/devlog/_fin/260819_next_roadmap/030_r3_collisions_and_retargets.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/030_r3_collisions_and_retargets.md rename to devlog/_fin/260819_next_roadmap/030_r3_collisions_and_retargets.md diff --git a/devlog/_plan/260819_next_roadmap/031_r3_posted_decisions.md b/devlog/_fin/260819_next_roadmap/031_r3_posted_decisions.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/031_r3_posted_decisions.md rename to devlog/_fin/260819_next_roadmap/031_r3_posted_decisions.md diff --git a/devlog/_plan/260819_next_roadmap/040_r4_modelrecordvalue_batch.md b/devlog/_fin/260819_next_roadmap/040_r4_modelrecordvalue_batch.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/040_r4_modelrecordvalue_batch.md rename to devlog/_fin/260819_next_roadmap/040_r4_modelrecordvalue_batch.md diff --git a/devlog/_plan/260819_next_roadmap/041_r4_posted_verdicts.md b/devlog/_fin/260819_next_roadmap/041_r4_posted_verdicts.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/041_r4_posted_verdicts.md rename to devlog/_fin/260819_next_roadmap/041_r4_posted_verdicts.md diff --git a/devlog/_plan/260819_next_roadmap/050_execution_ledger.md b/devlog/_fin/260819_next_roadmap/050_execution_ledger.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/050_execution_ledger.md rename to devlog/_fin/260819_next_roadmap/050_execution_ledger.md diff --git a/devlog/_plan/260819_next_roadmap/060_outcome.md b/devlog/_fin/260819_next_roadmap/060_outcome.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/060_outcome.md rename to devlog/_fin/260819_next_roadmap/060_outcome.md diff --git a/devlog/_plan/260819_next_roadmap/070_next_roadmap_split_and_dogfood.md b/devlog/_fin/260819_next_roadmap/070_next_roadmap_split_and_dogfood.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/070_next_roadmap_split_and_dogfood.md rename to devlog/_fin/260819_next_roadmap/070_next_roadmap_split_and_dogfood.md diff --git a/devlog/_plan/260819_next_roadmap/080_merge_loop_ledger.md b/devlog/_fin/260819_next_roadmap/080_merge_loop_ledger.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/080_merge_loop_ledger.md rename to devlog/_fin/260819_next_roadmap/080_merge_loop_ledger.md diff --git a/devlog/_plan/260819_next_roadmap/090_merge_loop_outcome.md b/devlog/_fin/260819_next_roadmap/090_merge_loop_outcome.md similarity index 100% rename from devlog/_plan/260819_next_roadmap/090_merge_loop_outcome.md rename to devlog/_fin/260819_next_roadmap/090_merge_loop_outcome.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/000_investigation.md b/devlog/_fin/260819_unclaimed_bug_selection/000_investigation.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/000_investigation.md rename to devlog/_fin/260819_unclaimed_bug_selection/000_investigation.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/010_ranking.md b/devlog/_fin/260819_unclaimed_bug_selection/010_ranking.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/010_ranking.md rename to devlog/_fin/260819_unclaimed_bug_selection/010_ranking.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/020_2114_systemd_bus.md b/devlog/_fin/260819_unclaimed_bug_selection/020_2114_systemd_bus.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/020_2114_systemd_bus.md rename to devlog/_fin/260819_unclaimed_bug_selection/020_2114_systemd_bus.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/030_2107_service_proxy_env.md b/devlog/_fin/260819_unclaimed_bug_selection/030_2107_service_proxy_env.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/030_2107_service_proxy_env.md rename to devlog/_fin/260819_unclaimed_bug_selection/030_2107_service_proxy_env.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/031_2107_implementation.md b/devlog/_fin/260819_unclaimed_bug_selection/031_2107_implementation.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/031_2107_implementation.md rename to devlog/_fin/260819_unclaimed_bug_selection/031_2107_implementation.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/040_2108_windows_reboot_gate.md b/devlog/_fin/260819_unclaimed_bug_selection/040_2108_windows_reboot_gate.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/040_2108_windows_reboot_gate.md rename to devlog/_fin/260819_unclaimed_bug_selection/040_2108_windows_reboot_gate.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/050_1587_deferred_catalog.md b/devlog/_fin/260819_unclaimed_bug_selection/050_1587_deferred_catalog.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/050_1587_deferred_catalog.md rename to devlog/_fin/260819_unclaimed_bug_selection/050_1587_deferred_catalog.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/060_1933_tray_encoding.md b/devlog/_fin/260819_unclaimed_bug_selection/060_1933_tray_encoding.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/060_1933_tray_encoding.md rename to devlog/_fin/260819_unclaimed_bug_selection/060_1933_tray_encoding.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/061_1933_implementation.md b/devlog/_fin/260819_unclaimed_bug_selection/061_1933_implementation.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/061_1933_implementation.md rename to devlog/_fin/260819_unclaimed_bug_selection/061_1933_implementation.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/070_sequencing.md b/devlog/_fin/260819_unclaimed_bug_selection/070_sequencing.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/070_sequencing.md rename to devlog/_fin/260819_unclaimed_bug_selection/070_sequencing.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/075_verification.md b/devlog/_fin/260819_unclaimed_bug_selection/075_verification.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/075_verification.md rename to devlog/_fin/260819_unclaimed_bug_selection/075_verification.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/080_outcome.md b/devlog/_fin/260819_unclaimed_bug_selection/080_outcome.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/080_outcome.md rename to devlog/_fin/260819_unclaimed_bug_selection/080_outcome.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/090_1527_abort_slice.md b/devlog/_fin/260819_unclaimed_bug_selection/090_1527_abort_slice.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/090_1527_abort_slice.md rename to devlog/_fin/260819_unclaimed_bug_selection/090_1527_abort_slice.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/100_post_split_rebase.md b/devlog/_fin/260819_unclaimed_bug_selection/100_post_split_rebase.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/100_post_split_rebase.md rename to devlog/_fin/260819_unclaimed_bug_selection/100_post_split_rebase.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/110_2114_disposition.md b/devlog/_fin/260819_unclaimed_bug_selection/110_2114_disposition.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/110_2114_disposition.md rename to devlog/_fin/260819_unclaimed_bug_selection/110_2114_disposition.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/120_2108_phase1.md b/devlog/_fin/260819_unclaimed_bug_selection/120_2108_phase1.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/120_2108_phase1.md rename to devlog/_fin/260819_unclaimed_bug_selection/120_2108_phase1.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/121_2108_implementation.md b/devlog/_fin/260819_unclaimed_bug_selection/121_2108_implementation.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/121_2108_implementation.md rename to devlog/_fin/260819_unclaimed_bug_selection/121_2108_implementation.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/130_ci_proxy_env_leak.md b/devlog/_fin/260819_unclaimed_bug_selection/130_ci_proxy_env_leak.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/130_ci_proxy_env_leak.md rename to devlog/_fin/260819_unclaimed_bug_selection/130_ci_proxy_env_leak.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/140_final_audit.md b/devlog/_fin/260819_unclaimed_bug_selection/140_final_audit.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/140_final_audit.md rename to devlog/_fin/260819_unclaimed_bug_selection/140_final_audit.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/150_outcome.md b/devlog/_fin/260819_unclaimed_bug_selection/150_outcome.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/150_outcome.md rename to devlog/_fin/260819_unclaimed_bug_selection/150_outcome.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/170_2114_2108_fences.md b/devlog/_fin/260819_unclaimed_bug_selection/170_2114_2108_fences.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/170_2114_2108_fences.md rename to devlog/_fin/260819_unclaimed_bug_selection/170_2114_2108_fences.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/180_windows_leg.md b/devlog/_fin/260819_unclaimed_bug_selection/180_windows_leg.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/180_windows_leg.md rename to devlog/_fin/260819_unclaimed_bug_selection/180_windows_leg.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/190_release_readiness.md b/devlog/_fin/260819_unclaimed_bug_selection/190_release_readiness.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/190_release_readiness.md rename to devlog/_fin/260819_unclaimed_bug_selection/190_release_readiness.md diff --git a/devlog/_plan/260819_unclaimed_bug_selection/200_local_windows_verification.md b/devlog/_fin/260819_unclaimed_bug_selection/200_local_windows_verification.md similarity index 100% rename from devlog/_plan/260819_unclaimed_bug_selection/200_local_windows_verification.md rename to devlog/_fin/260819_unclaimed_bug_selection/200_local_windows_verification.md diff --git a/devlog/_plan/260821_bug_merge_train/000_triage_matrix.md b/devlog/_fin/260821_bug_merge_train/000_triage_matrix.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/000_triage_matrix.md rename to devlog/_fin/260821_bug_merge_train/000_triage_matrix.md diff --git a/devlog/_plan/260821_bug_merge_train/001_dependency_analysis.md b/devlog/_fin/260821_bug_merge_train/001_dependency_analysis.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/001_dependency_analysis.md rename to devlog/_fin/260821_bug_merge_train/001_dependency_analysis.md diff --git a/devlog/_plan/260821_bug_merge_train/002_audit_synthesis.md b/devlog/_fin/260821_bug_merge_train/002_audit_synthesis.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/002_audit_synthesis.md rename to devlog/_fin/260821_bug_merge_train/002_audit_synthesis.md diff --git a/devlog/_plan/260821_bug_merge_train/010_fix_dev_macos_ci.md b/devlog/_fin/260821_bug_merge_train/010_fix_dev_macos_ci.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/010_fix_dev_macos_ci.md rename to devlog/_fin/260821_bug_merge_train/010_fix_dev_macos_ci.md diff --git a/devlog/_plan/260821_bug_merge_train/020_merge_2295.md b/devlog/_fin/260821_bug_merge_train/020_merge_2295.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/020_merge_2295.md rename to devlog/_fin/260821_bug_merge_train/020_merge_2295.md diff --git a/devlog/_plan/260821_bug_merge_train/030_merge_2294.md b/devlog/_fin/260821_bug_merge_train/030_merge_2294.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/030_merge_2294.md rename to devlog/_fin/260821_bug_merge_train/030_merge_2294.md diff --git a/devlog/_plan/260821_bug_merge_train/040_merge_2296.md b/devlog/_fin/260821_bug_merge_train/040_merge_2296.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/040_merge_2296.md rename to devlog/_fin/260821_bug_merge_train/040_merge_2296.md diff --git a/devlog/_plan/260821_bug_merge_train/050_merge_2289.md b/devlog/_fin/260821_bug_merge_train/050_merge_2289.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/050_merge_2289.md rename to devlog/_fin/260821_bug_merge_train/050_merge_2289.md diff --git a/devlog/_plan/260821_bug_merge_train/060_merge_2270.md b/devlog/_fin/260821_bug_merge_train/060_merge_2270.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/060_merge_2270.md rename to devlog/_fin/260821_bug_merge_train/060_merge_2270.md diff --git a/devlog/_plan/260821_bug_merge_train/065_merge_2281.md b/devlog/_fin/260821_bug_merge_train/065_merge_2281.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/065_merge_2281.md rename to devlog/_fin/260821_bug_merge_train/065_merge_2281.md diff --git a/devlog/_plan/260821_bug_merge_train/070_final_gate.md b/devlog/_fin/260821_bug_merge_train/070_final_gate.md similarity index 100% rename from devlog/_plan/260821_bug_merge_train/070_final_gate.md rename to devlog/_fin/260821_bug_merge_train/070_final_gate.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/000_plan.md b/devlog/_fin/260822_senpi_cursor_transfer/000_plan.md similarity index 98% rename from devlog/_plan/260822_senpi_cursor_transfer/000_plan.md rename to devlog/_fin/260822_senpi_cursor_transfer/000_plan.md index 75685484b4d..03227694671 100644 --- a/devlog/_plan/260822_senpi_cursor_transfer/000_plan.md +++ b/devlog/_fin/260822_senpi_cursor_transfer/000_plan.md @@ -45,7 +45,7 @@ Do not implement two slices in one B. Do not start wp1 until this research cycle ## IN / OUT -IN: this `devlog/_plan/260822_senpi_cursor_transfer/` directory. +IN: this `devlog/_fin/260822_senpi_cursor_transfer/` directory. OUT: `src/`, `tests/`, `gui/`, `docs-site/`; senpi vendored proto copy; CLI spawn of `cursor-agent`. ## Already-have headline diff --git a/devlog/_plan/260822_senpi_cursor_transfer/001_opencodex_cursor_inventory.md b/devlog/_fin/260822_senpi_cursor_transfer/001_opencodex_cursor_inventory.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/001_opencodex_cursor_inventory.md rename to devlog/_fin/260822_senpi_cursor_transfer/001_opencodex_cursor_inventory.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/002_senpi_cursor_inventory.md b/devlog/_fin/260822_senpi_cursor_transfer/002_senpi_cursor_inventory.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/002_senpi_cursor_inventory.md rename to devlog/_fin/260822_senpi_cursor_transfer/002_senpi_cursor_inventory.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/003_protocol_compare.md b/devlog/_fin/260822_senpi_cursor_transfer/003_protocol_compare.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/003_protocol_compare.md rename to devlog/_fin/260822_senpi_cursor_transfer/003_protocol_compare.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/004_auth_catalog_compare.md b/devlog/_fin/260822_senpi_cursor_transfer/004_auth_catalog_compare.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/004_auth_catalog_compare.md rename to devlog/_fin/260822_senpi_cursor_transfer/004_auth_catalog_compare.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/005_exec_compare.md b/devlog/_fin/260822_senpi_cursor_transfer/005_exec_compare.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/005_exec_compare.md rename to devlog/_fin/260822_senpi_cursor_transfer/005_exec_compare.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/006_stream_overflow_compare.md b/devlog/_fin/260822_senpi_cursor_transfer/006_stream_overflow_compare.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/006_stream_overflow_compare.md rename to devlog/_fin/260822_senpi_cursor_transfer/006_stream_overflow_compare.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/007_cli_fallback.md b/devlog/_fin/260822_senpi_cursor_transfer/007_cli_fallback.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/007_cli_fallback.md rename to devlog/_fin/260822_senpi_cursor_transfer/007_cli_fallback.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/090_transfer_verdict.md b/devlog/_fin/260822_senpi_cursor_transfer/090_transfer_verdict.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/090_transfer_verdict.md rename to devlog/_fin/260822_senpi_cursor_transfer/090_transfer_verdict.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/100_stabilization_round2_plan.md b/devlog/_fin/260822_senpi_cursor_transfer/100_stabilization_round2_plan.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/100_stabilization_round2_plan.md rename to devlog/_fin/260822_senpi_cursor_transfer/100_stabilization_round2_plan.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/110_stream_health_watchdog.md b/devlog/_fin/260822_senpi_cursor_transfer/110_stream_health_watchdog.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/110_stream_health_watchdog.md rename to devlog/_fin/260822_senpi_cursor_transfer/110_stream_health_watchdog.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/120_small_hardening_pair.md b/devlog/_fin/260822_senpi_cursor_transfer/120_small_hardening_pair.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/120_small_hardening_pair.md rename to devlog/_fin/260822_senpi_cursor_transfer/120_small_hardening_pair.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/190_round2_roadmap_lock.md b/devlog/_fin/260822_senpi_cursor_transfer/190_round2_roadmap_lock.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/190_round2_roadmap_lock.md rename to devlog/_fin/260822_senpi_cursor_transfer/190_round2_roadmap_lock.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/200_round3_probe_plan.md b/devlog/_fin/260822_senpi_cursor_transfer/200_round3_probe_plan.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/200_round3_probe_plan.md rename to devlog/_fin/260822_senpi_cursor_transfer/200_round3_probe_plan.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/210_maxmode.md b/devlog/_fin/260822_senpi_cursor_transfer/210_maxmode.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/210_maxmode.md rename to devlog/_fin/260822_senpi_cursor_transfer/210_maxmode.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/220_rotation.md b/devlog/_fin/260822_senpi_cursor_transfer/220_rotation.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/220_rotation.md rename to devlog/_fin/260822_senpi_cursor_transfer/220_rotation.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/230_issue2305.md b/devlog/_fin/260822_senpi_cursor_transfer/230_issue2305.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/230_issue2305.md rename to devlog/_fin/260822_senpi_cursor_transfer/230_issue2305.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/240_client_version.md b/devlog/_fin/260822_senpi_cursor_transfer/240_client_version.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/240_client_version.md rename to devlog/_fin/260822_senpi_cursor_transfer/240_client_version.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/250_billed_usage.md b/devlog/_fin/260822_senpi_cursor_transfer/250_billed_usage.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/250_billed_usage.md rename to devlog/_fin/260822_senpi_cursor_transfer/250_billed_usage.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/260_re_classification_refinement.md b/devlog/_fin/260822_senpi_cursor_transfer/260_re_classification_refinement.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/260_re_classification_refinement.md rename to devlog/_fin/260822_senpi_cursor_transfer/260_re_classification_refinement.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/290_round3_lock.md b/devlog/_fin/260822_senpi_cursor_transfer/290_round3_lock.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/290_round3_lock.md rename to devlog/_fin/260822_senpi_cursor_transfer/290_round3_lock.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/300_opus_fast_catalog.md b/devlog/_fin/260822_senpi_cursor_transfer/300_opus_fast_catalog.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/300_opus_fast_catalog.md rename to devlog/_fin/260822_senpi_cursor_transfer/300_opus_fast_catalog.md diff --git a/devlog/_plan/260822_senpi_cursor_transfer/310_maxmode_bigctx.md b/devlog/_fin/260822_senpi_cursor_transfer/310_maxmode_bigctx.md similarity index 100% rename from devlog/_plan/260822_senpi_cursor_transfer/310_maxmode_bigctx.md rename to devlog/_fin/260822_senpi_cursor_transfer/310_maxmode_bigctx.md diff --git a/devlog/_plan/260824_model_ux_aliases_and_defaults/000_plan.md b/devlog/_fin/260824_model_ux_aliases_and_defaults/000_plan.md similarity index 97% rename from devlog/_plan/260824_model_ux_aliases_and_defaults/000_plan.md rename to devlog/_fin/260824_model_ux_aliases_and_defaults/000_plan.md index b935c2678a9..4c4e6b8202c 100644 --- a/devlog/_plan/260824_model_ux_aliases_and_defaults/000_plan.md +++ b/devlog/_fin/260824_model_ux_aliases_and_defaults/000_plan.md @@ -45,7 +45,7 @@ catalog refresh introduces new models already enabled. ## Loop-spec - Loop archetype: verifier-defined (issues exist + PR merged = done). -- Write scope: `devlog/_plan/260824_model_ux_aliases_and_defaults/**` only. +- Write scope: `devlog/_fin/260824_model_ux_aliases_and_defaults/**` only. Out of scope: any `src/`, `gui/`, `docs-site/` change; implementation. - External writes: 3 issues on lidge-jun/opencodex; 1 PR to `dev` + merge (explicitly user-authorized in the request). diff --git a/devlog/_plan/260824_model_ux_aliases_and_defaults/010_aliases.md b/devlog/_fin/260824_model_ux_aliases_and_defaults/010_aliases.md similarity index 100% rename from devlog/_plan/260824_model_ux_aliases_and_defaults/010_aliases.md rename to devlog/_fin/260824_model_ux_aliases_and_defaults/010_aliases.md diff --git a/devlog/_plan/260824_model_ux_aliases_and_defaults/020_new_models_off.md b/devlog/_fin/260824_model_ux_aliases_and_defaults/020_new_models_off.md similarity index 100% rename from devlog/_plan/260824_model_ux_aliases_and_defaults/020_new_models_off.md rename to devlog/_fin/260824_model_ux_aliases_and_defaults/020_new_models_off.md diff --git a/devlog/_plan/260824_model_ux_aliases_and_defaults/030_default_preset.md b/devlog/_fin/260824_model_ux_aliases_and_defaults/030_default_preset.md similarity index 100% rename from devlog/_plan/260824_model_ux_aliases_and_defaults/030_default_preset.md rename to devlog/_fin/260824_model_ux_aliases_and_defaults/030_default_preset.md diff --git a/devlog/_plan/260825_operator_visibility_train/000_baseline_and_scope.md b/devlog/_fin/260825_operator_visibility_train/000_baseline_and_scope.md similarity index 100% rename from devlog/_plan/260825_operator_visibility_train/000_baseline_and_scope.md rename to devlog/_fin/260825_operator_visibility_train/000_baseline_and_scope.md diff --git a/devlog/_plan/260825_operator_visibility_train/001_current_state_inventory.md b/devlog/_fin/260825_operator_visibility_train/001_current_state_inventory.md similarity index 100% rename from devlog/_plan/260825_operator_visibility_train/001_current_state_inventory.md rename to devlog/_fin/260825_operator_visibility_train/001_current_state_inventory.md diff --git a/devlog/_plan/260825_operator_visibility_train/002_plan_audit.md b/devlog/_fin/260825_operator_visibility_train/002_plan_audit.md similarity index 100% rename from devlog/_plan/260825_operator_visibility_train/002_plan_audit.md rename to devlog/_fin/260825_operator_visibility_train/002_plan_audit.md diff --git a/devlog/_plan/260825_operator_visibility_train/010_wp2_issue2457_sidecar_backend_resolution.md b/devlog/_fin/260825_operator_visibility_train/010_wp2_issue2457_sidecar_backend_resolution.md similarity index 100% rename from devlog/_plan/260825_operator_visibility_train/010_wp2_issue2457_sidecar_backend_resolution.md rename to devlog/_fin/260825_operator_visibility_train/010_wp2_issue2457_sidecar_backend_resolution.md diff --git a/devlog/_plan/260825_operator_visibility_train/020_wp3_issue2411_status_routing_visibility.md b/devlog/_fin/260825_operator_visibility_train/020_wp3_issue2411_status_routing_visibility.md similarity index 100% rename from devlog/_plan/260825_operator_visibility_train/020_wp3_issue2411_status_routing_visibility.md rename to devlog/_fin/260825_operator_visibility_train/020_wp3_issue2411_status_routing_visibility.md diff --git a/devlog/_plan/260825_operator_visibility_train/030_wp4_issue2412_version_manager_shim.md b/devlog/_fin/260825_operator_visibility_train/030_wp4_issue2412_version_manager_shim.md similarity index 100% rename from devlog/_plan/260825_operator_visibility_train/030_wp4_issue2412_version_manager_shim.md rename to devlog/_fin/260825_operator_visibility_train/030_wp4_issue2412_version_manager_shim.md diff --git a/devlog/_plan/260826_config_rebase_provenance/010_design.md b/devlog/_fin/260826_config_rebase_provenance/010_design.md similarity index 100% rename from devlog/_plan/260826_config_rebase_provenance/010_design.md rename to devlog/_fin/260826_config_rebase_provenance/010_design.md diff --git a/devlog/_plan/260826_cursor_responses_gap/000_plan.md b/devlog/_fin/260826_cursor_responses_gap/000_plan.md similarity index 97% rename from devlog/_plan/260826_cursor_responses_gap/000_plan.md rename to devlog/_fin/260826_cursor_responses_gap/000_plan.md index 748f3be5483..4840cd4073e 100644 --- a/devlog/_plan/260826_cursor_responses_gap/000_plan.md +++ b/devlog/_fin/260826_cursor_responses_gap/000_plan.md @@ -15,7 +15,7 @@ live probe campaign against `cursor/grok-4.6` through the local proxy - Goal: severity-ranked gap catalog with file:line citations + >=10 probe evidence rows. - Non-goals: fixing the adapter, provider config changes, issues/PRs, pushes. -- Verifier: `ls devlog/_plan/260826_cursor_responses_gap` (docs), +- Verifier: `ls devlog/_fin/260826_cursor_responses_gap` (docs), `git status --short src/` (must be empty), probe-count grep in 010 doc. All three run and read the change target (this unit's files / src tree). - Stop: all three docs written and consistent; bounds = ~40min probing, @@ -98,7 +98,7 @@ probes toward the >=10 minimum. secondary references. durationMs:0 is plausibly Codex-client-side — 001 carries it as UNKNOWN with the evidence gap stated. 4. (Medium) Probe-count verifier is now concrete: - `rg -c '^\| (P|C|S)[0-9]' devlog/_plan/260826_cursor_responses_gap/010_probe_campaign.md` + `rg -c '^\| (P|C|S)[0-9]' devlog/_fin/260826_cursor_responses_gap/010_probe_campaign.md` must report >= 10 evidence rows (pass condition), and each row carries a pass/fail column. diff --git a/devlog/_plan/260826_cursor_responses_gap/001_seed_thread_failure_catalog.md b/devlog/_fin/260826_cursor_responses_gap/001_seed_thread_failure_catalog.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/001_seed_thread_failure_catalog.md rename to devlog/_fin/260826_cursor_responses_gap/001_seed_thread_failure_catalog.md diff --git a/devlog/_plan/260826_cursor_responses_gap/010_probe_campaign.md b/devlog/_fin/260826_cursor_responses_gap/010_probe_campaign.md similarity index 99% rename from devlog/_plan/260826_cursor_responses_gap/010_probe_campaign.md rename to devlog/_fin/260826_cursor_responses_gap/010_probe_campaign.md index 791e8a9345d..d5382f8f710 100644 --- a/devlog/_plan/260826_cursor_responses_gap/010_probe_campaign.md +++ b/devlog/_fin/260826_cursor_responses_gap/010_probe_campaign.md @@ -8,7 +8,7 @@ cursor-model workers (S1), plugin-surface exposure (S2), all fenced to read-only tasks or mktemp scratch. Verifier (from 000 plan): -`rg -c '^\| (P|C|S)[0-9]' devlog/_plan/260826_cursor_responses_gap/010_probe_campaign.md` +`rg -c '^\| (P|C|S)[0-9]' devlog/_fin/260826_cursor_responses_gap/010_probe_campaign.md` pass condition >= 10 evidence rows. Bounds: <=30 live probes, <=3 retries/class, ~40min wall clock. diff --git a/devlog/_plan/260826_cursor_responses_gap/020_gap_summary.md b/devlog/_fin/260826_cursor_responses_gap/020_gap_summary.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/020_gap_summary.md rename to devlog/_fin/260826_cursor_responses_gap/020_gap_summary.md diff --git a/devlog/_plan/260826_cursor_responses_gap/025_ultra_k3_research.md b/devlog/_fin/260826_cursor_responses_gap/025_ultra_k3_research.md similarity index 96% rename from devlog/_plan/260826_cursor_responses_gap/025_ultra_k3_research.md rename to devlog/_fin/260826_cursor_responses_gap/025_ultra_k3_research.md index a9592a10b1d..60d2ee5763b 100644 --- a/devlog/_plan/260826_cursor_responses_gap/025_ultra_k3_research.md +++ b/devlog/_fin/260826_cursor_responses_gap/025_ultra_k3_research.md @@ -14,7 +14,7 @@ Claim ledger — status per cxc-search discipline: | K3 1M specifically unlocked on Ultra | user-confirmed 2026-08-26 (operator saw the 1M option live in Cursor on the Ultra plan); public primary source still absent | user observation (authoritative for this deployment) + reddit lead | | Wire: max mode = RequestedModel.max_mode (field 2) AND ModelDetails.max_mode (field 7); missing either can invalid_argument | lead (2 impl sources) | oh-my-pi #4969, cursor-opencode-provider | | 1M exposure pattern: synthetic -1m picker variant w/ limit.context=1M, wire sends original id + maxMode | lead | cursor-opencode-provider README | -| In-repo: GetUsableModels ModelDetails.maxMode=true observed on 28 -fast ids (260822); no contextTokenLimit field | verified (own probe) | devlog/_plan/260822_senpi_cursor_transfer/210_maxmode.md | +| In-repo: GetUsableModels ModelDetails.maxMode=true observed on 28 -fast ids (260822); no contextTokenLimit field | verified (own probe) | devlog/_fin/260822_senpi_cursor_transfer/210_maxmode.md | Design consequence for 070 (ultra toggle): treat "ultra" as a per-model toggle that (a) sets the wire maxMode flag in both RequestedModel and diff --git a/devlog/_plan/260826_cursor_responses_gap/030_callid_sse_parity.md b/devlog/_fin/260826_cursor_responses_gap/030_callid_sse_parity.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/030_callid_sse_parity.md rename to devlog/_fin/260826_cursor_responses_gap/030_callid_sse_parity.md diff --git a/devlog/_plan/260826_cursor_responses_gap/040_preamble_floor.md b/devlog/_fin/260826_cursor_responses_gap/040_preamble_floor.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/040_preamble_floor.md rename to devlog/_fin/260826_cursor_responses_gap/040_preamble_floor.md diff --git a/devlog/_plan/260826_cursor_responses_gap/050_checkpoint_continuity.md b/devlog/_fin/260826_cursor_responses_gap/050_checkpoint_continuity.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/050_checkpoint_continuity.md rename to devlog/_fin/260826_cursor_responses_gap/050_checkpoint_continuity.md diff --git a/devlog/_plan/260826_cursor_responses_gap/060_catalog_honesty.md b/devlog/_fin/260826_cursor_responses_gap/060_catalog_honesty.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/060_catalog_honesty.md rename to devlog/_fin/260826_cursor_responses_gap/060_catalog_honesty.md diff --git a/devlog/_plan/260826_cursor_responses_gap/070_ultra_mode.md b/devlog/_fin/260826_cursor_responses_gap/070_ultra_mode.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/070_ultra_mode.md rename to devlog/_fin/260826_cursor_responses_gap/070_ultra_mode.md diff --git a/devlog/_plan/260826_cursor_responses_gap/080_stall_corruption_diag.md b/devlog/_fin/260826_cursor_responses_gap/080_stall_corruption_diag.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/080_stall_corruption_diag.md rename to devlog/_fin/260826_cursor_responses_gap/080_stall_corruption_diag.md diff --git a/devlog/_plan/260826_cursor_responses_gap/090_gap8_codex_exec_qa.md b/devlog/_fin/260826_cursor_responses_gap/090_gap8_codex_exec_qa.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/090_gap8_codex_exec_qa.md rename to devlog/_fin/260826_cursor_responses_gap/090_gap8_codex_exec_qa.md diff --git a/devlog/_plan/260826_cursor_responses_gap/100_wire_ndjson_qa.md b/devlog/_fin/260826_cursor_responses_gap/100_wire_ndjson_qa.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/100_wire_ndjson_qa.md rename to devlog/_fin/260826_cursor_responses_gap/100_wire_ndjson_qa.md diff --git a/devlog/_plan/260826_cursor_responses_gap/110_app_route_qa.md b/devlog/_fin/260826_cursor_responses_gap/110_app_route_qa.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/110_app_route_qa.md rename to devlog/_fin/260826_cursor_responses_gap/110_app_route_qa.md diff --git a/devlog/_plan/260826_cursor_responses_gap/120_repetition_breaker.md b/devlog/_fin/260826_cursor_responses_gap/120_repetition_breaker.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/120_repetition_breaker.md rename to devlog/_fin/260826_cursor_responses_gap/120_repetition_breaker.md diff --git a/devlog/_plan/260826_cursor_responses_gap/130_envelope_echo_guard.md b/devlog/_fin/260826_cursor_responses_gap/130_envelope_echo_guard.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/130_envelope_echo_guard.md rename to devlog/_fin/260826_cursor_responses_gap/130_envelope_echo_guard.md diff --git a/devlog/_plan/260826_cursor_responses_gap/140_round2_probe_results.md b/devlog/_fin/260826_cursor_responses_gap/140_round2_probe_results.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/140_round2_probe_results.md rename to devlog/_fin/260826_cursor_responses_gap/140_round2_probe_results.md diff --git a/devlog/_plan/260826_cursor_responses_gap/150_routing_commentary_hallucination.md b/devlog/_fin/260826_cursor_responses_gap/150_routing_commentary_hallucination.md similarity index 100% rename from devlog/_plan/260826_cursor_responses_gap/150_routing_commentary_hallucination.md rename to devlog/_fin/260826_cursor_responses_gap/150_routing_commentary_hallucination.md diff --git a/devlog/_plan/260826_pre_substrate_adoption/010_design.md b/devlog/_fin/260826_pre_substrate_adoption/010_design.md similarity index 100% rename from devlog/_plan/260826_pre_substrate_adoption/010_design.md rename to devlog/_fin/260826_pre_substrate_adoption/010_design.md diff --git a/devlog/_plan/260826_provenance_writer/010_design.md b/devlog/_fin/260826_provenance_writer/010_design.md similarity index 100% rename from devlog/_plan/260826_provenance_writer/010_design.md rename to devlog/_fin/260826_provenance_writer/010_design.md diff --git a/devlog/_plan/260826_restart_codex_linux_survivor/000_repro_and_root_cause.md b/devlog/_fin/260826_restart_codex_linux_survivor/000_repro_and_root_cause.md similarity index 100% rename from devlog/_plan/260826_restart_codex_linux_survivor/000_repro_and_root_cause.md rename to devlog/_fin/260826_restart_codex_linux_survivor/000_repro_and_root_cause.md diff --git a/devlog/_plan/260826_session_lane_bounds/010_design.md b/devlog/_fin/260826_session_lane_bounds/010_design.md similarity index 100% rename from devlog/_plan/260826_session_lane_bounds/010_design.md rename to devlog/_fin/260826_session_lane_bounds/010_design.md diff --git a/devlog/_plan/260826_session_lane_bounds/020_reconnect_followup.md b/devlog/_fin/260826_session_lane_bounds/020_reconnect_followup.md similarity index 100% rename from devlog/_plan/260826_session_lane_bounds/020_reconnect_followup.md rename to devlog/_fin/260826_session_lane_bounds/020_reconnect_followup.md diff --git a/devlog/_plan/260826_wp7e_presence_driven_oauth_failover/010_plan.md b/devlog/_fin/260826_wp7e_presence_driven_oauth_failover/010_plan.md similarity index 100% rename from devlog/_plan/260826_wp7e_presence_driven_oauth_failover/010_plan.md rename to devlog/_fin/260826_wp7e_presence_driven_oauth_failover/010_plan.md diff --git a/devlog/_plan/260826_wp7e_presence_driven_oauth_failover/011_audit_response.md b/devlog/_fin/260826_wp7e_presence_driven_oauth_failover/011_audit_response.md similarity index 100% rename from devlog/_plan/260826_wp7e_presence_driven_oauth_failover/011_audit_response.md rename to devlog/_fin/260826_wp7e_presence_driven_oauth_failover/011_audit_response.md diff --git a/devlog/_plan/260826_wp7e_presence_driven_oauth_failover/020_execution.md b/devlog/_fin/260826_wp7e_presence_driven_oauth_failover/020_execution.md similarity index 100% rename from devlog/_plan/260826_wp7e_presence_driven_oauth_failover/020_execution.md rename to devlog/_fin/260826_wp7e_presence_driven_oauth_failover/020_execution.md diff --git a/devlog/_plan/260826_wp7e_presence_driven_oauth_failover/030_post_merge_f5.md b/devlog/_fin/260826_wp7e_presence_driven_oauth_failover/030_post_merge_f5.md similarity index 100% rename from devlog/_plan/260826_wp7e_presence_driven_oauth_failover/030_post_merge_f5.md rename to devlog/_fin/260826_wp7e_presence_driven_oauth_failover/030_post_merge_f5.md diff --git a/devlog/_fin/260827_igwanu_bug_pr_merge_round/011_wp1_outcome.md b/devlog/_fin/260827_igwanu_bug_pr_merge_round/011_wp1_outcome.md index f5fde1ac427..36ab5a3b092 100644 --- a/devlog/_fin/260827_igwanu_bug_pr_merge_round/011_wp1_outcome.md +++ b/devlog/_fin/260827_igwanu_bug_pr_merge_round/011_wp1_outcome.md @@ -99,6 +99,6 @@ runs the native TypeScript 7.0.2 compiler at ~0.44s for a full typecheck. 2. Review, rebase, and verification of other PRs may proceed in parallel — only the merges serialize. 3. Follow-up outside this round's scope: the same pre-disclosure material exists - in `devlog/_plan/260826_wp7e_presence_driven_oauth_failover/` and + in `devlog/_fin/260826_wp7e_presence_driven_oauth_failover/` and `devlog/_plan/260827_dev_hardening/`. Pre-existing, belongs to other active work streams, needs separate authority. **Escalate; do not silently rewrite.** diff --git a/devlog/_fin/260827_igwanu_bug_pr_merge_round/070_outcome.md b/devlog/_fin/260827_igwanu_bug_pr_merge_round/070_outcome.md index 635eae70a7a..4a830113d3a 100644 --- a/devlog/_fin/260827_igwanu_bug_pr_merge_round/070_outcome.md +++ b/devlog/_fin/260827_igwanu_bug_pr_merge_round/070_outcome.md @@ -96,7 +96,7 @@ incorrect correction is worse than the original error. ## Follow-ups outside this round's scope - The same pre-disclosure OAuth material exists in - `devlog/_plan/260826_wp7e_presence_driven_oauth_failover/` and + `devlog/_fin/260826_wp7e_presence_driven_oauth_failover/` and `devlog/_plan/260827_dev_hardening/`. Pre-existing, other work streams, needs separate authority. **Escalated, not silently rewritten.** - `CL-07 task effectiveness producer > inactivity timeout is bounded for trusted diff --git a/devlog/_plan/260827_kiro_builder_id_profile/010_builder_id_request_scoped_profile.md b/devlog/_fin/260827_kiro_builder_id_profile/010_builder_id_request_scoped_profile.md similarity index 100% rename from devlog/_plan/260827_kiro_builder_id_profile/010_builder_id_request_scoped_profile.md rename to devlog/_fin/260827_kiro_builder_id_profile/010_builder_id_request_scoped_profile.md diff --git a/devlog/_plan/260829_kiro_quota_pool/000_research_problem_and_state.md b/devlog/_fin/260829_kiro_quota_pool/000_research_problem_and_state.md similarity index 98% rename from devlog/_plan/260829_kiro_quota_pool/000_research_problem_and_state.md rename to devlog/_fin/260829_kiro_quota_pool/000_research_problem_and_state.md index 468ac62dee4..3bffbfc1fe4 100644 --- a/devlog/_plan/260829_kiro_quota_pool/000_research_problem_and_state.md +++ b/devlog/_fin/260829_kiro_quota_pool/000_research_problem_and_state.md @@ -1,6 +1,6 @@ # 000 — Kiro quota + pool: problem statement and current state -Unit: `devlog/_plan/260829_kiro_quota_pool/` +Unit: `devlog/_fin/260829_kiro_quota_pool/` Opened: 2026-08-29 Work classes: C3 (quota fetcher, pool selection), C2 (surfaces, docs) diff --git a/devlog/_plan/260829_kiro_quota_pool/001_research_upstream_wire_contract.md b/devlog/_fin/260829_kiro_quota_pool/001_research_upstream_wire_contract.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/001_research_upstream_wire_contract.md rename to devlog/_fin/260829_kiro_quota_pool/001_research_upstream_wire_contract.md diff --git a/devlog/_plan/260829_kiro_quota_pool/002_research_kirolb_headtohead.md b/devlog/_fin/260829_kiro_quota_pool/002_research_kirolb_headtohead.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/002_research_kirolb_headtohead.md rename to devlog/_fin/260829_kiro_quota_pool/002_research_kirolb_headtohead.md diff --git a/devlog/_plan/260829_kiro_quota_pool/003_research_pr_reconciliation.md b/devlog/_fin/260829_kiro_quota_pool/003_research_pr_reconciliation.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/003_research_pr_reconciliation.md rename to devlog/_fin/260829_kiro_quota_pool/003_research_pr_reconciliation.md diff --git a/devlog/_plan/260829_kiro_quota_pool/010_kiro_usage_fetcher.md b/devlog/_fin/260829_kiro_quota_pool/010_kiro_usage_fetcher.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/010_kiro_usage_fetcher.md rename to devlog/_fin/260829_kiro_quota_pool/010_kiro_usage_fetcher.md diff --git a/devlog/_plan/260829_kiro_quota_pool/020_per_account_quota_wiring.md b/devlog/_fin/260829_kiro_quota_pool/020_per_account_quota_wiring.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/020_per_account_quota_wiring.md rename to devlog/_fin/260829_kiro_quota_pool/020_per_account_quota_wiring.md diff --git a/devlog/_plan/260829_kiro_quota_pool/030_quota_aware_pool_selection.md b/devlog/_fin/260829_kiro_quota_pool/030_quota_aware_pool_selection.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/030_quota_aware_pool_selection.md rename to devlog/_fin/260829_kiro_quota_pool/030_quota_aware_pool_selection.md diff --git a/devlog/_plan/260829_kiro_quota_pool/040_surfaces_cli_gui_docs.md b/devlog/_fin/260829_kiro_quota_pool/040_surfaces_cli_gui_docs.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/040_surfaces_cli_gui_docs.md rename to devlog/_fin/260829_kiro_quota_pool/040_surfaces_cli_gui_docs.md diff --git a/devlog/_plan/260829_kiro_quota_pool/050_verification_and_delivery.md b/devlog/_fin/260829_kiro_quota_pool/050_verification_and_delivery.md similarity index 97% rename from devlog/_plan/260829_kiro_quota_pool/050_verification_and_delivery.md rename to devlog/_fin/260829_kiro_quota_pool/050_verification_and_delivery.md index 94ab6a785e0..636369a317e 100644 --- a/devlog/_plan/260829_kiro_quota_pool/050_verification_and_delivery.md +++ b/devlog/_fin/260829_kiro_quota_pool/050_verification_and_delivery.md @@ -55,7 +55,7 @@ restart to seed routing. This unit does neither. - Commits: one per phase (`010`…`040`), plus the devlog unit. - PR against `dev`, full template (Summary / Verification / Checklist), GUI screenshot. - Push with `--no-verify` (user-authorized), merge after CI green. -- Move `devlog/_plan/260829_kiro_quota_pool/` → `devlog/_fin/` at close-out, since the +- Move `devlog/_fin/260829_kiro_quota_pool/` → `devlog/_fin/` at close-out, since the fix will be public by then. ## Security note diff --git a/devlog/_plan/260829_kiro_quota_pool/060_audit_round1_amendments.md b/devlog/_fin/260829_kiro_quota_pool/060_audit_round1_amendments.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/060_audit_round1_amendments.md rename to devlog/_fin/260829_kiro_quota_pool/060_audit_round1_amendments.md diff --git a/devlog/_plan/260829_kiro_quota_pool/070_audit_round2_amendments.md b/devlog/_fin/260829_kiro_quota_pool/070_audit_round2_amendments.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/070_audit_round2_amendments.md rename to devlog/_fin/260829_kiro_quota_pool/070_audit_round2_amendments.md diff --git a/devlog/_plan/260829_kiro_quota_pool/080_head_to_head_result.md b/devlog/_fin/260829_kiro_quota_pool/080_head_to_head_result.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/080_head_to_head_result.md rename to devlog/_fin/260829_kiro_quota_pool/080_head_to_head_result.md diff --git a/devlog/_plan/260829_kiro_quota_pool/090_predispatch_selection.md b/devlog/_fin/260829_kiro_quota_pool/090_predispatch_selection.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/090_predispatch_selection.md rename to devlog/_fin/260829_kiro_quota_pool/090_predispatch_selection.md diff --git a/devlog/_plan/260829_kiro_quota_pool/100_quota_persistence.md b/devlog/_fin/260829_kiro_quota_pool/100_quota_persistence.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/100_quota_persistence.md rename to devlog/_fin/260829_kiro_quota_pool/100_quota_persistence.md diff --git a/devlog/_plan/260829_kiro_quota_pool/110_integrated_verification.md b/devlog/_fin/260829_kiro_quota_pool/110_integrated_verification.md similarity index 100% rename from devlog/_plan/260829_kiro_quota_pool/110_integrated_verification.md rename to devlog/_fin/260829_kiro_quota_pool/110_integrated_verification.md diff --git a/devlog/_plan/260830_models_provider_header/000_baseline_and_roadmap.md b/devlog/_fin/260830_models_provider_header/000_baseline_and_roadmap.md similarity index 100% rename from devlog/_plan/260830_models_provider_header/000_baseline_and_roadmap.md rename to devlog/_fin/260830_models_provider_header/000_baseline_and_roadmap.md diff --git a/devlog/_plan/260830_models_provider_header/010_toggle_basis_and_shrink.md b/devlog/_fin/260830_models_provider_header/010_toggle_basis_and_shrink.md similarity index 100% rename from devlog/_plan/260830_models_provider_header/010_toggle_basis_and_shrink.md rename to devlog/_fin/260830_models_provider_header/010_toggle_basis_and_shrink.md diff --git a/devlog/_plan/260830_models_provider_header/011_rejected_designs.md b/devlog/_fin/260830_models_provider_header/011_rejected_designs.md similarity index 100% rename from devlog/_plan/260830_models_provider_header/011_rejected_designs.md rename to devlog/_fin/260830_models_provider_header/011_rejected_designs.md diff --git a/devlog/_plan/260830_models_provider_header/020_control_affordances.md b/devlog/_fin/260830_models_provider_header/020_control_affordances.md similarity index 100% rename from devlog/_plan/260830_models_provider_header/020_control_affordances.md rename to devlog/_fin/260830_models_provider_header/020_control_affordances.md diff --git a/devlog/_plan/260830_models_provider_header/030_uniform_row_and_hover.md b/devlog/_fin/260830_models_provider_header/030_uniform_row_and_hover.md similarity index 100% rename from devlog/_plan/260830_models_provider_header/030_uniform_row_and_hover.md rename to devlog/_fin/260830_models_provider_header/030_uniform_row_and_hover.md diff --git a/devlog/_plan/260830_models_provider_header/040_cap_cluster_and_occupied_slot.md b/devlog/_fin/260830_models_provider_header/040_cap_cluster_and_occupied_slot.md similarity index 100% rename from devlog/_plan/260830_models_provider_header/040_cap_cluster_and_occupied_slot.md rename to devlog/_fin/260830_models_provider_header/040_cap_cluster_and_occupied_slot.md diff --git a/devlog/_plan/260830_models_provider_header/050_hover_affordance_and_column_gate.md b/devlog/_fin/260830_models_provider_header/050_hover_affordance_and_column_gate.md similarity index 100% rename from devlog/_plan/260830_models_provider_header/050_hover_affordance_and_column_gate.md rename to devlog/_fin/260830_models_provider_header/050_hover_affordance_and_column_gate.md diff --git a/devlog/_plan/260830_models_provider_header/evidence/010-after-ko-1100.png b/devlog/_fin/260830_models_provider_header/evidence/010-after-ko-1100.png similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/010-after-ko-1100.png rename to devlog/_fin/260830_models_provider_header/evidence/010-after-ko-1100.png diff --git a/devlog/_plan/260830_models_provider_header/evidence/010-before-ko-1100.png b/devlog/_fin/260830_models_provider_header/evidence/010-before-ko-1100.png similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/010-before-ko-1100.png rename to devlog/_fin/260830_models_provider_header/evidence/010-before-ko-1100.png diff --git a/devlog/_plan/260830_models_provider_header/evidence/020-after-labeled-switch-ko-1280.png b/devlog/_fin/260830_models_provider_header/evidence/020-after-labeled-switch-ko-1280.png similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/020-after-labeled-switch-ko-1280.png rename to devlog/_fin/260830_models_provider_header/evidence/020-after-labeled-switch-ko-1280.png diff --git a/devlog/_plan/260830_models_provider_header/evidence/020-after-labels.json b/devlog/_fin/260830_models_provider_header/evidence/020-after-labels.json similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/020-after-labels.json rename to devlog/_fin/260830_models_provider_header/evidence/020-after-labels.json diff --git a/devlog/_plan/260830_models_provider_header/evidence/030-baseline.json b/devlog/_fin/260830_models_provider_header/evidence/030-baseline.json similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/030-baseline.json rename to devlog/_fin/260830_models_provider_header/evidence/030-baseline.json diff --git a/devlog/_plan/260830_models_provider_header/evidence/030-geometry-harness.ts b/devlog/_fin/260830_models_provider_header/evidence/030-geometry-harness.ts similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/030-geometry-harness.ts rename to devlog/_fin/260830_models_provider_header/evidence/030-geometry-harness.ts diff --git a/devlog/_plan/260830_models_provider_header/evidence/030-locale-harness.ts b/devlog/_fin/260830_models_provider_header/evidence/030-locale-harness.ts similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/030-locale-harness.ts rename to devlog/_fin/260830_models_provider_header/evidence/030-locale-harness.ts diff --git a/devlog/_plan/260830_models_provider_header/evidence/030-locale-sweep.json b/devlog/_fin/260830_models_provider_header/evidence/030-locale-sweep.json similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/030-locale-sweep.json rename to devlog/_fin/260830_models_provider_header/evidence/030-locale-sweep.json diff --git a/devlog/_plan/260830_models_provider_header/evidence/040-after-cap-slot-ko-1280.png b/devlog/_fin/260830_models_provider_header/evidence/040-after-cap-slot-ko-1280.png similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/040-after-cap-slot-ko-1280.png rename to devlog/_fin/260830_models_provider_header/evidence/040-after-cap-slot-ko-1280.png diff --git a/devlog/_plan/260830_models_provider_header/evidence/040-geometry-harness.ts b/devlog/_fin/260830_models_provider_header/evidence/040-geometry-harness.ts similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/040-geometry-harness.ts rename to devlog/_fin/260830_models_provider_header/evidence/040-geometry-harness.ts diff --git a/devlog/_plan/260830_models_provider_header/evidence/050-state-harness.ts b/devlog/_fin/260830_models_provider_header/evidence/050-state-harness.ts similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/050-state-harness.ts rename to devlog/_fin/260830_models_provider_header/evidence/050-state-harness.ts diff --git a/devlog/_plan/260830_models_provider_header/evidence/wp2-states.json b/devlog/_fin/260830_models_provider_header/evidence/wp2-states.json similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/wp2-states.json rename to devlog/_fin/260830_models_provider_header/evidence/wp2-states.json diff --git a/devlog/_plan/260830_models_provider_header/evidence/wp2-touch.json b/devlog/_fin/260830_models_provider_header/evidence/wp2-touch.json similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/wp2-touch.json rename to devlog/_fin/260830_models_provider_header/evidence/wp2-touch.json diff --git a/devlog/_plan/260830_models_provider_header/evidence/wp3-geometry.json b/devlog/_fin/260830_models_provider_header/evidence/wp3-geometry.json similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/wp3-geometry.json rename to devlog/_fin/260830_models_provider_header/evidence/wp3-geometry.json diff --git a/devlog/_plan/260830_models_provider_header/evidence/wp3-state.json b/devlog/_fin/260830_models_provider_header/evidence/wp3-state.json similarity index 100% rename from devlog/_plan/260830_models_provider_header/evidence/wp3-state.json rename to devlog/_fin/260830_models_provider_header/evidence/wp3-state.json diff --git a/devlog/_plan/260901_merge_train_round3/000_plan.md b/devlog/_fin/260901_merge_train_round3/000_plan.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/000_plan.md rename to devlog/_fin/260901_merge_train_round3/000_plan.md diff --git a/devlog/_plan/260901_merge_train_round3/002_audit_round1_synthesis.md b/devlog/_fin/260901_merge_train_round3/002_audit_round1_synthesis.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/002_audit_round1_synthesis.md rename to devlog/_fin/260901_merge_train_round3/002_audit_round1_synthesis.md diff --git a/devlog/_plan/260901_merge_train_round3/010_wp1_3114_docs_devlog.md b/devlog/_fin/260901_merge_train_round3/010_wp1_3114_docs_devlog.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/010_wp1_3114_docs_devlog.md rename to devlog/_fin/260901_merge_train_round3/010_wp1_3114_docs_devlog.md diff --git a/devlog/_plan/260901_merge_train_round3/011_wp1_outcome.md b/devlog/_fin/260901_merge_train_round3/011_wp1_outcome.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/011_wp1_outcome.md rename to devlog/_fin/260901_merge_train_round3/011_wp1_outcome.md diff --git a/devlog/_plan/260901_merge_train_round3/020_wp2_3122_provider_patch_fakeip.md b/devlog/_fin/260901_merge_train_round3/020_wp2_3122_provider_patch_fakeip.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/020_wp2_3122_provider_patch_fakeip.md rename to devlog/_fin/260901_merge_train_round3/020_wp2_3122_provider_patch_fakeip.md diff --git a/devlog/_plan/260901_merge_train_round3/021_wp2_security_review.md b/devlog/_fin/260901_merge_train_round3/021_wp2_security_review.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/021_wp2_security_review.md rename to devlog/_fin/260901_merge_train_round3/021_wp2_security_review.md diff --git a/devlog/_plan/260901_merge_train_round3/030_wp3_3104_service_and_closeouts.md b/devlog/_fin/260901_merge_train_round3/030_wp3_3104_service_and_closeouts.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/030_wp3_3104_service_and_closeouts.md rename to devlog/_fin/260901_merge_train_round3/030_wp3_3104_service_and_closeouts.md diff --git a/devlog/_plan/260901_merge_train_round3/031_wp3_outcome.md b/devlog/_fin/260901_merge_train_round3/031_wp3_outcome.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/031_wp3_outcome.md rename to devlog/_fin/260901_merge_train_round3/031_wp3_outcome.md diff --git a/devlog/_plan/260901_merge_train_round3/040_wp4_3042_pid_probe.md b/devlog/_fin/260901_merge_train_round3/040_wp4_3042_pid_probe.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/040_wp4_3042_pid_probe.md rename to devlog/_fin/260901_merge_train_round3/040_wp4_3042_pid_probe.md diff --git a/devlog/_plan/260901_merge_train_round3/050_wp5_close_3077_rebase_3109_3112.md b/devlog/_fin/260901_merge_train_round3/050_wp5_close_3077_rebase_3109_3112.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/050_wp5_close_3077_rebase_3109_3112.md rename to devlog/_fin/260901_merge_train_round3/050_wp5_close_3077_rebase_3109_3112.md diff --git a/devlog/_plan/260901_merge_train_round3/051_wp5_outcome.md b/devlog/_fin/260901_merge_train_round3/051_wp5_outcome.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/051_wp5_outcome.md rename to devlog/_fin/260901_merge_train_round3/051_wp5_outcome.md diff --git a/devlog/_plan/260901_merge_train_round3/060_wp7_websocket_refresh_flake.md b/devlog/_fin/260901_merge_train_round3/060_wp7_websocket_refresh_flake.md similarity index 100% rename from devlog/_plan/260901_merge_train_round3/060_wp7_websocket_refresh_flake.md rename to devlog/_fin/260901_merge_train_round3/060_wp7_websocket_refresh_flake.md diff --git a/devlog/_plan/260902_bug_label_drawdown/000_plan.md b/devlog/_fin/260902_bug_label_drawdown/000_plan.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/000_plan.md rename to devlog/_fin/260902_bug_label_drawdown/000_plan.md diff --git a/devlog/_plan/260902_bug_label_drawdown/010_phase1.md b/devlog/_fin/260902_bug_label_drawdown/010_phase1.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/010_phase1.md rename to devlog/_fin/260902_bug_label_drawdown/010_phase1.md diff --git a/devlog/_plan/260902_bug_label_drawdown/011_bd1_landing.md b/devlog/_fin/260902_bug_label_drawdown/011_bd1_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/011_bd1_landing.md rename to devlog/_fin/260902_bug_label_drawdown/011_bd1_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/020_phase2.md b/devlog/_fin/260902_bug_label_drawdown/020_phase2.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/020_phase2.md rename to devlog/_fin/260902_bug_label_drawdown/020_phase2.md diff --git a/devlog/_plan/260902_bug_label_drawdown/021_bd2_landing.md b/devlog/_fin/260902_bug_label_drawdown/021_bd2_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/021_bd2_landing.md rename to devlog/_fin/260902_bug_label_drawdown/021_bd2_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/030_phase3.md b/devlog/_fin/260902_bug_label_drawdown/030_phase3.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/030_phase3.md rename to devlog/_fin/260902_bug_label_drawdown/030_phase3.md diff --git a/devlog/_plan/260902_bug_label_drawdown/031_bd3_landing.md b/devlog/_fin/260902_bug_label_drawdown/031_bd3_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/031_bd3_landing.md rename to devlog/_fin/260902_bug_label_drawdown/031_bd3_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/040_phase4.md b/devlog/_fin/260902_bug_label_drawdown/040_phase4.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/040_phase4.md rename to devlog/_fin/260902_bug_label_drawdown/040_phase4.md diff --git a/devlog/_plan/260902_bug_label_drawdown/041_bd4_landing.md b/devlog/_fin/260902_bug_label_drawdown/041_bd4_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/041_bd4_landing.md rename to devlog/_fin/260902_bug_label_drawdown/041_bd4_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/050_bd5_replan.md b/devlog/_fin/260902_bug_label_drawdown/050_bd5_replan.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/050_bd5_replan.md rename to devlog/_fin/260902_bug_label_drawdown/050_bd5_replan.md diff --git a/devlog/_plan/260902_bug_label_drawdown/050_phase5.md b/devlog/_fin/260902_bug_label_drawdown/050_phase5.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/050_phase5.md rename to devlog/_fin/260902_bug_label_drawdown/050_phase5.md diff --git a/devlog/_plan/260902_bug_label_drawdown/051_i3141.md b/devlog/_fin/260902_bug_label_drawdown/051_i3141.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/051_i3141.md rename to devlog/_fin/260902_bug_label_drawdown/051_i3141.md diff --git a/devlog/_plan/260902_bug_label_drawdown/052_i3152.md b/devlog/_fin/260902_bug_label_drawdown/052_i3152.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/052_i3152.md rename to devlog/_fin/260902_bug_label_drawdown/052_i3152.md diff --git a/devlog/_plan/260902_bug_label_drawdown/053_i3136.md b/devlog/_fin/260902_bug_label_drawdown/053_i3136.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/053_i3136.md rename to devlog/_fin/260902_bug_label_drawdown/053_i3136.md diff --git a/devlog/_plan/260902_bug_label_drawdown/054_i3150.md b/devlog/_fin/260902_bug_label_drawdown/054_i3150.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/054_i3150.md rename to devlog/_fin/260902_bug_label_drawdown/054_i3150.md diff --git a/devlog/_plan/260902_bug_label_drawdown/055_i3155.md b/devlog/_fin/260902_bug_label_drawdown/055_i3155.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/055_i3155.md rename to devlog/_fin/260902_bug_label_drawdown/055_i3155.md diff --git a/devlog/_plan/260902_bug_label_drawdown/056_i1419.md b/devlog/_fin/260902_bug_label_drawdown/056_i1419.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/056_i1419.md rename to devlog/_fin/260902_bug_label_drawdown/056_i1419.md diff --git a/devlog/_plan/260902_bug_label_drawdown/057_i2999.md b/devlog/_fin/260902_bug_label_drawdown/057_i2999.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/057_i2999.md rename to devlog/_fin/260902_bug_label_drawdown/057_i2999.md diff --git a/devlog/_plan/260902_bug_label_drawdown/058_i2813.md b/devlog/_fin/260902_bug_label_drawdown/058_i2813.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/058_i2813.md rename to devlog/_fin/260902_bug_label_drawdown/058_i2813.md diff --git a/devlog/_plan/260902_bug_label_drawdown/059_i1527.md b/devlog/_fin/260902_bug_label_drawdown/059_i1527.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/059_i1527.md rename to devlog/_fin/260902_bug_label_drawdown/059_i1527.md diff --git a/devlog/_plan/260902_bug_label_drawdown/060_phase6.md b/devlog/_fin/260902_bug_label_drawdown/060_phase6.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/060_phase6.md rename to devlog/_fin/260902_bug_label_drawdown/060_phase6.md diff --git a/devlog/_plan/260902_bug_label_drawdown/061_p3193.md b/devlog/_fin/260902_bug_label_drawdown/061_p3193.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/061_p3193.md rename to devlog/_fin/260902_bug_label_drawdown/061_p3193.md diff --git a/devlog/_plan/260902_bug_label_drawdown/062_p3193_landing.md b/devlog/_fin/260902_bug_label_drawdown/062_p3193_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/062_p3193_landing.md rename to devlog/_fin/260902_bug_label_drawdown/062_p3193_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/063_i3217.md b/devlog/_fin/260902_bug_label_drawdown/063_i3217.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/063_i3217.md rename to devlog/_fin/260902_bug_label_drawdown/063_i3217.md diff --git a/devlog/_plan/260902_bug_label_drawdown/064_i3217_landing.md b/devlog/_fin/260902_bug_label_drawdown/064_i3217_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/064_i3217_landing.md rename to devlog/_fin/260902_bug_label_drawdown/064_i3217_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/070_regaudit.md b/devlog/_fin/260902_bug_label_drawdown/070_regaudit.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/070_regaudit.md rename to devlog/_fin/260902_bug_label_drawdown/070_regaudit.md diff --git a/devlog/_plan/260902_bug_label_drawdown/071_regaudit_landing.md b/devlog/_fin/260902_bug_label_drawdown/071_regaudit_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/071_regaudit_landing.md rename to devlog/_fin/260902_bug_label_drawdown/071_regaudit_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/072_regaudit2.md b/devlog/_fin/260902_bug_label_drawdown/072_regaudit2.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/072_regaudit2.md rename to devlog/_fin/260902_bug_label_drawdown/072_regaudit2.md diff --git a/devlog/_plan/260902_bug_label_drawdown/080_p3226.md b/devlog/_fin/260902_bug_label_drawdown/080_p3226.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/080_p3226.md rename to devlog/_fin/260902_bug_label_drawdown/080_p3226.md diff --git a/devlog/_plan/260902_bug_label_drawdown/081_p3226_landing.md b/devlog/_fin/260902_bug_label_drawdown/081_p3226_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/081_p3226_landing.md rename to devlog/_fin/260902_bug_label_drawdown/081_p3226_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/082_p3227.md b/devlog/_fin/260902_bug_label_drawdown/082_p3227.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/082_p3227.md rename to devlog/_fin/260902_bug_label_drawdown/082_p3227.md diff --git a/devlog/_plan/260902_bug_label_drawdown/083_p3227_landing.md b/devlog/_fin/260902_bug_label_drawdown/083_p3227_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/083_p3227_landing.md rename to devlog/_fin/260902_bug_label_drawdown/083_p3227_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/084_p3228.md b/devlog/_fin/260902_bug_label_drawdown/084_p3228.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/084_p3228.md rename to devlog/_fin/260902_bug_label_drawdown/084_p3228.md diff --git a/devlog/_plan/260902_bug_label_drawdown/085_p3228_landing.md b/devlog/_fin/260902_bug_label_drawdown/085_p3228_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/085_p3228_landing.md rename to devlog/_fin/260902_bug_label_drawdown/085_p3228_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/086_p3229.md b/devlog/_fin/260902_bug_label_drawdown/086_p3229.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/086_p3229.md rename to devlog/_fin/260902_bug_label_drawdown/086_p3229.md diff --git a/devlog/_plan/260902_bug_label_drawdown/087_p3229_landing.md b/devlog/_fin/260902_bug_label_drawdown/087_p3229_landing.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/087_p3229_landing.md rename to devlog/_fin/260902_bug_label_drawdown/087_p3229_landing.md diff --git a/devlog/_plan/260902_bug_label_drawdown/088_r3239.md b/devlog/_fin/260902_bug_label_drawdown/088_r3239.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/088_r3239.md rename to devlog/_fin/260902_bug_label_drawdown/088_r3239.md diff --git a/devlog/_plan/260902_bug_label_drawdown/089_p3232.md b/devlog/_fin/260902_bug_label_drawdown/089_p3232.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/089_p3232.md rename to devlog/_fin/260902_bug_label_drawdown/089_p3232.md diff --git a/devlog/_plan/260902_bug_label_drawdown/090_regaudit3.md b/devlog/_fin/260902_bug_label_drawdown/090_regaudit3.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/090_regaudit3.md rename to devlog/_fin/260902_bug_label_drawdown/090_regaudit3.md diff --git a/devlog/_plan/260902_bug_label_drawdown/091_rv3239.md b/devlog/_fin/260902_bug_label_drawdown/091_rv3239.md similarity index 100% rename from devlog/_plan/260902_bug_label_drawdown/091_rv3239.md rename to devlog/_fin/260902_bug_label_drawdown/091_rv3239.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/000_research.md b/devlog/_fin/260902_cursor_bundle_effort_table/000_research.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/000_research.md rename to devlog/_fin/260902_cursor_bundle_effort_table/000_research.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/001_bundle_protocol.md b/devlog/_fin/260902_cursor_bundle_effort_table/001_bundle_protocol.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/001_bundle_protocol.md rename to devlog/_fin/260902_cursor_bundle_effort_table/001_bundle_protocol.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/005_audit_round1.md b/devlog/_fin/260902_cursor_bundle_effort_table/005_audit_round1.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/005_audit_round1.md rename to devlog/_fin/260902_cursor_bundle_effort_table/005_audit_round1.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/010_wp1_bundle_effort_table.md b/devlog/_fin/260902_cursor_bundle_effort_table/010_wp1_bundle_effort_table.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/010_wp1_bundle_effort_table.md rename to devlog/_fin/260902_cursor_bundle_effort_table/010_wp1_bundle_effort_table.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/020_wp2_models_max_output.md b/devlog/_fin/260902_cursor_bundle_effort_table/020_wp2_models_max_output.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/020_wp2_models_max_output.md rename to devlog/_fin/260902_cursor_bundle_effort_table/020_wp2_models_max_output.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/030_wp3_effort_variant_rows.md b/devlog/_fin/260902_cursor_bundle_effort_table/030_wp3_effort_variant_rows.md similarity index 99% rename from devlog/_plan/260902_cursor_bundle_effort_table/030_wp3_effort_variant_rows.md rename to devlog/_fin/260902_cursor_bundle_effort_table/030_wp3_effort_variant_rows.md index ae113988fe2..c695c70ce52 100644 --- a/devlog/_plan/260902_cursor_bundle_effort_table/030_wp3_effort_variant_rows.md +++ b/devlog/_fin/260902_cursor_bundle_effort_table/030_wp3_effort_variant_rows.md @@ -28,7 +28,7 @@ Amendment (d): `tableLess` in the status route uses `predictCursorEffort(id, tab --- -No files were modified. The untracked `devlog/_plan/260902_cursor_bundle_effort_table/` appeared concurrently and was left untouched. No tests were run. +No files were modified. The untracked `devlog/_fin/260902_cursor_bundle_effort_table/` appeared concurrently and was left untouched. No tests were run. ## Recommendation diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/040_wp4_gui_provenance_hint.md b/devlog/_fin/260902_cursor_bundle_effort_table/040_wp4_gui_provenance_hint.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/040_wp4_gui_provenance_hint.md rename to devlog/_fin/260902_cursor_bundle_effort_table/040_wp4_gui_provenance_hint.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/041_wp4_screenshot.png b/devlog/_fin/260902_cursor_bundle_effort_table/041_wp4_screenshot.png similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/041_wp4_screenshot.png rename to devlog/_fin/260902_cursor_bundle_effort_table/041_wp4_screenshot.png diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/050_wp5_claude_id_normalizer.md b/devlog/_fin/260902_cursor_bundle_effort_table/050_wp5_claude_id_normalizer.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/050_wp5_claude_id_normalizer.md rename to devlog/_fin/260902_cursor_bundle_effort_table/050_wp5_claude_id_normalizer.md diff --git a/devlog/_plan/260902_cursor_bundle_effort_table/060_wp6_guide.md b/devlog/_fin/260902_cursor_bundle_effort_table/060_wp6_guide.md similarity index 100% rename from devlog/_plan/260902_cursor_bundle_effort_table/060_wp6_guide.md rename to devlog/_fin/260902_cursor_bundle_effort_table/060_wp6_guide.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/000_research.md b/devlog/_fin/260902_cursor_integrations_tab/000_research.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/000_research.md rename to devlog/_fin/260902_cursor_integrations_tab/000_research.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/005_audit_round1.md b/devlog/_fin/260902_cursor_integrations_tab/005_audit_round1.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/005_audit_round1.md rename to devlog/_fin/260902_cursor_integrations_tab/005_audit_round1.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/006_roadmap_lock.md b/devlog/_fin/260902_cursor_integrations_tab/006_roadmap_lock.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/006_roadmap_lock.md rename to devlog/_fin/260902_cursor_integrations_tab/006_roadmap_lock.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/007_audit_round1_reviewer.md b/devlog/_fin/260902_cursor_integrations_tab/007_audit_round1_reviewer.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/007_audit_round1_reviewer.md rename to devlog/_fin/260902_cursor_integrations_tab/007_audit_round1_reviewer.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/010_layer1_server_status.md b/devlog/_fin/260902_cursor_integrations_tab/010_layer1_server_status.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/010_layer1_server_status.md rename to devlog/_fin/260902_cursor_integrations_tab/010_layer1_server_status.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/020_layer2_gui_tab.md b/devlog/_fin/260902_cursor_integrations_tab/020_layer2_gui_tab.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/020_layer2_gui_tab.md rename to devlog/_fin/260902_cursor_integrations_tab/020_layer2_gui_tab.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/030_layer3_docs.md b/devlog/_fin/260902_cursor_integrations_tab/030_layer3_docs.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/030_layer3_docs.md rename to devlog/_fin/260902_cursor_integrations_tab/030_layer3_docs.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/040_publish_stack.md b/devlog/_fin/260902_cursor_integrations_tab/040_publish_stack.md similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/040_publish_stack.md rename to devlog/_fin/260902_cursor_integrations_tab/040_publish_stack.md diff --git a/devlog/_plan/260902_cursor_integrations_tab/assets/cursor-overview-card.png b/devlog/_fin/260902_cursor_integrations_tab/assets/cursor-overview-card.png similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/assets/cursor-overview-card.png rename to devlog/_fin/260902_cursor_integrations_tab/assets/cursor-overview-card.png diff --git a/devlog/_plan/260902_cursor_integrations_tab/assets/cursor-tab-detected.png b/devlog/_fin/260902_cursor_integrations_tab/assets/cursor-tab-detected.png similarity index 100% rename from devlog/_plan/260902_cursor_integrations_tab/assets/cursor-tab-detected.png rename to devlog/_fin/260902_cursor_integrations_tab/assets/cursor-tab-detected.png diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/000_scope.md b/devlog/_fin/260902_nonbug_adoption_backlog/000_scope.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/000_scope.md rename to devlog/_fin/260902_nonbug_adoption_backlog/000_scope.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/010_wp1_adaptive_reasoning_effort.md b/devlog/_fin/260902_nonbug_adoption_backlog/010_wp1_adaptive_reasoning_effort.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/010_wp1_adaptive_reasoning_effort.md rename to devlog/_fin/260902_nonbug_adoption_backlog/010_wp1_adaptive_reasoning_effort.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/011_wp1_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/011_wp1_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/011_wp1_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/011_wp1_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/020_wp2_outbound_body_guard.md b/devlog/_fin/260902_nonbug_adoption_backlog/020_wp2_outbound_body_guard.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/020_wp2_outbound_body_guard.md rename to devlog/_fin/260902_nonbug_adoption_backlog/020_wp2_outbound_body_guard.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/021_wp2_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/021_wp2_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/021_wp2_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/021_wp2_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/030_wp3_compaction_provider.md b/devlog/_fin/260902_nonbug_adoption_backlog/030_wp3_compaction_provider.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/030_wp3_compaction_provider.md rename to devlog/_fin/260902_nonbug_adoption_backlog/030_wp3_compaction_provider.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/031_wp3_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/031_wp3_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/031_wp3_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/031_wp3_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/040_wp4_retain_models.md b/devlog/_fin/260902_nonbug_adoption_backlog/040_wp4_retain_models.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/040_wp4_retain_models.md rename to devlog/_fin/260902_nonbug_adoption_backlog/040_wp4_retain_models.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/041_wp4_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/041_wp4_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/041_wp4_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/041_wp4_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/050_wp5_xai_imagine_carry.md b/devlog/_fin/260902_nonbug_adoption_backlog/050_wp5_xai_imagine_carry.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/050_wp5_xai_imagine_carry.md rename to devlog/_fin/260902_nonbug_adoption_backlog/050_wp5_xai_imagine_carry.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/051_wp5_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/051_wp5_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/051_wp5_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/051_wp5_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/060_wp6_authless_desktop.md b/devlog/_fin/260902_nonbug_adoption_backlog/060_wp6_authless_desktop.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/060_wp6_authless_desktop.md rename to devlog/_fin/260902_nonbug_adoption_backlog/060_wp6_authless_desktop.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/061_wp6_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/061_wp6_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/061_wp6_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/061_wp6_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/070_wp7_shim_free_token.md b/devlog/_fin/260902_nonbug_adoption_backlog/070_wp7_shim_free_token.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/070_wp7_shim_free_token.md rename to devlog/_fin/260902_nonbug_adoption_backlog/070_wp7_shim_free_token.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/071_wp7_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/071_wp7_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/071_wp7_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/071_wp7_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/080_wp8_windows_proxy_auto.md b/devlog/_fin/260902_nonbug_adoption_backlog/080_wp8_windows_proxy_auto.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/080_wp8_windows_proxy_auto.md rename to devlog/_fin/260902_nonbug_adoption_backlog/080_wp8_windows_proxy_auto.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/081_wp8_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/081_wp8_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/081_wp8_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/081_wp8_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/090_wp9_keychain_keys.md b/devlog/_fin/260902_nonbug_adoption_backlog/090_wp9_keychain_keys.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/090_wp9_keychain_keys.md rename to devlog/_fin/260902_nonbug_adoption_backlog/090_wp9_keychain_keys.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/091_wp9_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/091_wp9_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/091_wp9_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/091_wp9_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/100_wp10_display_names_carry.md b/devlog/_fin/260902_nonbug_adoption_backlog/100_wp10_display_names_carry.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/100_wp10_display_names_carry.md rename to devlog/_fin/260902_nonbug_adoption_backlog/100_wp10_display_names_carry.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/101_wp10_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/101_wp10_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/101_wp10_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/101_wp10_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/110_wp11_antigravity_account_quota.md b/devlog/_fin/260902_nonbug_adoption_backlog/110_wp11_antigravity_account_quota.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/110_wp11_antigravity_account_quota.md rename to devlog/_fin/260902_nonbug_adoption_backlog/110_wp11_antigravity_account_quota.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/111_wp11_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/111_wp11_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/111_wp11_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/111_wp11_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/120_wp12_oauth_pool_capability.md b/devlog/_fin/260902_nonbug_adoption_backlog/120_wp12_oauth_pool_capability.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/120_wp12_oauth_pool_capability.md rename to devlog/_fin/260902_nonbug_adoption_backlog/120_wp12_oauth_pool_capability.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/121_wp12_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/121_wp12_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/121_wp12_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/121_wp12_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md b/devlog/_fin/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md rename to devlog/_fin/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/131_wp13_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/131_wp13_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/131_wp13_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/131_wp13_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/140_wp14_upstream_ws_carry.md b/devlog/_fin/260902_nonbug_adoption_backlog/140_wp14_upstream_ws_carry.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/140_wp14_upstream_ws_carry.md rename to devlog/_fin/260902_nonbug_adoption_backlog/140_wp14_upstream_ws_carry.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/141_wp14_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/141_wp14_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/141_wp14_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/141_wp14_audit_r1_synthesis.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/150_wp15_plaintext_v2_disposition.md b/devlog/_fin/260902_nonbug_adoption_backlog/150_wp15_plaintext_v2_disposition.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/150_wp15_plaintext_v2_disposition.md rename to devlog/_fin/260902_nonbug_adoption_backlog/150_wp15_plaintext_v2_disposition.md diff --git a/devlog/_plan/260902_nonbug_adoption_backlog/151_wp15_audit_r1_synthesis.md b/devlog/_fin/260902_nonbug_adoption_backlog/151_wp15_audit_r1_synthesis.md similarity index 100% rename from devlog/_plan/260902_nonbug_adoption_backlog/151_wp15_audit_r1_synthesis.md rename to devlog/_fin/260902_nonbug_adoption_backlog/151_wp15_audit_r1_synthesis.md diff --git a/devlog/_fin/260902_windows_ci_release/070_outcome.md b/devlog/_fin/260902_windows_ci_release/070_outcome.md index a0791df4ea9..707161b1505 100644 --- a/devlog/_fin/260902_windows_ci_release/070_outcome.md +++ b/devlog/_fin/260902_windows_ci_release/070_outcome.md @@ -33,7 +33,7 @@ fuck-powershell: 56e1801, 2f2107d — 87→90 cases, graph 313/643, validate OK. ## Regression audit (wp4) -Reused `devlog/_plan/260902_bug_label_drawdown/071_regaudit_landing.md` (four reviewers, +Reused `devlog/_fin/260902_bug_label_drawdown/071_regaudit_landing.md` (four reviewers, no regression main..dev at 5bc6939d8) plus the Windows repair reviews above for the delta since. ## Release (wp5) diff --git a/devlog/_plan/260904_flagship_native_always_visible/000_research.md b/devlog/_fin/260904_flagship_native_always_visible/000_research.md similarity index 100% rename from devlog/_plan/260904_flagship_native_always_visible/000_research.md rename to devlog/_fin/260904_flagship_native_always_visible/000_research.md diff --git a/devlog/_plan/260904_flagship_native_always_visible/005_audit_synthesis.md b/devlog/_fin/260904_flagship_native_always_visible/005_audit_synthesis.md similarity index 100% rename from devlog/_plan/260904_flagship_native_always_visible/005_audit_synthesis.md rename to devlog/_fin/260904_flagship_native_always_visible/005_audit_synthesis.md diff --git a/devlog/_plan/260904_flagship_native_always_visible/010_wp2_ungate.md b/devlog/_fin/260904_flagship_native_always_visible/010_wp2_ungate.md similarity index 100% rename from devlog/_plan/260904_flagship_native_always_visible/010_wp2_ungate.md rename to devlog/_fin/260904_flagship_native_always_visible/010_wp2_ungate.md diff --git a/devlog/_plan/260904_flagship_native_always_visible/020_wp3_landing.md b/devlog/_fin/260904_flagship_native_always_visible/020_wp3_landing.md similarity index 100% rename from devlog/_plan/260904_flagship_native_always_visible/020_wp3_landing.md rename to devlog/_fin/260904_flagship_native_always_visible/020_wp3_landing.md diff --git a/devlog/_fin/260904_priority65_closeout/040_wp5_reset_credit_identity.md b/devlog/_fin/260904_priority65_closeout/040_wp5_reset_credit_identity.md index 97db7fc90bd..77dc8ce2c5e 100644 --- a/devlog/_fin/260904_priority65_closeout/040_wp5_reset_credit_identity.md +++ b/devlog/_fin/260904_priority65_closeout/040_wp5_reset_credit_identity.md @@ -39,7 +39,7 @@ $ rg -n 'openResetCreditOperation|settleResetCreditOperation|markResetCreditOper (출력 없음) $ rg -n 'reset-credit-operation-ledger' -g '!node_modules' . -devlog/_plan/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md:6 +devlog/_fin/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md:6 tests/codex-reset-credit-operation-ledger.test.ts:24 ``` @@ -60,7 +60,7 @@ legacy 행 승격 + 부분 실패 롤백을 넣지 않는다. 이건 "언젠가 **(4) 별도 devlog가 이 원장을 "unused"로 명시하고 재사용을 계획한다.** -`devlog/_plan/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md:6`: +`devlog/_fin/260902_nonbug_adoption_backlog/130_wp13_reset_credit_auto_redeem.md:6`: > An unused #657 ledger (`reset-credit-operation-ledger.ts`, kinds `recovery|manual`) exists. diff --git a/devlog/_plan/260905_astra_subagent_roster/000_plan.md b/devlog/_fin/260905_astra_subagent_roster/000_plan.md similarity index 100% rename from devlog/_plan/260905_astra_subagent_roster/000_plan.md rename to devlog/_fin/260905_astra_subagent_roster/000_plan.md diff --git a/devlog/_plan/260905_astra_subagent_roster/010_roster_upgrade.md b/devlog/_fin/260905_astra_subagent_roster/010_roster_upgrade.md similarity index 100% rename from devlog/_plan/260905_astra_subagent_roster/010_roster_upgrade.md rename to devlog/_fin/260905_astra_subagent_roster/010_roster_upgrade.md diff --git a/devlog/_plan/260905_http_upstream_ws_parity/000_plan.md b/devlog/_fin/260905_http_upstream_ws_parity/000_plan.md similarity index 100% rename from devlog/_plan/260905_http_upstream_ws_parity/000_plan.md rename to devlog/_fin/260905_http_upstream_ws_parity/000_plan.md diff --git a/devlog/_plan/260905_http_upstream_ws_parity/001_source_contract.md b/devlog/_fin/260905_http_upstream_ws_parity/001_source_contract.md similarity index 100% rename from devlog/_plan/260905_http_upstream_ws_parity/001_source_contract.md rename to devlog/_fin/260905_http_upstream_ws_parity/001_source_contract.md diff --git a/devlog/_plan/260905_http_upstream_ws_parity/002_audit_synthesis.md b/devlog/_fin/260905_http_upstream_ws_parity/002_audit_synthesis.md similarity index 91% rename from devlog/_plan/260905_http_upstream_ws_parity/002_audit_synthesis.md rename to devlog/_fin/260905_http_upstream_ws_parity/002_audit_synthesis.md index 4fc60e5cd87..a5575a085b5 100644 --- a/devlog/_plan/260905_http_upstream_ws_parity/002_audit_synthesis.md +++ b/devlog/_fin/260905_http_upstream_ws_parity/002_audit_synthesis.md @@ -10,7 +10,7 @@ First independent verdict: FAIL, four High and one Medium planning blockers. No No blockers were dismissed for convenience. Re-review is limited to these amendments and their interaction with existing retry/cleanup boundaries. Final resolution remains pending until the reviewer returns. -Additional baseline checks: direct `/Users/jun/.bun/bin/bun x --no-install tsc --noEmit` passed; `/Users/jun/.bun/bin/bun scripts/privacy-scan.ts` passed; `gitleaks dir devlog/_plan/260905_http_upstream_ws_parity --no-banner --redact` found no leaks. `bun run` aliases initially encountered the intentionally uninstalled package-local Bun stub after `--ignore-scripts`; direct installed Bun executes the same checker without invoking package install scripts or changing the live install. +Additional baseline checks: direct `/Users/jun/.bun/bin/bun x --no-install tsc --noEmit` passed; `/Users/jun/.bun/bin/bun scripts/privacy-scan.ts` passed; `gitleaks dir devlog/_fin/260905_http_upstream_ws_parity --no-banner --redact` found no leaks. `bun run` aliases initially encountered the intentionally uninstalled package-local Bun stub after `--ignore-scripts`; direct installed Bun executes the same checker without invoking package install scripts or changing the live install. Second audit: FAIL with three bounded amendments. Accepted missing preparation-stage placement and null lease fallback; both are fixed in 020, including final-byte-cap tests. Accepted unsupported nested quota/promo projection: 010 now projects only the inspected native event contract, while unknown fields remain in the bounded original event. Header-family projection now agrees with the shared safe-header owner. diff --git a/devlog/_plan/260905_http_upstream_ws_parity/003_roadmap_outcome.md b/devlog/_fin/260905_http_upstream_ws_parity/003_roadmap_outcome.md similarity index 100% rename from devlog/_plan/260905_http_upstream_ws_parity/003_roadmap_outcome.md rename to devlog/_fin/260905_http_upstream_ws_parity/003_roadmap_outcome.md diff --git a/devlog/_plan/260905_http_upstream_ws_parity/010_protocol.md b/devlog/_fin/260905_http_upstream_ws_parity/010_protocol.md similarity index 100% rename from devlog/_plan/260905_http_upstream_ws_parity/010_protocol.md rename to devlog/_fin/260905_http_upstream_ws_parity/010_protocol.md diff --git a/devlog/_plan/260905_http_upstream_ws_parity/011_protocol_build.md b/devlog/_fin/260905_http_upstream_ws_parity/011_protocol_build.md similarity index 100% rename from devlog/_plan/260905_http_upstream_ws_parity/011_protocol_build.md rename to devlog/_fin/260905_http_upstream_ws_parity/011_protocol_build.md diff --git a/devlog/_plan/260905_http_upstream_ws_parity/012_protocol_outcome.md b/devlog/_fin/260905_http_upstream_ws_parity/012_protocol_outcome.md similarity index 100% rename from devlog/_plan/260905_http_upstream_ws_parity/012_protocol_outcome.md rename to devlog/_fin/260905_http_upstream_ws_parity/012_protocol_outcome.md diff --git a/devlog/_plan/260905_http_upstream_ws_parity/020_lifecycle.md b/devlog/_fin/260905_http_upstream_ws_parity/020_lifecycle.md similarity index 100% rename from devlog/_plan/260905_http_upstream_ws_parity/020_lifecycle.md rename to devlog/_fin/260905_http_upstream_ws_parity/020_lifecycle.md diff --git a/devlog/_plan/260905_main_quota_guard/000_plan.md b/devlog/_fin/260905_main_quota_guard/000_plan.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/000_plan.md rename to devlog/_fin/260905_main_quota_guard/000_plan.md diff --git a/devlog/_plan/260905_main_quota_guard/001_source_findings.md b/devlog/_fin/260905_main_quota_guard/001_source_findings.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/001_source_findings.md rename to devlog/_fin/260905_main_quota_guard/001_source_findings.md diff --git a/devlog/_plan/260905_main_quota_guard/002_audit_synthesis.md b/devlog/_fin/260905_main_quota_guard/002_audit_synthesis.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/002_audit_synthesis.md rename to devlog/_fin/260905_main_quota_guard/002_audit_synthesis.md diff --git a/devlog/_plan/260905_main_quota_guard/010_policy.md b/devlog/_fin/260905_main_quota_guard/010_policy.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/010_policy.md rename to devlog/_fin/260905_main_quota_guard/010_policy.md diff --git a/devlog/_plan/260905_main_quota_guard/011_policy_dispatch_contract.md b/devlog/_fin/260905_main_quota_guard/011_policy_dispatch_contract.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/011_policy_dispatch_contract.md rename to devlog/_fin/260905_main_quota_guard/011_policy_dispatch_contract.md diff --git a/devlog/_plan/260905_main_quota_guard/012_implementation_review.md b/devlog/_fin/260905_main_quota_guard/012_implementation_review.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/012_implementation_review.md rename to devlog/_fin/260905_main_quota_guard/012_implementation_review.md diff --git a/devlog/_plan/260905_main_quota_guard/013_window_priority_steering.md b/devlog/_fin/260905_main_quota_guard/013_window_priority_steering.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/013_window_priority_steering.md rename to devlog/_fin/260905_main_quota_guard/013_window_priority_steering.md diff --git a/devlog/_plan/260905_main_quota_guard/014_runtime_evidence.md b/devlog/_fin/260905_main_quota_guard/014_runtime_evidence.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/014_runtime_evidence.md rename to devlog/_fin/260905_main_quota_guard/014_runtime_evidence.md diff --git a/devlog/_plan/260905_main_quota_guard/015_recovery_review.md b/devlog/_fin/260905_main_quota_guard/015_recovery_review.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/015_recovery_review.md rename to devlog/_fin/260905_main_quota_guard/015_recovery_review.md diff --git a/devlog/_plan/260905_main_quota_guard/016_policy_input_review.md b/devlog/_fin/260905_main_quota_guard/016_policy_input_review.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/016_policy_input_review.md rename to devlog/_fin/260905_main_quota_guard/016_policy_input_review.md diff --git a/devlog/_plan/260905_main_quota_guard/017_persisted_policy_validation.md b/devlog/_fin/260905_main_quota_guard/017_persisted_policy_validation.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/017_persisted_policy_validation.md rename to devlog/_fin/260905_main_quota_guard/017_persisted_policy_validation.md diff --git a/devlog/_plan/260905_main_quota_guard/018_dev_integration.md b/devlog/_fin/260905_main_quota_guard/018_dev_integration.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/018_dev_integration.md rename to devlog/_fin/260905_main_quota_guard/018_dev_integration.md diff --git a/devlog/_plan/260905_main_quota_guard/019_quota_provenance_integration.md b/devlog/_fin/260905_main_quota_guard/019_quota_provenance_integration.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/019_quota_provenance_integration.md rename to devlog/_fin/260905_main_quota_guard/019_quota_provenance_integration.md diff --git a/devlog/_plan/260905_main_quota_guard/020_settings.md b/devlog/_fin/260905_main_quota_guard/020_settings.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/020_settings.md rename to devlog/_fin/260905_main_quota_guard/020_settings.md diff --git a/devlog/_plan/260905_main_quota_guard/021_settings_dispatch.md b/devlog/_fin/260905_main_quota_guard/021_settings_dispatch.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/021_settings_dispatch.md rename to devlog/_fin/260905_main_quota_guard/021_settings_dispatch.md diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/en-confirm-desktop.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/en-confirm-desktop.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/en-confirm-desktop.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/en-confirm-desktop.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/en-confirm-mobile.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/en-confirm-mobile.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/en-confirm-mobile.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/en-confirm-mobile.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-blocked-desktop.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-blocked-desktop.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-blocked-desktop.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-blocked-desktop.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-confirm-desktop.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-confirm-desktop.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-confirm-desktop.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-confirm-desktop.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-confirm-mobile.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-confirm-mobile.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-confirm-mobile.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-confirm-mobile.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-confirm-tablet.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-confirm-tablet.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-confirm-tablet.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-confirm-tablet.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-desktop.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-desktop.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-desktop.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-desktop.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-mobile.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-mobile.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-mobile.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-main-card-integrated-mobile.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-setting-desktop.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-setting-desktop.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-setting-desktop.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-setting-desktop.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-setting-integrated-desktop.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-setting-integrated-desktop.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-setting-integrated-desktop.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-setting-integrated-desktop.jpg diff --git a/devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-zero-unlocked-desktop.jpg b/devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-zero-unlocked-desktop.jpg similarity index 100% rename from devlog/_plan/260905_main_quota_guard/022_ui_evidence/ko-zero-unlocked-desktop.jpg rename to devlog/_fin/260905_main_quota_guard/022_ui_evidence/ko-zero-unlocked-desktop.jpg diff --git a/devlog/_plan/260905_main_quota_guard/023_ui_review.md b/devlog/_fin/260905_main_quota_guard/023_ui_review.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/023_ui_review.md rename to devlog/_fin/260905_main_quota_guard/023_ui_review.md diff --git a/devlog/_plan/260905_main_quota_guard/024_ui_verification.md b/devlog/_fin/260905_main_quota_guard/024_ui_verification.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/024_ui_verification.md rename to devlog/_fin/260905_main_quota_guard/024_ui_verification.md diff --git a/devlog/_plan/260905_main_quota_guard/025_focus_review.md b/devlog/_fin/260905_main_quota_guard/025_focus_review.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/025_focus_review.md rename to devlog/_fin/260905_main_quota_guard/025_focus_review.md diff --git a/devlog/_plan/260905_main_quota_guard/026_ui_dev_integration.md b/devlog/_fin/260905_main_quota_guard/026_ui_dev_integration.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/026_ui_dev_integration.md rename to devlog/_fin/260905_main_quota_guard/026_ui_dev_integration.md diff --git a/devlog/_plan/260905_main_quota_guard/030_reserve_compatibility.md b/devlog/_fin/260905_main_quota_guard/030_reserve_compatibility.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/030_reserve_compatibility.md rename to devlog/_fin/260905_main_quota_guard/030_reserve_compatibility.md diff --git a/devlog/_plan/260905_main_quota_guard/031_reserve_dispatch_contract.md b/devlog/_fin/260905_main_quota_guard/031_reserve_dispatch_contract.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/031_reserve_dispatch_contract.md rename to devlog/_fin/260905_main_quota_guard/031_reserve_dispatch_contract.md diff --git a/devlog/_plan/260905_main_quota_guard/032_reserve_audit.md b/devlog/_fin/260905_main_quota_guard/032_reserve_audit.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/032_reserve_audit.md rename to devlog/_fin/260905_main_quota_guard/032_reserve_audit.md diff --git a/devlog/_plan/260905_main_quota_guard/033_parent_review_amendment.md b/devlog/_fin/260905_main_quota_guard/033_parent_review_amendment.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/033_parent_review_amendment.md rename to devlog/_fin/260905_main_quota_guard/033_parent_review_amendment.md diff --git a/devlog/_plan/260905_main_quota_guard/034_recovery_evidence_validation.md b/devlog/_fin/260905_main_quota_guard/034_recovery_evidence_validation.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/034_recovery_evidence_validation.md rename to devlog/_fin/260905_main_quota_guard/034_recovery_evidence_validation.md diff --git a/devlog/_plan/260905_main_quota_guard/039_reserve_verification.md b/devlog/_fin/260905_main_quota_guard/039_reserve_verification.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/039_reserve_verification.md rename to devlog/_fin/260905_main_quota_guard/039_reserve_verification.md diff --git a/devlog/_plan/260905_main_quota_guard/040_delivery.md b/devlog/_fin/260905_main_quota_guard/040_delivery.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/040_delivery.md rename to devlog/_fin/260905_main_quota_guard/040_delivery.md diff --git a/devlog/_plan/260905_main_quota_guard/041_stack_ci_repairs.md b/devlog/_fin/260905_main_quota_guard/041_stack_ci_repairs.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/041_stack_ci_repairs.md rename to devlog/_fin/260905_main_quota_guard/041_stack_ci_repairs.md diff --git a/devlog/_plan/260905_main_quota_guard/044_ingress_verification.md b/devlog/_fin/260905_main_quota_guard/044_ingress_verification.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/044_ingress_verification.md rename to devlog/_fin/260905_main_quota_guard/044_ingress_verification.md diff --git a/devlog/_plan/260905_main_quota_guard/047_claude_policy_verification.md b/devlog/_fin/260905_main_quota_guard/047_claude_policy_verification.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/047_claude_policy_verification.md rename to devlog/_fin/260905_main_quota_guard/047_claude_policy_verification.md diff --git a/devlog/_plan/260905_main_quota_guard/049_delivery_dispatch.md b/devlog/_fin/260905_main_quota_guard/049_delivery_dispatch.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/049_delivery_dispatch.md rename to devlog/_fin/260905_main_quota_guard/049_delivery_dispatch.md diff --git a/devlog/_plan/260905_main_quota_guard/050_ci_contract_repairs.md b/devlog/_fin/260905_main_quota_guard/050_ci_contract_repairs.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/050_ci_contract_repairs.md rename to devlog/_fin/260905_main_quota_guard/050_ci_contract_repairs.md diff --git a/devlog/_plan/260905_main_quota_guard/052_loopback_target_parity.md b/devlog/_fin/260905_main_quota_guard/052_loopback_target_parity.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/052_loopback_target_parity.md rename to devlog/_fin/260905_main_quota_guard/052_loopback_target_parity.md diff --git a/devlog/_plan/260905_main_quota_guard/059_runtime_landing.md b/devlog/_fin/260905_main_quota_guard/059_runtime_landing.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/059_runtime_landing.md rename to devlog/_fin/260905_main_quota_guard/059_runtime_landing.md diff --git a/devlog/_plan/260905_main_quota_guard/063_ui_landing.md b/devlog/_fin/260905_main_quota_guard/063_ui_landing.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/063_ui_landing.md rename to devlog/_fin/260905_main_quota_guard/063_ui_landing.md diff --git a/devlog/_plan/260905_main_quota_guard/064_final_rebase.md b/devlog/_fin/260905_main_quota_guard/064_final_rebase.md similarity index 100% rename from devlog/_plan/260905_main_quota_guard/064_final_rebase.md rename to devlog/_fin/260905_main_quota_guard/064_final_rebase.md diff --git a/devlog/_plan/260905_open_work_closeout/000_plan.md b/devlog/_fin/260905_open_work_closeout/000_plan.md similarity index 98% rename from devlog/_plan/260905_open_work_closeout/000_plan.md rename to devlog/_fin/260905_open_work_closeout/000_plan.md index 74de7e7384d..82444e9e93f 100644 --- a/devlog/_plan/260905_open_work_closeout/000_plan.md +++ b/devlog/_fin/260905_open_work_closeout/000_plan.md @@ -1,6 +1,6 @@ # 000 — Plan and live manifest -Unit: `devlog/_plan/260905_open_work_closeout`. Session `01a06e47-8897-70a0-b669-cf6c5b77d4c3`. +Unit: `devlog/_fin/260905_open_work_closeout`. Session `01a06e47-8897-70a0-b669-cf6c5b77d4c3`. Snapshot: 2026-09-04T21:19:34Z (fetch), `origin/dev` = `0f27bbeb3` (`test(hygiene): fail on duplicate test basenames, and close out the 429 unit (#3527)`). Research worktree: `/private/tmp/ocx-closeout.xomWAA/wt` (detached). diff --git a/devlog/_plan/260905_open_work_closeout/001_lane_bug_prs_a.md b/devlog/_fin/260905_open_work_closeout/001_lane_bug_prs_a.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/001_lane_bug_prs_a.md rename to devlog/_fin/260905_open_work_closeout/001_lane_bug_prs_a.md index 3d440e58d0f..a1cf2d3d14b 100644 --- a/devlog/_plan/260905_open_work_closeout/001_lane_bug_prs_a.md +++ b/devlog/_fin/260905_open_work_closeout/001_lane_bug_prs_a.md @@ -388,7 +388,7 @@ halves so the security-reviewed surface is isolated. - Every `bun test` invocation named a specific file; no repository-wide suite was run. - Patches were applied to the worktree only to establish red/green evidence and were reverted; - final `git status --porcelain` shows only `?? devlog/_plan/260905_open_work_closeout/`. + final `git status --porcelain` shows only `?? devlog/_fin/260905_open_work_closeout/`. - `git fetch origin pull/3502/head:tmp-pr-3502` was fetch-only; no checkout of `dev` occurred. - `git merge-tree` could not run (sandbox denies its temp-file creation), so 3502's conflict set was established with per-file `git apply --check` plus `git log origin/dev ^tmp-pr-3502`. diff --git a/devlog/_plan/260905_open_work_closeout/002_lane_bug_prs_b.md b/devlog/_fin/260905_open_work_closeout/002_lane_bug_prs_b.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/002_lane_bug_prs_b.md rename to devlog/_fin/260905_open_work_closeout/002_lane_bug_prs_b.md diff --git a/devlog/_plan/260905_open_work_closeout/003_lane_v2_and_quota.md b/devlog/_fin/260905_open_work_closeout/003_lane_v2_and_quota.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/003_lane_v2_and_quota.md rename to devlog/_fin/260905_open_work_closeout/003_lane_v2_and_quota.md diff --git a/devlog/_plan/260905_open_work_closeout/004_lane_else_prs.md b/devlog/_fin/260905_open_work_closeout/004_lane_else_prs.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/004_lane_else_prs.md rename to devlog/_fin/260905_open_work_closeout/004_lane_else_prs.md index 6ce37202c51..579faf47a8f 100644 --- a/devlog/_plan/260905_open_work_closeout/004_lane_else_prs.md +++ b/devlog/_fin/260905_open_work_closeout/004_lane_else_prs.md @@ -5,7 +5,7 @@ READ-ONLY adversarial triage. Worktree `/private/tmp/ocx-closeout.xomWAA/wt`, de untouched during the review: `src/oauth/index.ts`, `src/providers/model-rename-startup.ts`, `tests/oauth/oauth-provider-reconcile.test.ts`, `tests/providers/model-rename-migration.test.ts`). At the final index re-read these had been reverted by the parent; the only remaining working-tree -entry is this untracked `devlog/_plan/260905_open_work_closeout/` directory. No verdict depends on +entry is this untracked `devlog/_fin/260905_open_work_closeout/` directory. No verdict depends on those files. All PR-head verification ran against `git archive` exports under diff --git a/devlog/_plan/260905_open_work_closeout/005_lane_bug_issues.md b/devlog/_fin/260905_open_work_closeout/005_lane_bug_issues.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/005_lane_bug_issues.md rename to devlog/_fin/260905_open_work_closeout/005_lane_bug_issues.md diff --git a/devlog/_plan/260905_open_work_closeout/006_dispositions.md b/devlog/_fin/260905_open_work_closeout/006_dispositions.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/006_dispositions.md rename to devlog/_fin/260905_open_work_closeout/006_dispositions.md diff --git a/devlog/_plan/260905_open_work_closeout/007_audit_wp0.md b/devlog/_fin/260905_open_work_closeout/007_audit_wp0.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/007_audit_wp0.md rename to devlog/_fin/260905_open_work_closeout/007_audit_wp0.md index fc727b87d39..954de845133 100644 --- a/devlog/_plan/260905_open_work_closeout/007_audit_wp0.md +++ b/devlog/_fin/260905_open_work_closeout/007_audit_wp0.md @@ -13,7 +13,7 @@ all evidence is repository- and `gh`-local, which is Tier-2-equivalent primary s | Worktree `HEAD` | `0f27bbeb3ce6a92077652695e161d49b88eedc7a` (detached, unchanged; no checkout performed) | | `origin/dev` at audit start | `79e03643d7cfa2b6c3c4eb8afd6179a140b197a3` | | `origin/dev` at pre-verdict re-read | `79e03643d7cfa2b6c3c4eb8afd6179a140b197a3` (unchanged) | -| Index at pre-verdict re-read | nothing staged; only `?? devlog/_plan/260905_open_work_closeout/` untracked | +| Index at pre-verdict re-read | nothing staged; only `?? devlog/_fin/260905_open_work_closeout/` untracked | | Audit target | `000`, `006`, `010`, `020`, `030`, `040`, `050`, `060` (all read in full); `001`-`005` as supporting evidence | `git merge-base --is-ancestor HEAD origin/dev` -> exit 0. The worktree is **3 commits behind** diff --git a/devlog/_plan/260905_open_work_closeout/008_audit_synthesis.md b/devlog/_fin/260905_open_work_closeout/008_audit_synthesis.md similarity index 96% rename from devlog/_plan/260905_open_work_closeout/008_audit_synthesis.md rename to devlog/_fin/260905_open_work_closeout/008_audit_synthesis.md index dccbbfde7b2..631fd9171af 100644 --- a/devlog/_plan/260905_open_work_closeout/008_audit_synthesis.md +++ b/devlog/_fin/260905_open_work_closeout/008_audit_synthesis.md @@ -101,4 +101,4 @@ closeout commit; then the unit moves to `devlog/_fin/`. Main-agent judgment: **near-pass** → exit A>B for wp0 (docs-only). Residuals: none blocking. -DOCEOF; rg -n 'Author \| Head merged' /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md | head -2; tail -3 /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/060_ledger.md \ No newline at end of file +DOCEOF; rg -n 'Author \| Head merged' /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md | head -2; tail -3 /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/060_ledger.md \ No newline at end of file diff --git a/devlog/_plan/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md b/devlog/_fin/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md rename to devlog/_fin/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md index 5fdcfc31a10..49fc5e3bd06 100644 --- a/devlog/_plan/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md +++ b/devlog/_fin/260905_open_work_closeout/010_wp1_stack_a_land_as_is.md @@ -2,7 +2,7 @@ # 010 — wp1 / Stack A: the LAND_AS_IS merge train -Work-phase: **wp1**. Unit `devlog/_plan/260905_open_work_closeout`. +Work-phase: **wp1**. Unit `devlog/_fin/260905_open_work_closeout`. Scope: **#3515, #3529, #3525, #3490, #3484, #3480, #3323** — seven independent open pull requests whose code is correct as written. This is a **merge-train recipe**, not a rebase or reimplementation plan: no `src/`, `tests/`, or `gui/` file is authored in this diff --git a/devlog/_plan/260905_open_work_closeout/011_wp1_execution.md b/devlog/_fin/260905_open_work_closeout/011_wp1_execution.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/011_wp1_execution.md rename to devlog/_fin/260905_open_work_closeout/011_wp1_execution.md diff --git a/devlog/_plan/260905_open_work_closeout/012_wp1_delivery_record.md b/devlog/_fin/260905_open_work_closeout/012_wp1_delivery_record.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/012_wp1_delivery_record.md rename to devlog/_fin/260905_open_work_closeout/012_wp1_delivery_record.md diff --git a/devlog/_plan/260905_open_work_closeout/020_wp2_stack_b_bug_carry.md b/devlog/_fin/260905_open_work_closeout/020_wp2_stack_b_bug_carry.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/020_wp2_stack_b_bug_carry.md rename to devlog/_fin/260905_open_work_closeout/020_wp2_stack_b_bug_carry.md index cf8636a211d..c9aaa7a754f 100644 --- a/devlog/_plan/260905_open_work_closeout/020_wp2_stack_b_bug_carry.md +++ b/devlog/_fin/260905_open_work_closeout/020_wp2_stack_b_bug_carry.md @@ -2,7 +2,7 @@ # 020 — wp2 / Stack B: bug PRs needing carry or reimplementation -Unit: `devlog/_plan/260905_open_work_closeout`. Work-phase: **wp2**. +Unit: `devlog/_fin/260905_open_work_closeout`. Work-phase: **wp2**. Sources: `001_lane_bug_prs_a.md` (#3502, #3519, #3524) and `002_lane_bug_prs_b.md` (#3489, #3469, #3407, #3348, #3388), both read in full. diff --git a/devlog/_plan/260905_open_work_closeout/021_wp2_scope_amendment.md b/devlog/_fin/260905_open_work_closeout/021_wp2_scope_amendment.md similarity index 95% rename from devlog/_plan/260905_open_work_closeout/021_wp2_scope_amendment.md rename to devlog/_fin/260905_open_work_closeout/021_wp2_scope_amendment.md index d016d5413d7..db17bff50a5 100644 --- a/devlog/_plan/260905_open_work_closeout/021_wp2_scope_amendment.md +++ b/devlog/_fin/260905_open_work_closeout/021_wp2_scope_amendment.md @@ -68,7 +68,7 @@ originals closed at wp6. Trailers use the id-prefixed noreply form (008 Blocker B6's new 400→502 test must assert a status that `errors.ts:452` does not already map (use a non-`server_error` category) so it cannot pass vacuously. -DOCEOF; cp /Users/jun/Developer/new/700_projects/opencodex/devlog/_plan/260905_open_work_closeout/021_wp2_scope_amendment.md /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/; cp /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/022_audit_wp2.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_plan/260905_open_work_closeout/ +DOCEOF; cp /Users/jun/Developer/new/700_projects/opencodex/devlog/_fin/260905_open_work_closeout/021_wp2_scope_amendment.md /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/; cp /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/022_audit_wp2.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_fin/260905_open_work_closeout/ ## B note — carry-3489 gated on #3551 `git merge-tree --write-tree refs/tmp/pr-3551 refs/tmp/pr-3489` → CONFLICT (`src/lib/provider-outbound.ts`, @@ -115,7 +115,7 @@ touches only `src/cli/claude.ts`, `src/cli/registry.ts`, docs, and its own test; B3's head and on `origin/dev` locally (3× repeat). Classified as a timing flake pending the exact-head rerun; not asserted as flake until the rerun reports. -DOCEOF; cp /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/023_impl_review_wp2.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_plan/260905_open_work_closeout/ +DOCEOF; cp /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/023_impl_review_wp2.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_fin/260905_open_work_closeout/ ### Merges and cascade (DEV-STACK-02) B1 #3561 → `71cfc8de6`, B2 #3562 → `24cc558d5` (admin squash, bypass comments, ancestry exit 0). diff --git a/devlog/_plan/260905_open_work_closeout/024_wp2_delivery_record.md b/devlog/_fin/260905_open_work_closeout/024_wp2_delivery_record.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/024_wp2_delivery_record.md rename to devlog/_fin/260905_open_work_closeout/024_wp2_delivery_record.md diff --git a/devlog/_plan/260905_open_work_closeout/030_wp3_stack_c_v2_passthrough.md b/devlog/_fin/260905_open_work_closeout/030_wp3_stack_c_v2_passthrough.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/030_wp3_stack_c_v2_passthrough.md rename to devlog/_fin/260905_open_work_closeout/030_wp3_stack_c_v2_passthrough.md index 2559eb94e58..8660a4a6875 100644 --- a/devlog/_plan/260905_open_work_closeout/030_wp3_stack_c_v2_passthrough.md +++ b/devlog/_fin/260905_open_work_closeout/030_wp3_stack_c_v2_passthrough.md @@ -1,6 +1,6 @@ # 030 — wp3 / Stack C: #3444 direct encrypted V2 task passthrough -Unit: `devlog/_plan/260905_open_work_closeout`. Work-phase: **wp3**. Lane source: +Unit: `devlog/_fin/260905_open_work_closeout`. Work-phase: **wp3**. Lane source: [`003_lane_v2_and_quota.md`](./003_lane_v2_and_quota.md) (#3444 section). Re-verified against `origin/dev` = `6580694c7911cfbf78da63b6258ec1c70bd8a0e3` diff --git a/devlog/_plan/260905_open_work_closeout/031_wp3_reverify.md b/devlog/_fin/260905_open_work_closeout/031_wp3_reverify.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/031_wp3_reverify.md rename to devlog/_fin/260905_open_work_closeout/031_wp3_reverify.md diff --git a/devlog/_plan/260905_open_work_closeout/032_wp3_delivery_record.md b/devlog/_fin/260905_open_work_closeout/032_wp3_delivery_record.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/032_wp3_delivery_record.md rename to devlog/_fin/260905_open_work_closeout/032_wp3_delivery_record.md diff --git a/devlog/_plan/260905_open_work_closeout/040_wp4_stack_d_usage_quota.md b/devlog/_fin/260905_open_work_closeout/040_wp4_stack_d_usage_quota.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/040_wp4_stack_d_usage_quota.md rename to devlog/_fin/260905_open_work_closeout/040_wp4_stack_d_usage_quota.md index 3037164dc47..d7b9432af7f 100644 --- a/devlog/_plan/260905_open_work_closeout/040_wp4_stack_d_usage_quota.md +++ b/devlog/_fin/260905_open_work_closeout/040_wp4_stack_d_usage_quota.md @@ -4,7 +4,7 @@ Diff-level implementation plan for one PABCD work-phase. Written to be executabl implementer with no other context: every change site is quoted from the tree, every conflict has a mechanical-or-semantic verdict, and every verifier was run before this doc was written. -Unit: `devlog/_plan/260905_open_work_closeout`. Lane research: `003_lane_v2_and_quota.md`. +Unit: `devlog/_fin/260905_open_work_closeout`. Lane research: `003_lane_v2_and_quota.md`. ## Base state (re-read immediately before writing) diff --git a/devlog/_plan/260905_open_work_closeout/041_wp4_reverify.md b/devlog/_fin/260905_open_work_closeout/041_wp4_reverify.md similarity index 92% rename from devlog/_plan/260905_open_work_closeout/041_wp4_reverify.md rename to devlog/_fin/260905_open_work_closeout/041_wp4_reverify.md index 05eb41d1b09..da82f7ab058 100644 --- a/devlog/_plan/260905_open_work_closeout/041_wp4_reverify.md +++ b/devlog/_fin/260905_open_work_closeout/041_wp4_reverify.md @@ -23,7 +23,7 @@ Trailers: layer 1 `hualiny <82697947+hualiny@users.noreply.github.com>`, layer 3 Stack: layer 1 → dev; layer 2 → layer 1; layer 3 → dev (independent). Layer 1 and 3 PRs open now; layer 2 PR opens when its lane finishes. -DOCEOF; cp /Users/jun/Developer/new/700_projects/opencodex/devlog/_plan/260905_open_work_closeout/041_wp4_reverify.md /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/ +DOCEOF; cp /Users/jun/Developer/new/700_projects/opencodex/devlog/_fin/260905_open_work_closeout/041_wp4_reverify.md /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/ ## Audit fold (wp4 A round 1 — claude-opus-5, GO-WITH-FIXES blockers=5; report 042) 1. **Layer 2 test layout (High):** seven of #2783's test basenames resolve to `null` (incl. @@ -48,4 +48,4 @@ the Antigravity row. Fixed in `4a721e459` by injecting the pinned-transport seam `fetchAvailableModels` fallback is what the test exercises, as it did before. Layer 1 final: 156 pass / 0 fail unsandboxed, typecheck 0. -DOCEOF; cp /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/042_audit_wp4.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_plan/260905_open_work_closeout/ +DOCEOF; cp /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/042_audit_wp4.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_fin/260905_open_work_closeout/ diff --git a/devlog/_plan/260905_open_work_closeout/044_wp4_delivery_record.md b/devlog/_fin/260905_open_work_closeout/044_wp4_delivery_record.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/044_wp4_delivery_record.md rename to devlog/_fin/260905_open_work_closeout/044_wp4_delivery_record.md diff --git a/devlog/_plan/260905_open_work_closeout/050_wp5_stack_e_else.md b/devlog/_fin/260905_open_work_closeout/050_wp5_stack_e_else.md similarity index 99% rename from devlog/_plan/260905_open_work_closeout/050_wp5_stack_e_else.md rename to devlog/_fin/260905_open_work_closeout/050_wp5_stack_e_else.md index 3a8929d2862..589648d87ef 100644 --- a/devlog/_plan/260905_open_work_closeout/050_wp5_stack_e_else.md +++ b/devlog/_fin/260905_open_work_closeout/050_wp5_stack_e_else.md @@ -2,7 +2,7 @@ # 050 — wp5 / Stack E: remaining ready PRs and implementable bug issues -Unit: `devlog/_plan/260905_open_work_closeout`. Work-phase **wp5**, one PABCD cycle. +Unit: `devlog/_fin/260905_open_work_closeout`. Work-phase **wp5**, one PABCD cycle. Worktree: `/private/tmp/ocx-closeout.xomWAA/wt` (detached). Sources: `004_lane_else_prs.md` (#3530 #3487 #3508 #3383 #3329 #3421 #2716 #2432 #3531 #3528), `005_lane_bug_issues.md` (#3464, #3425). diff --git a/devlog/_plan/260905_open_work_closeout/051_wp5_reverify.md b/devlog/_fin/260905_open_work_closeout/051_wp5_reverify.md similarity index 89% rename from devlog/_plan/260905_open_work_closeout/051_wp5_reverify.md rename to devlog/_fin/260905_open_work_closeout/051_wp5_reverify.md index 189d60ce88c..8ed7f33a297 100644 --- a/devlog/_plan/260905_open_work_closeout/051_wp5_reverify.md +++ b/devlog/_fin/260905_open_work_closeout/051_wp5_reverify.md @@ -25,4 +25,4 @@ benedictusrey888 192305729 (per 007 round 2, #3531's author identity), Veritas-7 Stack shape: E0-E7 share no source file (050 measurement) → seven independent PRs against `dev`, merged in E-order. Verifiers: typecheck + each layer's named files + layout guard. -DOCEOF; cp /Users/jun/Developer/new/700_projects/opencodex/devlog/_plan/260905_open_work_closeout/051_wp5_reverify.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_plan/260905_open_work_closeout/044_wp4_delivery_record.md /private/tmp/ocx-closeout.xomWAA/wt/devlog/_plan/260905_open_work_closeout/ 2>/dev/null \ No newline at end of file +DOCEOF; cp /Users/jun/Developer/new/700_projects/opencodex/devlog/_fin/260905_open_work_closeout/051_wp5_reverify.md /Users/jun/Developer/new/700_projects/opencodex/devlog/_fin/260905_open_work_closeout/044_wp4_delivery_record.md /private/tmp/ocx-closeout.xomWAA/wt/devlog/_fin/260905_open_work_closeout/ 2>/dev/null \ No newline at end of file diff --git a/devlog/_plan/260905_open_work_closeout/052_wp5_delivery.md b/devlog/_fin/260905_open_work_closeout/052_wp5_delivery.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/052_wp5_delivery.md rename to devlog/_fin/260905_open_work_closeout/052_wp5_delivery.md diff --git a/devlog/_plan/260905_open_work_closeout/053_residual_integration.md b/devlog/_fin/260905_open_work_closeout/053_residual_integration.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/053_residual_integration.md rename to devlog/_fin/260905_open_work_closeout/053_residual_integration.md diff --git a/devlog/_plan/260905_open_work_closeout/054_final_ci_pin.md b/devlog/_fin/260905_open_work_closeout/054_final_ci_pin.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/054_final_ci_pin.md rename to devlog/_fin/260905_open_work_closeout/054_final_ci_pin.md diff --git a/devlog/_plan/260905_open_work_closeout/055_linux_ci_repair.md b/devlog/_fin/260905_open_work_closeout/055_linux_ci_repair.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/055_linux_ci_repair.md rename to devlog/_fin/260905_open_work_closeout/055_linux_ci_repair.md diff --git a/devlog/_plan/260905_open_work_closeout/056_second_ci_head.md b/devlog/_fin/260905_open_work_closeout/056_second_ci_head.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/056_second_ci_head.md rename to devlog/_fin/260905_open_work_closeout/056_second_ci_head.md diff --git a/devlog/_plan/260905_open_work_closeout/057_coordinated_final_ci.md b/devlog/_fin/260905_open_work_closeout/057_coordinated_final_ci.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/057_coordinated_final_ci.md rename to devlog/_fin/260905_open_work_closeout/057_coordinated_final_ci.md diff --git a/devlog/_plan/260905_open_work_closeout/058_final_execution_result.md b/devlog/_fin/260905_open_work_closeout/058_final_execution_result.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/058_final_execution_result.md rename to devlog/_fin/260905_open_work_closeout/058_final_execution_result.md diff --git a/devlog/_plan/260905_open_work_closeout/059_owner_directed_stop.md b/devlog/_fin/260905_open_work_closeout/059_owner_directed_stop.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/059_owner_directed_stop.md rename to devlog/_fin/260905_open_work_closeout/059_owner_directed_stop.md diff --git a/devlog/_plan/260905_open_work_closeout/060_ledger.md b/devlog/_fin/260905_open_work_closeout/060_ledger.md similarity index 100% rename from devlog/_plan/260905_open_work_closeout/060_ledger.md rename to devlog/_fin/260905_open_work_closeout/060_ledger.md diff --git a/devlog/_plan/260905_provider_registration_selection/000_plan.md b/devlog/_fin/260905_provider_registration_selection/000_plan.md similarity index 100% rename from devlog/_plan/260905_provider_registration_selection/000_plan.md rename to devlog/_fin/260905_provider_registration_selection/000_plan.md diff --git a/devlog/_plan/260905_provider_registration_selection/001_roadmap_audit.md b/devlog/_fin/260905_provider_registration_selection/001_roadmap_audit.md similarity index 100% rename from devlog/_plan/260905_provider_registration_selection/001_roadmap_audit.md rename to devlog/_fin/260905_provider_registration_selection/001_roadmap_audit.md diff --git a/devlog/_plan/260905_provider_registration_selection/010_initial_selection.md b/devlog/_fin/260905_provider_registration_selection/010_initial_selection.md similarity index 100% rename from devlog/_plan/260905_provider_registration_selection/010_initial_selection.md rename to devlog/_fin/260905_provider_registration_selection/010_initial_selection.md diff --git a/devlog/_plan/260905_provider_registration_selection/020_registration_guidance.md b/devlog/_fin/260905_provider_registration_selection/020_registration_guidance.md similarity index 100% rename from devlog/_plan/260905_provider_registration_selection/020_registration_guidance.md rename to devlog/_fin/260905_provider_registration_selection/020_registration_guidance.md diff --git a/devlog/_plan/260905_provider_registration_selection/021_registration_notice.png b/devlog/_fin/260905_provider_registration_selection/021_registration_notice.png similarity index 100% rename from devlog/_plan/260905_provider_registration_selection/021_registration_notice.png rename to devlog/_fin/260905_provider_registration_selection/021_registration_notice.png diff --git a/devlog/_plan/260905_provider_registration_selection/022_models_all_off.png b/devlog/_fin/260905_provider_registration_selection/022_models_all_off.png similarity index 100% rename from devlog/_plan/260905_provider_registration_selection/022_models_all_off.png rename to devlog/_fin/260905_provider_registration_selection/022_models_all_off.png diff --git a/devlog/_plan/260905_provider_registration_selection/023_onboarding_verification.md b/devlog/_fin/260905_provider_registration_selection/023_onboarding_verification.md similarity index 100% rename from devlog/_plan/260905_provider_registration_selection/023_onboarding_verification.md rename to devlog/_fin/260905_provider_registration_selection/023_onboarding_verification.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/000_plan.md b/devlog/_fin/260905_provider_usage_quota_parity/000_plan.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/000_plan.md rename to devlog/_fin/260905_provider_usage_quota_parity/000_plan.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/001_attribution_evidence.md b/devlog/_fin/260905_provider_usage_quota_parity/001_attribution_evidence.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/001_attribution_evidence.md rename to devlog/_fin/260905_provider_usage_quota_parity/001_attribution_evidence.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/002_audit_synthesis.md b/devlog/_fin/260905_provider_usage_quota_parity/002_audit_synthesis.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/002_audit_synthesis.md rename to devlog/_fin/260905_provider_usage_quota_parity/002_audit_synthesis.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/010_attribution.md b/devlog/_fin/260905_provider_usage_quota_parity/010_attribution.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/010_attribution.md rename to devlog/_fin/260905_provider_usage_quota_parity/010_attribution.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/011_attribution_build.md b/devlog/_fin/260905_provider_usage_quota_parity/011_attribution_build.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/011_attribution_build.md rename to devlog/_fin/260905_provider_usage_quota_parity/011_attribution_build.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/012_premerge_review.md b/devlog/_fin/260905_provider_usage_quota_parity/012_premerge_review.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/012_premerge_review.md rename to devlog/_fin/260905_provider_usage_quota_parity/012_premerge_review.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/013_ci_test_boundaries.md b/devlog/_fin/260905_provider_usage_quota_parity/013_ci_test_boundaries.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/013_ci_test_boundaries.md rename to devlog/_fin/260905_provider_usage_quota_parity/013_ci_test_boundaries.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/014_recovery_fixture_isolation.md b/devlog/_fin/260905_provider_usage_quota_parity/014_recovery_fixture_isolation.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/014_recovery_fixture_isolation.md rename to devlog/_fin/260905_provider_usage_quota_parity/014_recovery_fixture_isolation.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/020_account_quota_api.md b/devlog/_fin/260905_provider_usage_quota_parity/020_account_quota_api.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/020_account_quota_api.md rename to devlog/_fin/260905_provider_usage_quota_parity/020_account_quota_api.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/021_api_build.md b/devlog/_fin/260905_provider_usage_quota_parity/021_api_build.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/021_api_build.md rename to devlog/_fin/260905_provider_usage_quota_parity/021_api_build.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/030_quota_views.md b/devlog/_fin/260905_provider_usage_quota_parity/030_quota_views.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/030_quota_views.md rename to devlog/_fin/260905_provider_usage_quota_parity/030_quota_views.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/031_ui_build.md b/devlog/_fin/260905_provider_usage_quota_parity/031_ui_build.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/031_ui_build.md rename to devlog/_fin/260905_provider_usage_quota_parity/031_ui_build.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/040_stack_landing.md b/devlog/_fin/260905_provider_usage_quota_parity/040_stack_landing.md similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/040_stack_landing.md rename to devlog/_fin/260905_provider_usage_quota_parity/040_stack_landing.md diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/011_usage_attribution.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/011_usage_attribution.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/011_usage_attribution.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/011_usage_attribution.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/031_current_overview.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/031_current_overview.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/031_current_overview.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/031_current_overview.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/032_current_usage.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/032_current_usage.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/032_current_usage.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/032_current_usage.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/033_oauth_accounts.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/033_oauth_accounts.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/033_oauth_accounts.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/033_oauth_accounts.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/034_api_key_balances.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/034_api_key_balances.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/034_api_key_balances.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/034_api_key_balances.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/035_passive_current_unobserved.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/035_passive_current_unobserved.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/035_passive_current_unobserved.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/035_passive_current_unobserved.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/036_pool_current.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/036_pool_current.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/036_pool_current.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/036_pool_current.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/037_tablet_usage.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/037_tablet_usage.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/037_tablet_usage.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/037_tablet_usage.png diff --git a/devlog/_plan/260905_provider_usage_quota_parity/assets/039_mobile_current.png b/devlog/_fin/260905_provider_usage_quota_parity/assets/039_mobile_current.png similarity index 100% rename from devlog/_plan/260905_provider_usage_quota_parity/assets/039_mobile_current.png rename to devlog/_fin/260905_provider_usage_quota_parity/assets/039_mobile_current.png diff --git a/devlog/_plan/260906_aside_profiles/000_research.md b/devlog/_fin/260906_aside_profiles/000_research.md similarity index 100% rename from devlog/_plan/260906_aside_profiles/000_research.md rename to devlog/_fin/260906_aside_profiles/000_research.md diff --git a/devlog/_plan/260906_aside_profiles/010_profiles_backend_cli.md b/devlog/_fin/260906_aside_profiles/010_profiles_backend_cli.md similarity index 100% rename from devlog/_plan/260906_aside_profiles/010_profiles_backend_cli.md rename to devlog/_fin/260906_aside_profiles/010_profiles_backend_cli.md diff --git a/devlog/_plan/260906_aside_profiles/020_profiles_gui.md b/devlog/_fin/260906_aside_profiles/020_profiles_gui.md similarity index 100% rename from devlog/_plan/260906_aside_profiles/020_profiles_gui.md rename to devlog/_fin/260906_aside_profiles/020_profiles_gui.md diff --git a/devlog/_plan/260906_grok_catalog_and_patch/000_research.md b/devlog/_fin/260906_grok_catalog_and_patch/000_research.md similarity index 100% rename from devlog/_plan/260906_grok_catalog_and_patch/000_research.md rename to devlog/_fin/260906_grok_catalog_and_patch/000_research.md diff --git a/devlog/_plan/260906_grok_catalog_and_patch/010_export_selection.md b/devlog/_fin/260906_grok_catalog_and_patch/010_export_selection.md similarity index 100% rename from devlog/_plan/260906_grok_catalog_and_patch/010_export_selection.md rename to devlog/_fin/260906_grok_catalog_and_patch/010_export_selection.md diff --git a/devlog/_plan/260906_grok_catalog_and_patch/020_owned_refresh.md b/devlog/_fin/260906_grok_catalog_and_patch/020_owned_refresh.md similarity index 100% rename from devlog/_plan/260906_grok_catalog_and_patch/020_owned_refresh.md rename to devlog/_fin/260906_grok_catalog_and_patch/020_owned_refresh.md diff --git a/devlog/_plan/260906_grok_catalog_and_patch/030_responses_patch.md b/devlog/_fin/260906_grok_catalog_and_patch/030_responses_patch.md similarity index 100% rename from devlog/_plan/260906_grok_catalog_and_patch/030_responses_patch.md rename to devlog/_fin/260906_grok_catalog_and_patch/030_responses_patch.md diff --git a/devlog/_plan/260906_grok_catalog_and_patch/040_native_tool_parity.md b/devlog/_fin/260906_grok_catalog_and_patch/040_native_tool_parity.md similarity index 100% rename from devlog/_plan/260906_grok_catalog_and_patch/040_native_tool_parity.md rename to devlog/_fin/260906_grok_catalog_and_patch/040_native_tool_parity.md diff --git a/devlog/_plan/260906_key_login_ci_timeout/000_plan.md b/devlog/_fin/260906_key_login_ci_timeout/000_plan.md similarity index 100% rename from devlog/_plan/260906_key_login_ci_timeout/000_plan.md rename to devlog/_fin/260906_key_login_ci_timeout/000_plan.md diff --git a/devlog/_plan/260906_release_244_followups/000_plan.md b/devlog/_fin/260906_release_244_followups/000_plan.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/000_plan.md rename to devlog/_fin/260906_release_244_followups/000_plan.md diff --git a/devlog/_plan/260906_release_244_followups/001_roadmap_lock.md b/devlog/_fin/260906_release_244_followups/001_roadmap_lock.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/001_roadmap_lock.md rename to devlog/_fin/260906_release_244_followups/001_roadmap_lock.md diff --git a/devlog/_plan/260906_release_244_followups/010_policy.md b/devlog/_fin/260906_release_244_followups/010_policy.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/010_policy.md rename to devlog/_fin/260906_release_244_followups/010_policy.md diff --git a/devlog/_plan/260906_release_244_followups/011_policy_implementation.md b/devlog/_fin/260906_release_244_followups/011_policy_implementation.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/011_policy_implementation.md rename to devlog/_fin/260906_release_244_followups/011_policy_implementation.md diff --git a/devlog/_plan/260906_release_244_followups/020_task_input.md b/devlog/_fin/260906_release_244_followups/020_task_input.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/020_task_input.md rename to devlog/_fin/260906_release_244_followups/020_task_input.md diff --git a/devlog/_plan/260906_release_244_followups/021_task_input_implementation.md b/devlog/_fin/260906_release_244_followups/021_task_input_implementation.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/021_task_input_implementation.md rename to devlog/_fin/260906_release_244_followups/021_task_input_implementation.md diff --git a/devlog/_plan/260906_release_244_followups/022_management_auth_port_fixture.md b/devlog/_fin/260906_release_244_followups/022_management_auth_port_fixture.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/022_management_auth_port_fixture.md rename to devlog/_fin/260906_release_244_followups/022_management_auth_port_fixture.md diff --git a/devlog/_plan/260906_release_244_followups/030_kiro_results.md b/devlog/_fin/260906_release_244_followups/030_kiro_results.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/030_kiro_results.md rename to devlog/_fin/260906_release_244_followups/030_kiro_results.md diff --git a/devlog/_plan/260906_release_244_followups/031_kiro_result_implementation.md b/devlog/_fin/260906_release_244_followups/031_kiro_result_implementation.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/031_kiro_result_implementation.md rename to devlog/_fin/260906_release_244_followups/031_kiro_result_implementation.md diff --git a/devlog/_plan/260906_release_244_followups/032_review_doc_format.md b/devlog/_fin/260906_release_244_followups/032_review_doc_format.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/032_review_doc_format.md rename to devlog/_fin/260906_release_244_followups/032_review_doc_format.md diff --git a/devlog/_plan/260906_release_244_followups/033_web_search_deadline_fixture.md b/devlog/_fin/260906_release_244_followups/033_web_search_deadline_fixture.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/033_web_search_deadline_fixture.md rename to devlog/_fin/260906_release_244_followups/033_web_search_deadline_fixture.md diff --git a/devlog/_plan/260906_release_244_followups/040_opaque_recovery.md b/devlog/_fin/260906_release_244_followups/040_opaque_recovery.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/040_opaque_recovery.md rename to devlog/_fin/260906_release_244_followups/040_opaque_recovery.md diff --git a/devlog/_plan/260906_release_244_followups/041_opaque_recovery_implementation.md b/devlog/_fin/260906_release_244_followups/041_opaque_recovery_implementation.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/041_opaque_recovery_implementation.md rename to devlog/_fin/260906_release_244_followups/041_opaque_recovery_implementation.md diff --git a/devlog/_plan/260906_release_244_followups/050_combo_recovery.md b/devlog/_fin/260906_release_244_followups/050_combo_recovery.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/050_combo_recovery.md rename to devlog/_fin/260906_release_244_followups/050_combo_recovery.md diff --git a/devlog/_plan/260906_release_244_followups/051_combo_recovery_implementation.md b/devlog/_fin/260906_release_244_followups/051_combo_recovery_implementation.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/051_combo_recovery_implementation.md rename to devlog/_fin/260906_release_244_followups/051_combo_recovery_implementation.md diff --git a/devlog/_plan/260906_release_244_followups/052_shutdown_fixture.md b/devlog/_fin/260906_release_244_followups/052_shutdown_fixture.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/052_shutdown_fixture.md rename to devlog/_fin/260906_release_244_followups/052_shutdown_fixture.md diff --git a/devlog/_plan/260906_release_244_followups/060_grok_terminal.md b/devlog/_fin/260906_release_244_followups/060_grok_terminal.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/060_grok_terminal.md rename to devlog/_fin/260906_release_244_followups/060_grok_terminal.md diff --git a/devlog/_plan/260906_release_244_followups/070_quota_proxy.md b/devlog/_fin/260906_release_244_followups/070_quota_proxy.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/070_quota_proxy.md rename to devlog/_fin/260906_release_244_followups/070_quota_proxy.md diff --git a/devlog/_plan/260906_release_244_followups/071_quota_proxy_outcome.md b/devlog/_fin/260906_release_244_followups/071_quota_proxy_outcome.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/071_quota_proxy_outcome.md rename to devlog/_fin/260906_release_244_followups/071_quota_proxy_outcome.md diff --git a/devlog/_plan/260906_release_244_followups/080_usage_source.md b/devlog/_fin/260906_release_244_followups/080_usage_source.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/080_usage_source.md rename to devlog/_fin/260906_release_244_followups/080_usage_source.md diff --git a/devlog/_plan/260906_release_244_followups/082_recovery_doc_alignment.md b/devlog/_fin/260906_release_244_followups/082_recovery_doc_alignment.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/082_recovery_doc_alignment.md rename to devlog/_fin/260906_release_244_followups/082_recovery_doc_alignment.md diff --git a/devlog/_plan/260906_release_244_followups/090_dashboard.md b/devlog/_fin/260906_release_244_followups/090_dashboard.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/090_dashboard.md rename to devlog/_fin/260906_release_244_followups/090_dashboard.md diff --git a/devlog/_plan/260906_release_244_followups/091_dashboard_verification.md b/devlog/_fin/260906_release_244_followups/091_dashboard_verification.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/091_dashboard_verification.md rename to devlog/_fin/260906_release_244_followups/091_dashboard_verification.md diff --git a/devlog/_plan/260906_release_244_followups/100_release.md b/devlog/_fin/260906_release_244_followups/100_release.md similarity index 100% rename from devlog/_plan/260906_release_244_followups/100_release.md rename to devlog/_fin/260906_release_244_followups/100_release.md diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-1024.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-1024.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-1024.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-1024.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440-dark.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440-dark.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440-dark.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440-dark.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440-lower.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440-lower.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440-lower.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440-lower.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440-zoom2.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440-zoom2.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440-zoom2.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440-zoom2.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-1440.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-1440.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-empty-repeat.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-empty-repeat.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-empty-repeat.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-empty-repeat.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-interaction.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-interaction.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-interaction.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-interaction.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-keyboard-open.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-keyboard-open.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-keyboard-open.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-keyboard-open.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-lower.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-lower.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-320-lower.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-320-lower.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-320.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-320.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-320.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-320.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-390.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-390.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-390.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-390.png diff --git a/devlog/_plan/260906_release_244_followups/screenshots/dashboard-768.png b/devlog/_fin/260906_release_244_followups/screenshots/dashboard-768.png similarity index 100% rename from devlog/_plan/260906_release_244_followups/screenshots/dashboard-768.png rename to devlog/_fin/260906_release_244_followups/screenshots/dashboard-768.png diff --git a/devlog/_plan/260906_stateful_task_guidance/000_plan.md b/devlog/_fin/260906_stateful_task_guidance/000_plan.md similarity index 100% rename from devlog/_plan/260906_stateful_task_guidance/000_plan.md rename to devlog/_fin/260906_stateful_task_guidance/000_plan.md diff --git a/devlog/_plan/260906_stateful_task_guidance/010_raw_boundary.md b/devlog/_fin/260906_stateful_task_guidance/010_raw_boundary.md similarity index 100% rename from devlog/_plan/260906_stateful_task_guidance/010_raw_boundary.md rename to devlog/_fin/260906_stateful_task_guidance/010_raw_boundary.md diff --git a/devlog/_plan/260906_stateful_task_guidance/011_implementation.md b/devlog/_fin/260906_stateful_task_guidance/011_implementation.md similarity index 100% rename from devlog/_plan/260906_stateful_task_guidance/011_implementation.md rename to devlog/_fin/260906_stateful_task_guidance/011_implementation.md diff --git a/devlog/_plan/260906_unix_shim_ci_restore/000_plan.md b/devlog/_fin/260906_unix_shim_ci_restore/000_plan.md similarity index 100% rename from devlog/_plan/260906_unix_shim_ci_restore/000_plan.md rename to devlog/_fin/260906_unix_shim_ci_restore/000_plan.md diff --git a/devlog/_plan/260906_unix_shim_ci_restore/010_repair.md b/devlog/_fin/260906_unix_shim_ci_restore/010_repair.md similarity index 100% rename from devlog/_plan/260906_unix_shim_ci_restore/010_repair.md rename to devlog/_fin/260906_unix_shim_ci_restore/010_repair.md diff --git a/devlog/_plan/260907_lane_c/000_plan.md b/devlog/_fin/260907_lane_c/000_plan.md similarity index 100% rename from devlog/_plan/260907_lane_c/000_plan.md rename to devlog/_fin/260907_lane_c/000_plan.md diff --git a/devlog/_plan/260907_lane_c/010_web_search.md b/devlog/_fin/260907_lane_c/010_web_search.md similarity index 100% rename from devlog/_plan/260907_lane_c/010_web_search.md rename to devlog/_fin/260907_lane_c/010_web_search.md diff --git a/devlog/_plan/260907_lane_c/020_vision.md b/devlog/_fin/260907_lane_c/020_vision.md similarity index 100% rename from devlog/_plan/260907_lane_c/020_vision.md rename to devlog/_fin/260907_lane_c/020_vision.md diff --git a/devlog/_plan/260907_lane_c/030_health.md b/devlog/_fin/260907_lane_c/030_health.md similarity index 100% rename from devlog/_plan/260907_lane_c/030_health.md rename to devlog/_fin/260907_lane_c/030_health.md diff --git a/devlog/_plan/260907_lane_c/040_desktop.md b/devlog/_fin/260907_lane_c/040_desktop.md similarity index 100% rename from devlog/_plan/260907_lane_c/040_desktop.md rename to devlog/_fin/260907_lane_c/040_desktop.md diff --git a/devlog/_plan/260907_lane_c/050_fallback.md b/devlog/_fin/260907_lane_c/050_fallback.md similarity index 100% rename from devlog/_plan/260907_lane_c/050_fallback.md rename to devlog/_fin/260907_lane_c/050_fallback.md diff --git a/devlog/_plan/260907_lane_d/000_plan.md b/devlog/_fin/260907_lane_d/000_plan.md similarity index 100% rename from devlog/_plan/260907_lane_d/000_plan.md rename to devlog/_fin/260907_lane_d/000_plan.md diff --git a/devlog/_plan/260907_lane_d/001_roadmap_audit.md b/devlog/_fin/260907_lane_d/001_roadmap_audit.md similarity index 100% rename from devlog/_plan/260907_lane_d/001_roadmap_audit.md rename to devlog/_fin/260907_lane_d/001_roadmap_audit.md diff --git a/devlog/_plan/260907_lane_d/010_thinking.md b/devlog/_fin/260907_lane_d/010_thinking.md similarity index 100% rename from devlog/_plan/260907_lane_d/010_thinking.md rename to devlog/_fin/260907_lane_d/010_thinking.md diff --git a/devlog/_plan/260907_lane_d/020_receipt.md b/devlog/_fin/260907_lane_d/020_receipt.md similarity index 100% rename from devlog/_plan/260907_lane_d/020_receipt.md rename to devlog/_fin/260907_lane_d/020_receipt.md diff --git a/devlog/_plan/260907_lane_d/030_account_prices.md b/devlog/_fin/260907_lane_d/030_account_prices.md similarity index 100% rename from devlog/_plan/260907_lane_d/030_account_prices.md rename to devlog/_fin/260907_lane_d/030_account_prices.md diff --git a/devlog/_plan/260907_lane_d/040_price_editor.md b/devlog/_fin/260907_lane_d/040_price_editor.md similarity index 100% rename from devlog/_plan/260907_lane_d/040_price_editor.md rename to devlog/_fin/260907_lane_d/040_price_editor.md diff --git a/devlog/_plan/260907_lane_d/050_usage_ranges.md b/devlog/_fin/260907_lane_d/050_usage_ranges.md similarity index 100% rename from devlog/_plan/260907_lane_d/050_usage_ranges.md rename to devlog/_fin/260907_lane_d/050_usage_ranges.md diff --git a/devlog/_plan/260907_lane_d/060_delivery.md b/devlog/_fin/260907_lane_d/060_delivery.md similarity index 100% rename from devlog/_plan/260907_lane_d/060_delivery.md rename to devlog/_fin/260907_lane_d/060_delivery.md diff --git a/devlog/_plan/260907_next_release_recommendations/000_plan.md b/devlog/_fin/260907_next_release_recommendations/000_plan.md similarity index 98% rename from devlog/_plan/260907_next_release_recommendations/000_plan.md rename to devlog/_fin/260907_next_release_recommendations/000_plan.md index 3febda57eaf..fddd8d8f03a 100644 --- a/devlog/_plan/260907_next_release_recommendations/000_plan.md +++ b/devlog/_fin/260907_next_release_recommendations/000_plan.md @@ -1,6 +1,6 @@ # 000 — Plan: next-release recommendation report (wp1) -Unit: devlog/_plan/260907_next_release_recommendations +Unit: devlog/_fin/260907_next_release_recommendations Class: C2 (docs-only deliverable; research via read-only explorer lanes) Goal: rank 10–30 items to land on `dev` before the release after v2.46.0 (dev open at 2.47.0). diff --git a/devlog/_plan/260907_next_release_recommendations/010_recommendations.md b/devlog/_fin/260907_next_release_recommendations/010_recommendations.md similarity index 100% rename from devlog/_plan/260907_next_release_recommendations/010_recommendations.md rename to devlog/_fin/260907_next_release_recommendations/010_recommendations.md diff --git a/devlog/_plan/260907_platform_validation/000_plan.md b/devlog/_fin/260907_platform_validation/000_plan.md similarity index 100% rename from devlog/_plan/260907_platform_validation/000_plan.md rename to devlog/_fin/260907_platform_validation/000_plan.md diff --git a/devlog/_plan/260907_platform_validation/001_plan_audit.md b/devlog/_fin/260907_platform_validation/001_plan_audit.md similarity index 100% rename from devlog/_plan/260907_platform_validation/001_plan_audit.md rename to devlog/_fin/260907_platform_validation/001_plan_audit.md diff --git a/devlog/_plan/260907_platform_validation/010_oauth_teardown.md b/devlog/_fin/260907_platform_validation/010_oauth_teardown.md similarity index 100% rename from devlog/_plan/260907_platform_validation/010_oauth_teardown.md rename to devlog/_fin/260907_platform_validation/010_oauth_teardown.md diff --git a/devlog/_plan/260907_platform_validation/020_container_smoke.md b/devlog/_fin/260907_platform_validation/020_container_smoke.md similarity index 100% rename from devlog/_plan/260907_platform_validation/020_container_smoke.md rename to devlog/_fin/260907_platform_validation/020_container_smoke.md diff --git a/devlog/_plan/260907_platform_validation/025_container_lifecycle_mode.md b/devlog/_fin/260907_platform_validation/025_container_lifecycle_mode.md similarity index 100% rename from devlog/_plan/260907_platform_validation/025_container_lifecycle_mode.md rename to devlog/_fin/260907_platform_validation/025_container_lifecycle_mode.md diff --git a/devlog/_plan/260907_platform_validation/030_container_ci.md b/devlog/_fin/260907_platform_validation/030_container_ci.md similarity index 100% rename from devlog/_plan/260907_platform_validation/030_container_ci.md rename to devlog/_fin/260907_platform_validation/030_container_ci.md diff --git a/devlog/_plan/260907_platform_validation/035_body_diagnostics.md b/devlog/_fin/260907_platform_validation/035_body_diagnostics.md similarity index 100% rename from devlog/_plan/260907_platform_validation/035_body_diagnostics.md rename to devlog/_fin/260907_platform_validation/035_body_diagnostics.md diff --git a/devlog/_plan/260907_platform_validation/040_residual_evidence.md b/devlog/_fin/260907_platform_validation/040_residual_evidence.md similarity index 100% rename from devlog/_plan/260907_platform_validation/040_residual_evidence.md rename to devlog/_fin/260907_platform_validation/040_residual_evidence.md diff --git a/devlog/_plan/260907_release_note_prefix/010_implementation.md b/devlog/_fin/260907_release_note_prefix/010_implementation.md similarity index 100% rename from devlog/_plan/260907_release_note_prefix/010_implementation.md rename to devlog/_fin/260907_release_note_prefix/010_implementation.md diff --git a/devlog/_plan/260907_release_train/000_plan.md b/devlog/_fin/260907_release_train/000_plan.md similarity index 98% rename from devlog/_plan/260907_release_train/000_plan.md rename to devlog/_fin/260907_release_train/000_plan.md index fc5510ad37d..fb18a3d2612 100644 --- a/devlog/_plan/260907_release_train/000_plan.md +++ b/devlog/_fin/260907_release_train/000_plan.md @@ -1,6 +1,6 @@ # 000 — Release train 260907: land ranked recommendations on dev (loop-in-loop) -Source of items: `devlog/_plan/260907_next_release_recommendations/010_recommendations.md` (27 ranked items). +Source of items: `devlog/_fin/260907_next_release_recommendations/010_recommendations.md` (27 ranked items). Base: `origin/dev@ece556a6e` (2.47.0). Goalplan: `release-train-260907-land-ranked-recommendations`. Class: C4 (release train; admin merges; contributor credit). Full PABCD per work-phase; delegated threads run their own cxc-loop. diff --git a/devlog/_plan/260907_release_train/010_wp1_execution.md b/devlog/_fin/260907_release_train/010_wp1_execution.md similarity index 100% rename from devlog/_plan/260907_release_train/010_wp1_execution.md rename to devlog/_fin/260907_release_train/010_wp1_execution.md diff --git a/devlog/_plan/260907_release_train/090_readiness.md b/devlog/_fin/260907_release_train/090_readiness.md similarity index 100% rename from devlog/_plan/260907_release_train/090_readiness.md rename to devlog/_fin/260907_release_train/090_readiness.md diff --git a/devlog/_plan/260907_release_train_b/000_plan.md b/devlog/_fin/260907_release_train_b/000_plan.md similarity index 100% rename from devlog/_plan/260907_release_train_b/000_plan.md rename to devlog/_fin/260907_release_train_b/000_plan.md diff --git a/devlog/_plan/260907_release_train_b/010_carry.md b/devlog/_fin/260907_release_train_b/010_carry.md similarity index 100% rename from devlog/_plan/260907_release_train_b/010_carry.md rename to devlog/_fin/260907_release_train_b/010_carry.md diff --git a/devlog/_plan/260907_release_train_b/020_carry.md b/devlog/_fin/260907_release_train_b/020_carry.md similarity index 100% rename from devlog/_plan/260907_release_train_b/020_carry.md rename to devlog/_fin/260907_release_train_b/020_carry.md diff --git a/devlog/_plan/260907_router_selection_capture/010_implementation.md b/devlog/_fin/260907_router_selection_capture/010_implementation.md similarity index 100% rename from devlog/_plan/260907_router_selection_capture/010_implementation.md rename to devlog/_fin/260907_router_selection_capture/010_implementation.md diff --git a/devlog/_plan/260907_sponsor_branches/000_plan.md b/devlog/_fin/260907_sponsor_branches/000_plan.md similarity index 100% rename from devlog/_plan/260907_sponsor_branches/000_plan.md rename to devlog/_fin/260907_sponsor_branches/000_plan.md diff --git a/devlog/_plan/260907_sponsor_branches/010_phase1.md b/devlog/_fin/260907_sponsor_branches/010_phase1.md similarity index 100% rename from devlog/_plan/260907_sponsor_branches/010_phase1.md rename to devlog/_fin/260907_sponsor_branches/010_phase1.md diff --git a/devlog/_plan/260907_sponsor_branches/020_phase2.md b/devlog/_fin/260907_sponsor_branches/020_phase2.md similarity index 100% rename from devlog/_plan/260907_sponsor_branches/020_phase2.md rename to devlog/_fin/260907_sponsor_branches/020_phase2.md diff --git a/devlog/_plan/260907_sponsor_branches/030_phase3.md b/devlog/_fin/260907_sponsor_branches/030_phase3.md similarity index 100% rename from devlog/_plan/260907_sponsor_branches/030_phase3.md rename to devlog/_fin/260907_sponsor_branches/030_phase3.md diff --git a/devlog/_plan/260907_track2_protocol/000_plan.md b/devlog/_fin/260907_track2_protocol/000_plan.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/000_plan.md rename to devlog/_fin/260907_track2_protocol/000_plan.md diff --git a/devlog/_plan/260907_track2_protocol/010_chat_json_sse.md b/devlog/_fin/260907_track2_protocol/010_chat_json_sse.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/010_chat_json_sse.md rename to devlog/_fin/260907_track2_protocol/010_chat_json_sse.md diff --git a/devlog/_plan/260907_track2_protocol/011_chat_audit_amendment.md b/devlog/_fin/260907_track2_protocol/011_chat_audit_amendment.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/011_chat_audit_amendment.md rename to devlog/_fin/260907_track2_protocol/011_chat_audit_amendment.md diff --git a/devlog/_plan/260907_track2_protocol/020_refusal.md b/devlog/_fin/260907_track2_protocol/020_refusal.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/020_refusal.md rename to devlog/_fin/260907_track2_protocol/020_refusal.md diff --git a/devlog/_plan/260907_track2_protocol/030_custom_efforts.md b/devlog/_fin/260907_track2_protocol/030_custom_efforts.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/030_custom_efforts.md rename to devlog/_fin/260907_track2_protocol/030_custom_efforts.md diff --git a/devlog/_plan/260907_track2_protocol/040_hosted_search_disposition.md b/devlog/_fin/260907_track2_protocol/040_hosted_search_disposition.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/040_hosted_search_disposition.md rename to devlog/_fin/260907_track2_protocol/040_hosted_search_disposition.md diff --git a/devlog/_plan/260907_track2_protocol/050_claude_compatibility.md b/devlog/_fin/260907_track2_protocol/050_claude_compatibility.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/050_claude_compatibility.md rename to devlog/_fin/260907_track2_protocol/050_claude_compatibility.md diff --git a/devlog/_plan/260907_track2_protocol/060_remote_delivery.md b/devlog/_fin/260907_track2_protocol/060_remote_delivery.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/060_remote_delivery.md rename to devlog/_fin/260907_track2_protocol/060_remote_delivery.md diff --git a/devlog/_plan/260907_track2_protocol/070_windows_fixture_cache.md b/devlog/_fin/260907_track2_protocol/070_windows_fixture_cache.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/070_windows_fixture_cache.md rename to devlog/_fin/260907_track2_protocol/070_windows_fixture_cache.md diff --git a/devlog/_plan/260907_track2_protocol/080_windows_sync_preparation.md b/devlog/_fin/260907_track2_protocol/080_windows_sync_preparation.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/080_windows_sync_preparation.md rename to devlog/_fin/260907_track2_protocol/080_windows_sync_preparation.md diff --git a/devlog/_plan/260907_track2_protocol/090_windows_shim_budget.md b/devlog/_fin/260907_track2_protocol/090_windows_shim_budget.md similarity index 100% rename from devlog/_plan/260907_track2_protocol/090_windows_shim_budget.md rename to devlog/_fin/260907_track2_protocol/090_windows_shim_budget.md diff --git a/devlog/_fin/260908_provider_runtime_stack/000_plan.md b/devlog/_fin/260908_provider_runtime_stack/000_plan.md index c8da992329c..2942397ae96 100644 --- a/devlog/_fin/260908_provider_runtime_stack/000_plan.md +++ b/devlog/_fin/260908_provider_runtime_stack/000_plan.md @@ -1,6 +1,6 @@ # 000 — Plan and live manifest -Unit: `devlog/_plan/260908_provider_runtime_stack`. Session `01a080e2-1dfc-7082-bff8-5043215bdd35`. +Unit: `devlog/_fin/260908_provider_runtime_stack`. Session `01a080e2-1dfc-7082-bff8-5043215bdd35`. Snapshot: 2026-09-08T12:00Z (fetch), `origin/dev` = `29bb221c3` (`Merge pull request #4021 from lidge-jun/codex/release-248-record`). Carry worktree: `/private/tmp/ocx-prs-stack-01a080e2` (linked worktree of the main checkout; diff --git a/devlog/_plan/260908_sponsor_overview/010_overview.md b/devlog/_fin/260908_sponsor_overview/010_overview.md similarity index 100% rename from devlog/_plan/260908_sponsor_overview/010_overview.md rename to devlog/_fin/260908_sponsor_overview/010_overview.md diff --git a/devlog/_plan/260908_voice_relay/000_plan.md b/devlog/_fin/260908_voice_relay/000_plan.md similarity index 100% rename from devlog/_plan/260908_voice_relay/000_plan.md rename to devlog/_fin/260908_voice_relay/000_plan.md diff --git a/devlog/_plan/260908_voice_relay/001_sources.md b/devlog/_fin/260908_voice_relay/001_sources.md similarity index 100% rename from devlog/_plan/260908_voice_relay/001_sources.md rename to devlog/_fin/260908_voice_relay/001_sources.md diff --git a/devlog/_plan/260909_codex_credential_health_chain/000_plan.md b/devlog/_fin/260909_codex_credential_health_chain/000_plan.md similarity index 100% rename from devlog/_plan/260909_codex_credential_health_chain/000_plan.md rename to devlog/_fin/260909_codex_credential_health_chain/000_plan.md diff --git a/devlog/_plan/260909_codex_credential_health_chain/010_wp1_terminal_verdict.md b/devlog/_fin/260909_codex_credential_health_chain/010_wp1_terminal_verdict.md similarity index 100% rename from devlog/_plan/260909_codex_credential_health_chain/010_wp1_terminal_verdict.md rename to devlog/_fin/260909_codex_credential_health_chain/010_wp1_terminal_verdict.md diff --git a/devlog/_plan/260909_codex_credential_health_chain/020_wp2_quota_registration.md b/devlog/_fin/260909_codex_credential_health_chain/020_wp2_quota_registration.md similarity index 100% rename from devlog/_plan/260909_codex_credential_health_chain/020_wp2_quota_registration.md rename to devlog/_fin/260909_codex_credential_health_chain/020_wp2_quota_registration.md diff --git a/devlog/_plan/260909_codex_credential_health_chain/030_wp3_anthropic_plan.md b/devlog/_fin/260909_codex_credential_health_chain/030_wp3_anthropic_plan.md similarity index 100% rename from devlog/_plan/260909_codex_credential_health_chain/030_wp3_anthropic_plan.md rename to devlog/_fin/260909_codex_credential_health_chain/030_wp3_anthropic_plan.md diff --git a/devlog/_plan/260909_config_mutation_lock_windows/000_plan.md b/devlog/_fin/260909_config_mutation_lock_windows/000_plan.md similarity index 100% rename from devlog/_plan/260909_config_mutation_lock_windows/000_plan.md rename to devlog/_fin/260909_config_mutation_lock_windows/000_plan.md diff --git a/devlog/_plan/260909_mid_thread_agent_task_recovery/000_plan.md b/devlog/_fin/260909_mid_thread_agent_task_recovery/000_plan.md similarity index 100% rename from devlog/_plan/260909_mid_thread_agent_task_recovery/000_plan.md rename to devlog/_fin/260909_mid_thread_agent_task_recovery/000_plan.md diff --git a/devlog/_plan/260909_post249_scope_cleanup/000_plan.md b/devlog/_fin/260909_post249_scope_cleanup/000_plan.md similarity index 100% rename from devlog/_plan/260909_post249_scope_cleanup/000_plan.md rename to devlog/_fin/260909_post249_scope_cleanup/000_plan.md diff --git a/devlog/_plan/260909_post249_scope_cleanup/010_reconciliation.md b/devlog/_fin/260909_post249_scope_cleanup/010_reconciliation.md similarity index 100% rename from devlog/_plan/260909_post249_scope_cleanup/010_reconciliation.md rename to devlog/_fin/260909_post249_scope_cleanup/010_reconciliation.md diff --git a/devlog/_plan/260909_post249_scope_cleanup/020_branch_worktree_cleanup.md b/devlog/_fin/260909_post249_scope_cleanup/020_branch_worktree_cleanup.md similarity index 100% rename from devlog/_plan/260909_post249_scope_cleanup/020_branch_worktree_cleanup.md rename to devlog/_fin/260909_post249_scope_cleanup/020_branch_worktree_cleanup.md diff --git a/devlog/_plan/260909_post249_scope_cleanup/030_issue_disposition.md b/devlog/_fin/260909_post249_scope_cleanup/030_issue_disposition.md similarity index 100% rename from devlog/_plan/260909_post249_scope_cleanup/030_issue_disposition.md rename to devlog/_fin/260909_post249_scope_cleanup/030_issue_disposition.md diff --git a/devlog/_plan/260909_post249_scope_cleanup/040_dispatch_roadmap.md b/devlog/_fin/260909_post249_scope_cleanup/040_dispatch_roadmap.md similarity index 100% rename from devlog/_plan/260909_post249_scope_cleanup/040_dispatch_roadmap.md rename to devlog/_fin/260909_post249_scope_cleanup/040_dispatch_roadmap.md diff --git a/devlog/_plan/260909_post249_scope_cleanup/050_delivery_record.md b/devlog/_fin/260909_post249_scope_cleanup/050_delivery_record.md similarity index 100% rename from devlog/_plan/260909_post249_scope_cleanup/050_delivery_record.md rename to devlog/_fin/260909_post249_scope_cleanup/050_delivery_record.md diff --git a/devlog/_plan/260909_usage_custom_range_disclosure/000_plan.md b/devlog/_fin/260909_usage_custom_range_disclosure/000_plan.md similarity index 100% rename from devlog/_plan/260909_usage_custom_range_disclosure/000_plan.md rename to devlog/_fin/260909_usage_custom_range_disclosure/000_plan.md diff --git a/devlog/_plan/260909_usage_custom_range_disclosure/010_audit.md b/devlog/_fin/260909_usage_custom_range_disclosure/010_audit.md similarity index 100% rename from devlog/_plan/260909_usage_custom_range_disclosure/010_audit.md rename to devlog/_fin/260909_usage_custom_range_disclosure/010_audit.md diff --git a/devlog/_plan/260909_usage_custom_range_disclosure/assets/010_before.png b/devlog/_fin/260909_usage_custom_range_disclosure/assets/010_before.png similarity index 100% rename from devlog/_plan/260909_usage_custom_range_disclosure/assets/010_before.png rename to devlog/_fin/260909_usage_custom_range_disclosure/assets/010_before.png diff --git a/devlog/_plan/260909_usage_custom_range_disclosure/assets/020_after_collapsed.png b/devlog/_fin/260909_usage_custom_range_disclosure/assets/020_after_collapsed.png similarity index 100% rename from devlog/_plan/260909_usage_custom_range_disclosure/assets/020_after_collapsed.png rename to devlog/_fin/260909_usage_custom_range_disclosure/assets/020_after_collapsed.png diff --git a/devlog/_plan/260909_usage_custom_range_disclosure/assets/030_after_open.png b/devlog/_fin/260909_usage_custom_range_disclosure/assets/030_after_open.png similarity index 100% rename from devlog/_plan/260909_usage_custom_range_disclosure/assets/030_after_open.png rename to devlog/_fin/260909_usage_custom_range_disclosure/assets/030_after_open.png diff --git a/devlog/_plan/260909_xai_oauth_retry_hardening/000_plan.md b/devlog/_fin/260909_xai_oauth_retry_hardening/000_plan.md similarity index 98% rename from devlog/_plan/260909_xai_oauth_retry_hardening/000_plan.md rename to devlog/_fin/260909_xai_oauth_retry_hardening/000_plan.md index 785622752e2..6a4728d9e68 100644 --- a/devlog/_plan/260909_xai_oauth_retry_hardening/000_plan.md +++ b/devlog/_fin/260909_xai_oauth_retry_hardening/000_plan.md @@ -60,7 +60,7 @@ trusting unbounded subdomains. - Tool/credential scope: `gh` as the repository owner for reads and PR creation on `lidge-jun/opencodex`; no merge, release, or settings writes. - Write scope: `src/oauth/xai.ts`, `tests/providers/xai/xai-oauth-retry.test.ts`, - `devlog/_plan/260909_xai_oauth_retry_hardening/`, `.tmp/` scratch. Git + `devlog/_fin/260909_xai_oauth_retry_hardening/`, `.tmp/` scratch. Git mutations use `-c core.hooksPath=/dev/null`; pushes use `--no-verify`. - Token/cost and wall-clock budgets: none set by the user; unbounded within the session, reported at handoff. diff --git a/devlog/_plan/260909_xai_oauth_retry_hardening/010_phase1_retry_after_abort.md b/devlog/_fin/260909_xai_oauth_retry_hardening/010_phase1_retry_after_abort.md similarity index 100% rename from devlog/_plan/260909_xai_oauth_retry_hardening/010_phase1_retry_after_abort.md rename to devlog/_fin/260909_xai_oauth_retry_hardening/010_phase1_retry_after_abort.md diff --git a/devlog/_plan/260909_xai_oauth_retry_hardening/020_phase2_endpoint_validation.md b/devlog/_fin/260909_xai_oauth_retry_hardening/020_phase2_endpoint_validation.md similarity index 100% rename from devlog/_plan/260909_xai_oauth_retry_hardening/020_phase2_endpoint_validation.md rename to devlog/_fin/260909_xai_oauth_retry_hardening/020_phase2_endpoint_validation.md diff --git a/devlog/_plan/260910_250_regression_audit_release/000_plan.md b/devlog/_fin/260910_250_regression_audit_release/000_plan.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/000_plan.md rename to devlog/_fin/260910_250_regression_audit_release/000_plan.md diff --git a/devlog/_plan/260910_250_regression_audit_release/010_audit_lanes.md b/devlog/_fin/260910_250_regression_audit_release/010_audit_lanes.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/010_audit_lanes.md rename to devlog/_fin/260910_250_regression_audit_release/010_audit_lanes.md diff --git a/devlog/_plan/260910_250_regression_audit_release/020_release_plan.md b/devlog/_fin/260910_250_regression_audit_release/020_release_plan.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/020_release_plan.md rename to devlog/_fin/260910_250_regression_audit_release/020_release_plan.md diff --git a/devlog/_plan/260910_250_regression_audit_release/030_evidence.md b/devlog/_fin/260910_250_regression_audit_release/030_evidence.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/030_evidence.md rename to devlog/_fin/260910_250_regression_audit_release/030_evidence.md diff --git a/devlog/_plan/260910_250_regression_audit_release/040_triage_protocol.md b/devlog/_fin/260910_250_regression_audit_release/040_triage_protocol.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/040_triage_protocol.md rename to devlog/_fin/260910_250_regression_audit_release/040_triage_protocol.md diff --git a/devlog/_plan/260910_250_regression_audit_release/050_lane_packets.md b/devlog/_fin/260910_250_regression_audit_release/050_lane_packets.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/050_lane_packets.md rename to devlog/_fin/260910_250_regression_audit_release/050_lane_packets.md diff --git a/devlog/_plan/260910_250_regression_audit_release/060_release_readiness.md b/devlog/_fin/260910_250_regression_audit_release/060_release_readiness.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/060_release_readiness.md rename to devlog/_fin/260910_250_regression_audit_release/060_release_readiness.md diff --git a/devlog/_plan/260910_250_regression_audit_release/070_release_execution.md b/devlog/_fin/260910_250_regression_audit_release/070_release_execution.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/070_release_execution.md rename to devlog/_fin/260910_250_regression_audit_release/070_release_execution.md diff --git a/devlog/_plan/260910_250_regression_audit_release/080_delivery_record.md b/devlog/_fin/260910_250_regression_audit_release/080_delivery_record.md similarity index 100% rename from devlog/_plan/260910_250_regression_audit_release/080_delivery_record.md rename to devlog/_fin/260910_250_regression_audit_release/080_delivery_record.md diff --git a/devlog/_plan/260910_cursor_acp_bridge/000_plan.md b/devlog/_fin/260910_cursor_acp_bridge/000_plan.md similarity index 97% rename from devlog/_plan/260910_cursor_acp_bridge/000_plan.md rename to devlog/_fin/260910_cursor_acp_bridge/000_plan.md index 47480b5e671..07bbe21b4cf 100644 --- a/devlog/_plan/260910_cursor_acp_bridge/000_plan.md +++ b/devlog/_fin/260910_cursor_acp_bridge/000_plan.md @@ -70,7 +70,7 @@ Each phase consumes the verified output of the previous one. | `050_audit.md` | independent reviewer verdict and main disposition | A phase | | `060_done.md` | cycle summary, what did not improve, falsification hooks | D phase | -No file outside `devlog/_plan/260910_cursor_acp_bridge/` is touched. +No file outside `devlog/_fin/260910_cursor_acp_bridge/` is touched. ## Accept criteria @@ -101,7 +101,7 @@ Run before being written here. | Command | Exit | Reads this unit's target? | |---|---|---| -| `bun run privacy:scan` | `0` ("Privacy scan passed", re-run 2026-09-10 after staging) | **Yes, but only once the files are tracked.** `scripts/privacy-scan.ts:60` takes its inputs from `git ls-files`. The first run of this gate passed while reading **none** of this unit's files, because they were untracked. The files were then `git add`-ed and the gate re-run; `git ls-files -- devlog/_plan/260910_cursor_acp_bridge` now lists all six, including `050_audit.md`, which was itself missed on the first staging pass. | +| `bun run privacy:scan` | `0` ("Privacy scan passed", re-run 2026-09-10 after staging) | **Yes, but only once the files are tracked.** `scripts/privacy-scan.ts:60` takes its inputs from `git ls-files`. The first run of this gate passed while reading **none** of this unit's files, because they were untracked. The files were then `git add`-ed and the gate re-run; `git ls-files -- devlog/_fin/260910_cursor_acp_bridge` now lists all six, including `050_audit.md`, which was itself missed on the first staging pass. | | `bun test tests/ci-workflows/repo-hygiene.test.ts` | `0` (14 pass / 0 fail, 2026-09-10) | **Yes, partially, and also only when tracked.** It asserts no `160000` gitlink and no excised material is in the index, and includes an unresolved-security-verdict tripwire over open devlog plans. It checks hygiene, not correctness. | **This table is itself an instance of the trap PLAN-VERIFIER-REAL-01 warns about** diff --git a/devlog/_plan/260910_cursor_acp_bridge/010_protocol_identity.md b/devlog/_fin/260910_cursor_acp_bridge/010_protocol_identity.md similarity index 100% rename from devlog/_plan/260910_cursor_acp_bridge/010_protocol_identity.md rename to devlog/_fin/260910_cursor_acp_bridge/010_protocol_identity.md diff --git a/devlog/_plan/260910_cursor_acp_bridge/020_cli_jaw_inventory.md b/devlog/_fin/260910_cursor_acp_bridge/020_cli_jaw_inventory.md similarity index 100% rename from devlog/_plan/260910_cursor_acp_bridge/020_cli_jaw_inventory.md rename to devlog/_fin/260910_cursor_acp_bridge/020_cli_jaw_inventory.md diff --git a/devlog/_plan/260910_cursor_acp_bridge/030_opencodex_seams.md b/devlog/_fin/260910_cursor_acp_bridge/030_opencodex_seams.md similarity index 100% rename from devlog/_plan/260910_cursor_acp_bridge/030_opencodex_seams.md rename to devlog/_fin/260910_cursor_acp_bridge/030_opencodex_seams.md diff --git a/devlog/_plan/260910_cursor_acp_bridge/040_feasibility_verdict.md b/devlog/_fin/260910_cursor_acp_bridge/040_feasibility_verdict.md similarity index 100% rename from devlog/_plan/260910_cursor_acp_bridge/040_feasibility_verdict.md rename to devlog/_fin/260910_cursor_acp_bridge/040_feasibility_verdict.md diff --git a/devlog/_plan/260910_cursor_acp_bridge/050_audit.md b/devlog/_fin/260910_cursor_acp_bridge/050_audit.md similarity index 99% rename from devlog/_plan/260910_cursor_acp_bridge/050_audit.md rename to devlog/_fin/260910_cursor_acp_bridge/050_audit.md index c8247785639..877b0ac167f 100644 --- a/devlog/_plan/260910_cursor_acp_bridge/050_audit.md +++ b/devlog/_fin/260910_cursor_acp_bridge/050_audit.md @@ -83,7 +83,7 @@ of them, and the plan's claim that it "observes every file this unit adds" was false as written. Fixed properly rather than reworded: the unit was `git add`-ed, -`git ls-files -- devlog/_plan/260910_cursor_acp_bridge` now returns all five +`git ls-files -- devlog/_fin/260910_cursor_acp_bridge` now returns all five files, and both gates were re-run against the tracked state (`privacy:scan` exit 0; `repo-hygiene` 14 pass / 0 fail). 000 now records the original failure as a worked example of the PLAN-VERIFIER-REAL-01 trap. diff --git a/devlog/_plan/260910_cursor_acp_bridge/060_done.md b/devlog/_fin/260910_cursor_acp_bridge/060_done.md similarity index 99% rename from devlog/_plan/260910_cursor_acp_bridge/060_done.md rename to devlog/_fin/260910_cursor_acp_bridge/060_done.md index 10bcf0385de..115259c7031 100644 --- a/devlog/_plan/260910_cursor_acp_bridge/060_done.md +++ b/devlog/_fin/260910_cursor_acp_bridge/060_done.md @@ -105,7 +105,7 @@ Over the tracked six-file unit: - `bun run privacy:scan` -> exit 0, "Privacy scan passed" - `bun test tests/ci-workflows/repo-hygiene.test.ts` -> 14 pass / 0 fail -- `git ls-files -- devlog/_plan/260910_cursor_acp_bridge` -> 6 files +- `git ls-files -- devlog/_fin/260910_cursor_acp_bridge` -> 6 files No `src/`, `gui/` or `docs-site/` file was touched, so no typecheck or product suite applies. **No machine gate checks whether any claim in these documents is diff --git a/devlog/_plan/260910_cursor_acp_bridge/070_live_trace.md b/devlog/_fin/260910_cursor_acp_bridge/070_live_trace.md similarity index 100% rename from devlog/_plan/260910_cursor_acp_bridge/070_live_trace.md rename to devlog/_fin/260910_cursor_acp_bridge/070_live_trace.md diff --git a/devlog/_plan/260910_live_service_manager_guard/000_plan.md b/devlog/_fin/260910_live_service_manager_guard/000_plan.md similarity index 97% rename from devlog/_plan/260910_live_service_manager_guard/000_plan.md rename to devlog/_fin/260910_live_service_manager_guard/000_plan.md index 817da13a7d9..39b5fce6c6c 100644 --- a/devlog/_plan/260910_live_service_manager_guard/000_plan.md +++ b/devlog/_fin/260910_live_service_manager_guard/000_plan.md @@ -53,4 +53,4 @@ machine this was written on is running opencodex. CI on the pushed head is the e The incident that started this was an agent executing README text through a shell. This guard would not have stopped it. That belongs to how agents write files, and it is recorded in -`devlog/_plan/260910_readme_i18n_parity/020_phase2_locale_resync.md`. +`devlog/_fin/260910_readme_i18n_parity/020_phase2_locale_resync.md`. diff --git a/devlog/_plan/260910_post249_round2/000_plan.md b/devlog/_fin/260910_post249_round2/000_plan.md similarity index 98% rename from devlog/_plan/260910_post249_round2/000_plan.md rename to devlog/_fin/260910_post249_round2/000_plan.md index 46ca0bc9c26..a2fa3b69741 100644 --- a/devlog/_plan/260910_post249_round2/000_plan.md +++ b/devlog/_fin/260910_post249_round2/000_plan.md @@ -2,7 +2,7 @@ ## Context -Round 1 (`devlog/_plan/260909_post249_scope_cleanup/`) landed 17 PRs and closed +Round 1 (`devlog/_fin/260909_post249_scope_cleanup/`) landed 17 PRs and closed 16 issues; `origin/dev` closed at `cd813d3d9`. Three issues were left open by decision: #3978 (deferred until the compaction status contract settles), #3506 (direction comment only — translation fidelity, not a proxy-side progress diff --git a/devlog/_plan/260910_post249_round2/010_lane_split.md b/devlog/_fin/260910_post249_round2/010_lane_split.md similarity index 100% rename from devlog/_plan/260910_post249_round2/010_lane_split.md rename to devlog/_fin/260910_post249_round2/010_lane_split.md diff --git a/devlog/_plan/260910_post249_round2/020_4129_shadow_combo_failover.md b/devlog/_fin/260910_post249_round2/020_4129_shadow_combo_failover.md similarity index 100% rename from devlog/_plan/260910_post249_round2/020_4129_shadow_combo_failover.md rename to devlog/_fin/260910_post249_round2/020_4129_shadow_combo_failover.md diff --git a/devlog/_plan/260910_post249_round2/030_4148_claude_system_hoist.md b/devlog/_fin/260910_post249_round2/030_4148_claude_system_hoist.md similarity index 100% rename from devlog/_plan/260910_post249_round2/030_4148_claude_system_hoist.md rename to devlog/_fin/260910_post249_round2/030_4148_claude_system_hoist.md diff --git a/devlog/_plan/260910_post249_round2/040_4141_launchctl_bootout.md b/devlog/_fin/260910_post249_round2/040_4141_launchctl_bootout.md similarity index 100% rename from devlog/_plan/260910_post249_round2/040_4141_launchctl_bootout.md rename to devlog/_fin/260910_post249_round2/040_4141_launchctl_bootout.md diff --git a/devlog/_plan/260910_post249_round2/050_3666_free_model_filter.md b/devlog/_fin/260910_post249_round2/050_3666_free_model_filter.md similarity index 100% rename from devlog/_plan/260910_post249_round2/050_3666_free_model_filter.md rename to devlog/_fin/260910_post249_round2/050_3666_free_model_filter.md diff --git a/devlog/_plan/260910_post249_round2/060_4075_gemini_setup_ux.md b/devlog/_fin/260910_post249_round2/060_4075_gemini_setup_ux.md similarity index 100% rename from devlog/_plan/260910_post249_round2/060_4075_gemini_setup_ux.md rename to devlog/_fin/260910_post249_round2/060_4075_gemini_setup_ux.md diff --git a/devlog/_plan/260910_post249_round2/070_3859_email_mask_toggle.md b/devlog/_fin/260910_post249_round2/070_3859_email_mask_toggle.md similarity index 100% rename from devlog/_plan/260910_post249_round2/070_3859_email_mask_toggle.md rename to devlog/_fin/260910_post249_round2/070_3859_email_mask_toggle.md diff --git a/devlog/_plan/260910_post249_round2/080_1711_zero_credit_catalog.md b/devlog/_fin/260910_post249_round2/080_1711_zero_credit_catalog.md similarity index 100% rename from devlog/_plan/260910_post249_round2/080_1711_zero_credit_catalog.md rename to devlog/_fin/260910_post249_round2/080_1711_zero_credit_catalog.md diff --git a/devlog/_plan/260910_post249_round2/090_4038_decode_rate.md b/devlog/_fin/260910_post249_round2/090_4038_decode_rate.md similarity index 100% rename from devlog/_plan/260910_post249_round2/090_4038_decode_rate.md rename to devlog/_fin/260910_post249_round2/090_4038_decode_rate.md diff --git a/devlog/_plan/260910_post249_round2/100_4147_zcode_reasoning_landing.md b/devlog/_fin/260910_post249_round2/100_4147_zcode_reasoning_landing.md similarity index 100% rename from devlog/_plan/260910_post249_round2/100_4147_zcode_reasoning_landing.md rename to devlog/_fin/260910_post249_round2/100_4147_zcode_reasoning_landing.md diff --git a/devlog/_plan/260910_post249_round2/110_delivery_record.md b/devlog/_fin/260910_post249_round2/110_delivery_record.md similarity index 100% rename from devlog/_plan/260910_post249_round2/110_delivery_record.md rename to devlog/_fin/260910_post249_round2/110_delivery_record.md diff --git a/devlog/_plan/260910_post249_round2/120_landing_gate_decision.md b/devlog/_fin/260910_post249_round2/120_landing_gate_decision.md similarity index 100% rename from devlog/_plan/260910_post249_round2/120_landing_gate_decision.md rename to devlog/_fin/260910_post249_round2/120_landing_gate_decision.md diff --git a/devlog/_plan/260910_post249_round2/_research/1711.md b/devlog/_fin/260910_post249_round2/_research/1711.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/1711.md rename to devlog/_fin/260910_post249_round2/_research/1711.md diff --git a/devlog/_plan/260910_post249_round2/_research/3666.md b/devlog/_fin/260910_post249_round2/_research/3666.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/3666.md rename to devlog/_fin/260910_post249_round2/_research/3666.md diff --git a/devlog/_plan/260910_post249_round2/_research/3859.md b/devlog/_fin/260910_post249_round2/_research/3859.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/3859.md rename to devlog/_fin/260910_post249_round2/_research/3859.md diff --git a/devlog/_plan/260910_post249_round2/_research/4038.md b/devlog/_fin/260910_post249_round2/_research/4038.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/4038.md rename to devlog/_fin/260910_post249_round2/_research/4038.md diff --git a/devlog/_plan/260910_post249_round2/_research/4075.md b/devlog/_fin/260910_post249_round2/_research/4075.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/4075.md rename to devlog/_fin/260910_post249_round2/_research/4075.md diff --git a/devlog/_plan/260910_post249_round2/_research/4129.md b/devlog/_fin/260910_post249_round2/_research/4129.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/4129.md rename to devlog/_fin/260910_post249_round2/_research/4129.md diff --git a/devlog/_plan/260910_post249_round2/_research/4141.md b/devlog/_fin/260910_post249_round2/_research/4141.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/4141.md rename to devlog/_fin/260910_post249_round2/_research/4141.md diff --git a/devlog/_plan/260910_post249_round2/_research/4148.md b/devlog/_fin/260910_post249_round2/_research/4148.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/4148.md rename to devlog/_fin/260910_post249_round2/_research/4148.md diff --git a/devlog/_fin/260910_post249_round2/_research/_audit.md b/devlog/_fin/260910_post249_round2/_research/_audit.md new file mode 100644 index 00000000000..e42e788f62e --- /dev/null +++ b/devlog/_fin/260910_post249_round2/_research/_audit.md @@ -0,0 +1,30 @@ +1. **BLOCKER** [000_plan.md:17](devlog/_fin/260910_post249_round2/000_plan.md) vs the decade docs: the round claims “Eight issues, all selected because the fix is mechanical and needs no maintainer policy judgment.” Three lane docs contradict that on their face: [040_a3_1711_zero_credit_catalog.md:3](devlog/_fin/260910_post249_round2/040_a3_1711_zero_credit_catalog.md) “Scope is pending a user decision”; [060_b1_4038_decode_rate.md:3](devlog/_fin/260910_post249_round2/060_b1_4038_decode_rate.md) “This one is pending a user decision”; [080_b3_3859_email_mask_toggle.md:3](devlog/_fin/260910_post249_round2/080_b3_3859_email_mask_toggle.md) “Surface choice is pending a user decision.” Their `_research` files mark the same forks as `POLICY (not mechanical)` ([_research/1711.md:39](devlog/_fin/260910_post249_round2/_research/1711.md), [_research/4038.md:46](devlog/_fin/260910_post249_round2/_research/4038.md), [_research/3859.md:32](devlog/_fin/260910_post249_round2/_research/3859.md)). + +2. **BLOCKER** [030_a2_4148_claude_system_hoist.md:17](devlog/_fin/260910_post249_round2/030_a2_4148_claude_system_hoist.md): `src/responses/parser.ts:204-206` is cited as `systemPrompt.push(data.instructions)`. Those lines are the `context_compaction` encrypted-content path. Instructions are consumed at `parser.ts:144-145`. The same wrong span is in [_research/4148.md:23](devlog/_fin/260910_post249_round2/_research/4148.md). `parser.ts:246-250` and `:253-258` are correct. + +3. **SHOULD-FIX** [020_a1_4129_shadow_combo_failover.md:14](devlog/_fin/260910_post249_round2/020_a1_4129_shadow_combo_failover.md): `core.ts:2600` is cited as the `while (pick)` / `advanceComboAfterFailure` loop. Line 2600 is `export async function handleComboResponses`. The loop is at `:2798`; `advanceComboAfterFailure` is at `:3056`. Other 4129 anchors (`request.ts:20`, `core.ts:3306`, `:3480-3512`, `router.ts:674`, `resolve.ts:418`, `shadow-call.ts:70`/`:88`, `failover.ts:468`) match. + +4. **SHOULD-FIX** [040_a3_1711_zero_credit_catalog.md:55](devlog/_fin/260910_post249_round2/040_a3_1711_zero_credit_catalog.md): `comboQuotaState` is cited at `gui/src/combo-workspace-data.ts:369-411`. Those lines are `quotaStateFromReport` (the `remaining <= 0` without `percent >= 100` check is `:407`). `comboQuotaState` is at `:437-456`. Research splits this correctly in [_research/1711.md:27](devlog/_fin/260910_post249_round2/_research/1711.md) (`433-456`) vs [:45](devlog/_fin/260910_post249_round2/_research/1711.md) (`369-411`). The rest of the 1711 source anchors (`sync.ts:315`/`347`/`414`/`641`/`961`/`1181-1184`, `parsing.ts:96-149`, `resolve.ts:64-70`/`78-92`, `provider-fetch.ts:2067-2106`, `index.ts:1574-1598`) match. + +5. Remaining spot-checks that **do** point at the claimed code (no finding): 4141 `service.ts:2296-2324`/`3129-3131`/`919-921`, `service.test.ts:3141-3145`; 4038 `cost.ts:655-661`, `shared.ts:99-113`, `Logs.tsx:273-279`; 3666 `provider-fetch.ts:1404`/`1468`, `Models.tsx:1411` (search inside `renderGroup` at `:1386`); 3859 `privacy.ts:1-11`, `auth-api.ts:367`/`380`/`2011`/`3045`, `oauth/index.ts:1808`/`1815`/`1835`, `layout.json:958`; 4075 `Models.tsx:1410`/`1450-1458`/`1650-1651`, `registry.ts:1978`, `initial-model-selection.test.ts:278-285`. + +6. **BLOCKER** [050_a4_4141_launchctl_bootout.md:25](devlog/_fin/260910_post249_round2/050_a4_4141_launchctl_bootout.md): auto-`bootout` is presented as the chosen mechanical fix. [_research/4141.md:26-28](devlog/_fin/260910_post249_round2/_research/4141.md) labels “Auto-bootout vs today’s hint-only throw” as `POLICY (not mechanical)` because it kills the live gui job. The decade doc lists other policy deferrals (`stopLaunchd`, `startLaunchd`, `statusLaunchd`) but not this one. + +7. **SHOULD-FIX** [030_a2_4148_claude_system_hoist.md:40](devlog/_fin/260910_post249_round2/030_a2_4148_claude_system_hoist.md): “all in-messages system messages become developer items” is a `Scope decision`, which is honest locally, but [_research/4148.md:40-42](devlog/_fin/260910_post249_round2/_research/4148.md) marked that exact fork as POLICY. Combined with finding 1, the round still treats #4148 as mechanical. 4075 correctly keeps registry `liveModels` and pending-finalize out of the PR ([090_b4_4075_gemini_setup_ux.md:41](devlog/_fin/260910_post249_round2/090_b4_4075_gemini_setup_ux.md)). 3666’s fail-closed defaults are labeled “Decided defaults” ([070_b2_3666_free_model_filter.md:42](devlog/_fin/260910_post249_round2/070_b2_3666_free_model_filter.md)), matching [_research/3666.md:39-45](devlog/_fin/260910_post249_round2/_research/3666.md). + +8. **BLOCKER** [010_lane_split.md:10](devlog/_fin/260910_post249_round2/010_lane_split.md) / [:24-26](devlog/_fin/260910_post249_round2/010_lane_split.md): write sets are not disjoint, and #3666 is not a GUI-only reader. + + Shared files both lanes would edit: + + - `src/codex/catalog/parsing.ts` (`CatalogModel`): #1711 needs a served-row field; #3666 adds `pricingStatus` ([070_b2_3666_free_model_filter.md:30](devlog/_fin/260910_post249_round2/070_b2_3666_free_model_filter.md)). + - `src/codex/catalog/provider-fetch.ts`: #3666 writes `catalogHintsFromModelsApiItem`; #1711’s stamp/filter constraints live in the same file (`filterCatalogVisibleModels` at `:2067`). + - `gui/` if #1711 follows its own recommendation to “ship the field plus the Dashboard” ([040_a3_1711_zero_credit_catalog.md:37](devlog/_fin/260910_post249_round2/040_a3_1711_zero_credit_catalog.md)), colliding with #3666/`Models.tsx` and #4075. + - `scripts/test-layout/layout.json` and `tests/fixtures/test-layout-expected.json`: new tests from #1711 (`catalog-zero-credit-picker.test.ts`) and Lane B (`catalog-free-pricing-status.test.ts` and/or `models-discovery-failed-hint.test.ts`). + + 010 also misnames Lane A test dirs (`tests/claude/`, `tests/catalog/`); the actual homes are `tests/claude-integration/` and `tests/codex-integration/`, and #4129’s test is `tests/responses/`. + +9. **NOTE** test-layout mapping is otherwise right. `catalog-*` seeds to `codex-integration` ([scripts/test-layout/layout.json:36](scripts/test-layout/layout.json)); `models-*` seeds to `gui` (`:83`); `responses-shadow-intercept.test.ts` is already explicit (`:1070`); `privacy-mask-account.test.ts` is already explicit (`:958`). 020/030/050/060/080 correctly say “no new layout entry” when extending an existing file. 040/070/090 correctly require both `layout.json` `explicit` and `tests/fixtures/test-layout-expected.json` for new files. 070’s optional GUI file `tests/gui/models-free-filter.test.ts` (from research) would need the same pair if created. + +10. **NOTE** privacy: no non-`example.com` / `example.test` / `test.com` / `*.test` emails, no token-shaped secrets. `/Users/jun/...` links appear throughout `_research/*.md`; `privacy-scan` allows maintainer username `jun` under `devlog/` ([scripts/privacy-scan.ts:27](scripts/privacy-scan.ts), `:150`). + +**FAIL** diff --git a/devlog/_plan/260910_post249_round2/_research/_audit_pr4153.md b/devlog/_fin/260910_post249_round2/_research/_audit_pr4153.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/_audit_pr4153.md rename to devlog/_fin/260910_post249_round2/_research/_audit_pr4153.md diff --git a/devlog/_plan/260910_post249_round2/_research/_audit_wp2.md b/devlog/_fin/260910_post249_round2/_research/_audit_wp2.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/_audit_wp2.md rename to devlog/_fin/260910_post249_round2/_research/_audit_wp2.md diff --git a/devlog/_plan/260910_post249_round2/_research/_audit_wp3.md b/devlog/_fin/260910_post249_round2/_research/_audit_wp3.md similarity index 97% rename from devlog/_plan/260910_post249_round2/_research/_audit_wp3.md rename to devlog/_fin/260910_post249_round2/_research/_audit_wp3.md index 8217a9f9543..7b8a64bf179 100644 --- a/devlog/_plan/260910_post249_round2/_research/_audit_wp3.md +++ b/devlog/_fin/260910_post249_round2/_research/_audit_wp3.md @@ -1,4 +1,4 @@ -Read-only audit of #4156, #4158, and #4160 against `devlog/_plan/260910_post249_round2/`. Local product tests were not run. +Read-only audit of #4156, #4158, and #4160 against `devlog/_fin/260910_post249_round2/`. Local product tests were not run. ## #4156 — #3666 free-only filter diff --git a/devlog/_plan/260910_post249_round2/_research/_audit_wp3b.md b/devlog/_fin/260910_post249_round2/_research/_audit_wp3b.md similarity index 100% rename from devlog/_plan/260910_post249_round2/_research/_audit_wp3b.md rename to devlog/_fin/260910_post249_round2/_research/_audit_wp3b.md diff --git a/devlog/_plan/260910_readme_i18n_parity/000_plan.md b/devlog/_fin/260910_readme_i18n_parity/000_plan.md similarity index 100% rename from devlog/_plan/260910_readme_i18n_parity/000_plan.md rename to devlog/_fin/260910_readme_i18n_parity/000_plan.md diff --git a/devlog/_plan/260910_readme_i18n_parity/010_phase1_parity_guard.md b/devlog/_fin/260910_readme_i18n_parity/010_phase1_parity_guard.md similarity index 100% rename from devlog/_plan/260910_readme_i18n_parity/010_phase1_parity_guard.md rename to devlog/_fin/260910_readme_i18n_parity/010_phase1_parity_guard.md diff --git a/devlog/_plan/260910_readme_i18n_parity/020_phase2_locale_resync.md b/devlog/_fin/260910_readme_i18n_parity/020_phase2_locale_resync.md similarity index 100% rename from devlog/_plan/260910_readme_i18n_parity/020_phase2_locale_resync.md rename to devlog/_fin/260910_readme_i18n_parity/020_phase2_locale_resync.md diff --git a/devlog/_plan/260910_readme_i18n_parity/030_phase3_delivery.md b/devlog/_fin/260910_readme_i18n_parity/030_phase3_delivery.md similarity index 100% rename from devlog/_plan/260910_readme_i18n_parity/030_phase3_delivery.md rename to devlog/_fin/260910_readme_i18n_parity/030_phase3_delivery.md diff --git a/devlog/_plan/260911_account_pool_unification/000_plan.md b/devlog/_fin/260911_account_pool_unification/000_plan.md similarity index 99% rename from devlog/_plan/260911_account_pool_unification/000_plan.md rename to devlog/_fin/260911_account_pool_unification/000_plan.md index 203c540c424..2498dfe2528 100644 --- a/devlog/_plan/260911_account_pool_unification/000_plan.md +++ b/devlog/_fin/260911_account_pool_unification/000_plan.md @@ -70,7 +70,7 @@ Recorded during the 2026-09-11 interview (session tracker rounds 1-5): - `privacy:scan` must stay green. - Existing Codex and Anthropic pool behavior must not regress; they migrate onto the shared layer rather than being rewritten in place. -- **Lane ownership.** `devlog/_plan/260911_lane_dispatch_round/010_lane_partition.md` +- **Lane ownership.** `devlog/_fin/260911_lane_dispatch_round/010_lane_partition.md` is the authoritative ownership list for the multi-lane round in flight on `dev`, and lane L3 owns `src/codex/auth-api.ts`, `src/codex/routing.ts` and `src/types/config.ts`. Work-phases 1 and 2 need those files, so no implementation diff --git a/devlog/_plan/260911_account_pool_unification/010_phase1_manual_selection.md b/devlog/_fin/260911_account_pool_unification/010_phase1_manual_selection.md similarity index 100% rename from devlog/_plan/260911_account_pool_unification/010_phase1_manual_selection.md rename to devlog/_fin/260911_account_pool_unification/010_phase1_manual_selection.md diff --git a/devlog/_plan/260911_account_pool_unification/020_phase2_shared_kernel.md b/devlog/_fin/260911_account_pool_unification/020_phase2_shared_kernel.md similarity index 100% rename from devlog/_plan/260911_account_pool_unification/020_phase2_shared_kernel.md rename to devlog/_fin/260911_account_pool_unification/020_phase2_shared_kernel.md diff --git a/devlog/_plan/260911_account_pool_unification/030_phase3_cache_affinity.md b/devlog/_fin/260911_account_pool_unification/030_phase3_cache_affinity.md similarity index 100% rename from devlog/_plan/260911_account_pool_unification/030_phase3_cache_affinity.md rename to devlog/_fin/260911_account_pool_unification/030_phase3_cache_affinity.md diff --git a/devlog/_plan/260911_account_pool_unification/040_phase4_key_pool_strategy.md b/devlog/_fin/260911_account_pool_unification/040_phase4_key_pool_strategy.md similarity index 100% rename from devlog/_plan/260911_account_pool_unification/040_phase4_key_pool_strategy.md rename to devlog/_fin/260911_account_pool_unification/040_phase4_key_pool_strategy.md diff --git a/devlog/_plan/260911_account_pool_unification/050_phase5_surface_consolidation.md b/devlog/_fin/260911_account_pool_unification/050_phase5_surface_consolidation.md similarity index 100% rename from devlog/_plan/260911_account_pool_unification/050_phase5_surface_consolidation.md rename to devlog/_fin/260911_account_pool_unification/050_phase5_surface_consolidation.md diff --git a/devlog/_plan/260911_account_pool_unification/assets/wp5b-pool-settings.png b/devlog/_fin/260911_account_pool_unification/assets/wp5b-pool-settings.png similarity index 100% rename from devlog/_plan/260911_account_pool_unification/assets/wp5b-pool-settings.png rename to devlog/_fin/260911_account_pool_unification/assets/wp5b-pool-settings.png diff --git a/devlog/_plan/260911_catalog_presentation_and_effort_projection/000_plan.md b/devlog/_fin/260911_catalog_presentation_and_effort_projection/000_plan.md similarity index 99% rename from devlog/_plan/260911_catalog_presentation_and_effort_projection/000_plan.md rename to devlog/_fin/260911_catalog_presentation_and_effort_projection/000_plan.md index 179bdb55d45..5deb2e392d5 100644 --- a/devlog/_plan/260911_catalog_presentation_and_effort_projection/000_plan.md +++ b/devlog/_fin/260911_catalog_presentation_and_effort_projection/000_plan.md @@ -33,7 +33,7 @@ Evidence: `010_evidence.md`. Upstream issues: #4204 (efforts), #4213 (cards). | Non-goals | Proxying `wham/workspace-messages`. Changing image generation. Authoring card copy that upstream does not ship. Pushing to any remote. Clamping rungs other than `max`/`ultra` — the rest of the ladder keeps its current observed-runtime behaviour. | | Verifier | `bun test tests/codex-integration/codex-runtime.test.ts tests/codex-integration/catalog-go-exact-efforts.test.ts` — RUN, exit 0, 42 pass, and it reads `src/codex/runtime.ts` (`codex-runtime.test.ts:37` imports it; `:612` calls `effortClampAppliesToRuntime`). **That pair is sufficient for Phase 1 and NOT sufficient for Phase 2** — `catalog-go-exact-efforts.test.ts` pins construction, never the clamp. The gate that observes Phase 2 is `bun test tests/codex-integration/codex-catalog.test.ts tests/codex-integration/reserve-catalog.test.ts tests/clients/client-catalog-compatibility.test.ts` (see `030_test_impact.md` for the exact test names that must invert). NOT RUN at plan time — inverting them is B's work, so a pass today would prove nothing. Phase 3 has no gate until its test exists; that acceptance row is human review. | | Stop condition | ~~Plan-only~~ Superseded 2026-09-11 (second session): the user authorised the full PABCD cycle. This cycle ends at D with Phases 1, 2 and 4 built and verified. Phase 3 stays withdrawn (GAP-2). | -| Memory artifact | This unit directory: `devlog/_plan/260911_catalog_presentation_and_effort_projection/`. | +| Memory artifact | This unit directory: `devlog/_fin/260911_catalog_presentation_and_effort_projection/`. | | Expected terminal outcomes | Success: Phases 1, 2 and 4 land on `codex/260911-clamp-expiry` with their gates green. Resolved: GAP-1 (CLAMP-04 ships — see `050_revalidation.md`). Unresolved: GAP-2/GAP-3 in `040_open_gaps.md` are not closed by this cycle. Blocked: Phase 3 stays blocked on a live account-roster probe that only the user can authorise. | | Escalation condition | The account-roster probe needs a real ChatGPT token; main does not take it. CLAMP-04 changes the meaning of an active clamp and inverts diagnostic tests the plan currently promises to keep green — that contradiction goes to the user, not to B. Reserve deletion is no longer an escalation: CLAMP-05 decided it. | diff --git a/devlog/_plan/260911_catalog_presentation_and_effort_projection/010_evidence.md b/devlog/_fin/260911_catalog_presentation_and_effort_projection/010_evidence.md similarity index 100% rename from devlog/_plan/260911_catalog_presentation_and_effort_projection/010_evidence.md rename to devlog/_fin/260911_catalog_presentation_and_effort_projection/010_evidence.md diff --git a/devlog/_plan/260911_catalog_presentation_and_effort_projection/020_architecture_dispositions.md b/devlog/_fin/260911_catalog_presentation_and_effort_projection/020_architecture_dispositions.md similarity index 100% rename from devlog/_plan/260911_catalog_presentation_and_effort_projection/020_architecture_dispositions.md rename to devlog/_fin/260911_catalog_presentation_and_effort_projection/020_architecture_dispositions.md diff --git a/devlog/_plan/260911_catalog_presentation_and_effort_projection/030_test_impact.md b/devlog/_fin/260911_catalog_presentation_and_effort_projection/030_test_impact.md similarity index 100% rename from devlog/_plan/260911_catalog_presentation_and_effort_projection/030_test_impact.md rename to devlog/_fin/260911_catalog_presentation_and_effort_projection/030_test_impact.md diff --git a/devlog/_plan/260911_catalog_presentation_and_effort_projection/040_open_gaps.md b/devlog/_fin/260911_catalog_presentation_and_effort_projection/040_open_gaps.md similarity index 100% rename from devlog/_plan/260911_catalog_presentation_and_effort_projection/040_open_gaps.md rename to devlog/_fin/260911_catalog_presentation_and_effort_projection/040_open_gaps.md diff --git a/devlog/_plan/260911_catalog_presentation_and_effort_projection/050_revalidation.md b/devlog/_fin/260911_catalog_presentation_and_effort_projection/050_revalidation.md similarity index 100% rename from devlog/_plan/260911_catalog_presentation_and_effort_projection/050_revalidation.md rename to devlog/_fin/260911_catalog_presentation_and_effort_projection/050_revalidation.md diff --git a/devlog/_plan/260911_catalog_presentation_and_effort_projection/060_done.md b/devlog/_fin/260911_catalog_presentation_and_effort_projection/060_done.md similarity index 100% rename from devlog/_plan/260911_catalog_presentation_and_effort_projection/060_done.md rename to devlog/_fin/260911_catalog_presentation_and_effort_projection/060_done.md diff --git a/devlog/_plan/260911_deepseek_v41_transition/000_plan.md b/devlog/_fin/260911_deepseek_v41_transition/000_plan.md similarity index 98% rename from devlog/_plan/260911_deepseek_v41_transition/000_plan.md rename to devlog/_fin/260911_deepseek_v41_transition/000_plan.md index 9c2493b74aa..48f3d6b8b1a 100644 --- a/devlog/_plan/260911_deepseek_v41_transition/000_plan.md +++ b/devlog/_fin/260911_deepseek_v41_transition/000_plan.md @@ -14,7 +14,7 @@ DeepSeek가 2026-09-10에 V4.1-Flash를 내면서 V4 계열의 이름이 한 번 | Non-goals | 새 사용자 config 필드, 어댑터 와이어 동작 변경, main/preview 승격, 릴리스, 생성 메타데이터 수작업 편집 | | Verifier | `bun test` 영향 도메인, `bun run typecheck`, `bun run privacy:scan`, 머지 전 exact-head CI | | Stop condition | 두 PR과 이번 변경이 dev에 머지된 시점 | -| Memory artifact | `devlog/_plan/260911_deepseek_v41_transition/` | +| Memory artifact | `devlog/_fin/260911_deepseek_v41_transition/` | | Expected terminal outcomes | DONE = 머지 완료. BLOCKED = CI가 이 변경과 무관한 이유로 반복 실패하거나 머지 권한이 거부될 때 | | Escalation condition | 사용자가 머지를 명시 승인했다. main/preview 승격과 릴리스는 별도 승인 필요 | | Resource bounds | 쓰기 범위: `src/`, `tests/`, `docs-site/`, 이 플랜 유닛. 전체 스위트는 사용자 지시로 로컬에서 돌리지 않고 CI에 위임한다 | diff --git a/devlog/_plan/260911_deepseek_v41_transition/001_evidence.md b/devlog/_fin/260911_deepseek_v41_transition/001_evidence.md similarity index 100% rename from devlog/_plan/260911_deepseek_v41_transition/001_evidence.md rename to devlog/_fin/260911_deepseek_v41_transition/001_evidence.md diff --git a/devlog/_plan/260911_deepseek_v41_transition/002_inventory.md b/devlog/_fin/260911_deepseek_v41_transition/002_inventory.md similarity index 100% rename from devlog/_plan/260911_deepseek_v41_transition/002_inventory.md rename to devlog/_fin/260911_deepseek_v41_transition/002_inventory.md diff --git a/devlog/_plan/260911_deepseek_v41_transition/010_phase1_pr4258.md b/devlog/_fin/260911_deepseek_v41_transition/010_phase1_pr4258.md similarity index 100% rename from devlog/_plan/260911_deepseek_v41_transition/010_phase1_pr4258.md rename to devlog/_fin/260911_deepseek_v41_transition/010_phase1_pr4258.md diff --git a/devlog/_plan/260911_deepseek_v41_transition/020_phase2_v41_rollout.md b/devlog/_fin/260911_deepseek_v41_transition/020_phase2_v41_rollout.md similarity index 100% rename from devlog/_plan/260911_deepseek_v41_transition/020_phase2_v41_rollout.md rename to devlog/_fin/260911_deepseek_v41_transition/020_phase2_v41_rollout.md diff --git a/devlog/_plan/260911_deepseek_v41_transition/030_phase3_v4pro_removal.md b/devlog/_fin/260911_deepseek_v41_transition/030_phase3_v4pro_removal.md similarity index 100% rename from devlog/_plan/260911_deepseek_v41_transition/030_phase3_v4pro_removal.md rename to devlog/_fin/260911_deepseek_v41_transition/030_phase3_v4pro_removal.md diff --git a/devlog/_plan/260911_deepseek_v41_transition/040_phase4_merge.md b/devlog/_fin/260911_deepseek_v41_transition/040_phase4_merge.md similarity index 100% rename from devlog/_plan/260911_deepseek_v41_transition/040_phase4_merge.md rename to devlog/_fin/260911_deepseek_v41_transition/040_phase4_merge.md diff --git a/devlog/_plan/260911_devin_two_providers/001_plan.md b/devlog/_fin/260911_devin_two_providers/001_plan.md similarity index 100% rename from devlog/_plan/260911_devin_two_providers/001_plan.md rename to devlog/_fin/260911_devin_two_providers/001_plan.md diff --git a/devlog/_plan/260911_devin_two_providers/002_audit.md b/devlog/_fin/260911_devin_two_providers/002_audit.md similarity index 100% rename from devlog/_plan/260911_devin_two_providers/002_audit.md rename to devlog/_fin/260911_devin_two_providers/002_audit.md diff --git a/devlog/_plan/260911_devin_two_providers/003_live_evidence.md b/devlog/_fin/260911_devin_two_providers/003_live_evidence.md similarity index 100% rename from devlog/_plan/260911_devin_two_providers/003_live_evidence.md rename to devlog/_fin/260911_devin_two_providers/003_live_evidence.md diff --git a/devlog/_plan/260911_devin_two_providers/004_devin_cli_split.md b/devlog/_fin/260911_devin_two_providers/004_devin_cli_split.md similarity index 100% rename from devlog/_plan/260911_devin_two_providers/004_devin_cli_split.md rename to devlog/_fin/260911_devin_two_providers/004_devin_cli_split.md diff --git a/devlog/_plan/260911_hub_single_port/010_launchd_repair.md b/devlog/_fin/260911_hub_single_port/010_launchd_repair.md similarity index 100% rename from devlog/_plan/260911_hub_single_port/010_launchd_repair.md rename to devlog/_fin/260911_hub_single_port/010_launchd_repair.md diff --git a/devlog/_plan/260911_hub_single_port/020_loopback_companion.md b/devlog/_fin/260911_hub_single_port/020_loopback_companion.md similarity index 99% rename from devlog/_plan/260911_hub_single_port/020_loopback_companion.md rename to devlog/_fin/260911_hub_single_port/020_loopback_companion.md index 8ee9d64bf21..ab1b8190259 100644 --- a/devlog/_plan/260911_hub_single_port/020_loopback_companion.md +++ b/devlog/_fin/260911_hub_single_port/020_loopback_companion.md @@ -1,6 +1,6 @@ # 020 — PR2: same-port loopback companion, honest hub-gate messages -Unit: `devlog/_plan/260911_hub_single_port`. Stack position 2 of 4 (PR1 = launchd repair, +Unit: `devlog/_fin/260911_hub_single_port`. Stack position 2 of 4 (PR1 = launchd repair, PR3 = hub token UX, PR4 = docs/skill). Branch `codex/260911-l4-hub-loopback-companion`, based on `dev` = `babb76449` (`Merge pull request #4240 … codex/260911-l4-client-catalog`); it will be rebased onto PR1's branch. Issue: lidge-jun/opencodex#4236 (follow-ups 1 and 2, diff --git a/devlog/_plan/260911_hub_single_port/030_hub_local_clients.md b/devlog/_fin/260911_hub_single_port/030_hub_local_clients.md similarity index 99% rename from devlog/_plan/260911_hub_single_port/030_hub_local_clients.md rename to devlog/_fin/260911_hub_single_port/030_hub_local_clients.md index a797a24b044..c1200c4672a 100644 --- a/devlog/_plan/260911_hub_single_port/030_hub_local_clients.md +++ b/devlog/_fin/260911_hub_single_port/030_hub_local_clients.md @@ -1,6 +1,6 @@ # 030 — PR3: the hub's own local clients, two destination contracts -Unit: `devlog/_plan/260911_hub_single_port`. Stack position 3 of 4. Branch +Unit: `devlog/_fin/260911_hub_single_port`. Stack position 3 of 4. Branch `codex/260911-l4-hub-local-clients`, based on `codex/260911-l4-hub-loopback-companion` (= `dev` + PR1 launchd repair + PR2 loopback companion). That base gained a review fix (`0aca6afe4`, hub-gate conjunction + every all-zero hostname spelling) while this unit was being diff --git a/devlog/_plan/260911_hub_single_port/040_hub_token_ux.md b/devlog/_fin/260911_hub_single_port/040_hub_token_ux.md similarity index 99% rename from devlog/_plan/260911_hub_single_port/040_hub_token_ux.md rename to devlog/_fin/260911_hub_single_port/040_hub_token_ux.md index 59d04ab9fa3..5ed04581657 100644 --- a/devlog/_plan/260911_hub_single_port/040_hub_token_ux.md +++ b/devlog/_fin/260911_hub_single_port/040_hub_token_ux.md @@ -1,6 +1,6 @@ # 040 — PR4: data-plane token provisioning, `ocx hub invite`, the status hub block -Unit: `devlog/_plan/260911_hub_single_port`. Stack position 4 of 5 as actually built (PR1 launchd +Unit: `devlog/_fin/260911_hub_single_port`. Stack position 4 of 5 as actually built (PR1 launchd repair, PR2 same-port loopback companion, PR3 Claude/local-client destinations — written concurrently by another agent — this one, then the docs/skill PR). Branch `codex/260911-l4-hub-token-ux`, rebased onto `codex/260911-l4-hub-loopback-companion` = @@ -11,7 +11,7 @@ rebased tree, and the rebase was clean (no shared files). Issue: lidge-jun/openc **Base discrepancy, recorded because it affects review.** The assignment described the base as "dev + PR1 launchd fix + PR2 loopback companion". `git log babb76449..HEAD` on that branch shows only the six PR2 commits; `src/service.ts` is untouched by it, and no -`devlog/_plan/260911_hub_single_port/010_launchd_repair.md` exists. So PR1 is **not** in this +`devlog/_fin/260911_hub_single_port/010_launchd_repair.md` exists. So PR1 is **not** in this branch's ancestry, and everything below was written and verified against dev + PR2 only. The `src/service.ts` hunks here are all inside `assertNotAdminToken` / `assertServiceAuthEnvironment` / `writeServiceApiTokenFile`, which the PR1 description (macOS diff --git a/devlog/_plan/260911_hub_single_port/050_docs_skill.md b/devlog/_fin/260911_hub_single_port/050_docs_skill.md similarity index 99% rename from devlog/_plan/260911_hub_single_port/050_docs_skill.md rename to devlog/_fin/260911_hub_single_port/050_docs_skill.md index bfbce5e7925..55bb138c35d 100644 --- a/devlog/_plan/260911_hub_single_port/050_docs_skill.md +++ b/devlog/_fin/260911_hub_single_port/050_docs_skill.md @@ -1,6 +1,6 @@ # 050 — PR5: docs (en + ko), the `ocx` skill, and the help copy -Unit: `devlog/_plan/260911_hub_single_port`. Stack position 5 of 5. Branch +Unit: `devlog/_fin/260911_hub_single_port`. Stack position 5 of 5. Branch `codex/260911-l7-hub-docs-skill`, on `codex/260911-l4-hub-token-ux` = `b26eee311` (`docs(devlog): record the PR4 review round`), which carries PR1 (launchd repair), PR2 (loopback companion), PR3 (hub local clients) and PR4 (hub token UX). Issue: lidge-jun/opencodex#4236. The diff --git a/devlog/_plan/260911_hub_single_port/060_client_hub_state.md b/devlog/_fin/260911_hub_single_port/060_client_hub_state.md similarity index 99% rename from devlog/_plan/260911_hub_single_port/060_client_hub_state.md rename to devlog/_fin/260911_hub_single_port/060_client_hub_state.md index 6c4bf435535..ba2d2a6a953 100644 --- a/devlog/_plan/260911_hub_single_port/060_client_hub_state.md +++ b/devlog/_fin/260911_hub_single_port/060_client_hub_state.md @@ -1,6 +1,6 @@ # 060 — PR6: a connected client reports the hub's state, not its own -Unit: `devlog/_plan/260911_hub_single_port`. Stack position 6, branch +Unit: `devlog/_fin/260911_hub_single_port`. Stack position 6, branch `codex/260911-l4-client-hub-state`, based on `codex/260911-l4-hub-token-ux` = `8c277294c` (`test(service): drop the installLaunchd import the restack left unused`), so PR1 launchd repair, PR2 loopback companion, PR3 hub local clients and PR4 hub token UX are all in ancestry. Sibling of diff --git a/devlog/_plan/260911_l1_responses_core/000_packet.md b/devlog/_fin/260911_l1_responses_core/000_packet.md similarity index 98% rename from devlog/_plan/260911_l1_responses_core/000_packet.md rename to devlog/_fin/260911_l1_responses_core/000_packet.md index fec95cdedb1..8c1db50512e 100644 --- a/devlog/_plan/260911_l1_responses_core/000_packet.md +++ b/devlog/_fin/260911_l1_responses_core/000_packet.md @@ -1,6 +1,6 @@ # Dispatch packet — L1 (revision 5) -Round unit: `devlog/_plan/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). +Round unit: `devlog/_fin/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). Five audit rounds shaped this packet. The last one was a seven-lane feasibility check that asked whether each stack is implementable inside its owned paths; three lanes came back with gaps, and the fixes are folded here. `010_lane_partition.md` is the authoritative ownership list; `130_wp4_feasibility.md` records why each path was granted. diff --git a/devlog/_plan/260911_l2_catalog_provider/000_packet.md b/devlog/_fin/260911_l2_catalog_provider/000_packet.md similarity index 97% rename from devlog/_plan/260911_l2_catalog_provider/000_packet.md rename to devlog/_fin/260911_l2_catalog_provider/000_packet.md index 529a5f5e33c..bb0b181d192 100644 --- a/devlog/_plan/260911_l2_catalog_provider/000_packet.md +++ b/devlog/_fin/260911_l2_catalog_provider/000_packet.md @@ -1,6 +1,6 @@ # Dispatch packet — L2 (revision 5) -Round unit: `devlog/_plan/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). +Round unit: `devlog/_fin/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). Five audit rounds shaped this packet. The last one was a seven-lane feasibility check that asked whether each stack is implementable inside its owned paths; three lanes came back with gaps, and the fixes are folded here. `010_lane_partition.md` is the authoritative ownership list; `130_wp4_feasibility.md` records why each path was granted. diff --git a/devlog/_plan/260911_l2_catalog_provider/010_4201_quota_admission.md b/devlog/_fin/260911_l2_catalog_provider/010_4201_quota_admission.md similarity index 100% rename from devlog/_plan/260911_l2_catalog_provider/010_4201_quota_admission.md rename to devlog/_fin/260911_l2_catalog_provider/010_4201_quota_admission.md diff --git a/devlog/_plan/260911_l2_catalog_provider/020_flash_upstream_evidence.md b/devlog/_fin/260911_l2_catalog_provider/020_flash_upstream_evidence.md similarity index 100% rename from devlog/_plan/260911_l2_catalog_provider/020_flash_upstream_evidence.md rename to devlog/_fin/260911_l2_catalog_provider/020_flash_upstream_evidence.md diff --git a/devlog/_plan/260911_l3_account_pool/000_packet.md b/devlog/_fin/260911_l3_account_pool/000_packet.md similarity index 98% rename from devlog/_plan/260911_l3_account_pool/000_packet.md rename to devlog/_fin/260911_l3_account_pool/000_packet.md index 94123e6fe83..071aa7ae4ec 100644 --- a/devlog/_plan/260911_l3_account_pool/000_packet.md +++ b/devlog/_fin/260911_l3_account_pool/000_packet.md @@ -1,6 +1,6 @@ # Dispatch packet — L3 (revision 5) -Round unit: `devlog/_plan/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). +Round unit: `devlog/_fin/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). Five audit rounds shaped this packet. The last one was a seven-lane feasibility check that asked whether each stack is implementable inside its owned paths; three lanes came back with gaps, and the fixes are folded here. `010_lane_partition.md` is the authoritative ownership list; `130_wp4_feasibility.md` records why each path was granted. diff --git a/devlog/_plan/260911_l3_account_pool/010_wp1_4126_warmup.md b/devlog/_fin/260911_l3_account_pool/010_wp1_4126_warmup.md similarity index 100% rename from devlog/_plan/260911_l3_account_pool/010_wp1_4126_warmup.md rename to devlog/_fin/260911_l3_account_pool/010_wp1_4126_warmup.md diff --git a/devlog/_plan/260911_l3_account_pool/020_wp2_4212_attribution.md b/devlog/_fin/260911_l3_account_pool/020_wp2_4212_attribution.md similarity index 100% rename from devlog/_plan/260911_l3_account_pool/020_wp2_4212_attribution.md rename to devlog/_fin/260911_l3_account_pool/020_wp2_4212_attribution.md diff --git a/devlog/_plan/260911_l3_account_pool/030_wp3_4211_plan_exclusion.md b/devlog/_fin/260911_l3_account_pool/030_wp3_4211_plan_exclusion.md similarity index 100% rename from devlog/_plan/260911_l3_account_pool/030_wp3_4211_plan_exclusion.md rename to devlog/_fin/260911_l3_account_pool/030_wp3_4211_plan_exclusion.md diff --git a/devlog/_plan/260911_l4_service_cli/000_packet.md b/devlog/_fin/260911_l4_service_cli/000_packet.md similarity index 98% rename from devlog/_plan/260911_l4_service_cli/000_packet.md rename to devlog/_fin/260911_l4_service_cli/000_packet.md index 86dc8351a2d..26f2f5305e0 100644 --- a/devlog/_plan/260911_l4_service_cli/000_packet.md +++ b/devlog/_fin/260911_l4_service_cli/000_packet.md @@ -1,6 +1,6 @@ # Dispatch packet — L4 (revision 5) -Round unit: `devlog/_plan/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). +Round unit: `devlog/_fin/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). Five audit rounds shaped this packet. The last one was a seven-lane feasibility check that asked whether each stack is implementable inside its owned paths; three lanes came back with gaps, and the fixes are folded here. `010_lane_partition.md` is the authoritative ownership list; `130_wp4_feasibility.md` records why each path was granted. diff --git a/devlog/_plan/260911_l4_service_cli/010_wp1_pnpm_self_update.md b/devlog/_fin/260911_l4_service_cli/010_wp1_pnpm_self_update.md similarity index 100% rename from devlog/_plan/260911_l4_service_cli/010_wp1_pnpm_self_update.md rename to devlog/_fin/260911_l4_service_cli/010_wp1_pnpm_self_update.md diff --git a/devlog/_plan/260911_l4_service_cli/020_wp2_stop_refusal.md b/devlog/_fin/260911_l4_service_cli/020_wp2_stop_refusal.md similarity index 100% rename from devlog/_plan/260911_l4_service_cli/020_wp2_stop_refusal.md rename to devlog/_fin/260911_l4_service_cli/020_wp2_stop_refusal.md diff --git a/devlog/_plan/260911_l4_service_cli/030_wp3_client_catalog.md b/devlog/_fin/260911_l4_service_cli/030_wp3_client_catalog.md similarity index 100% rename from devlog/_plan/260911_l4_service_cli/030_wp3_client_catalog.md rename to devlog/_fin/260911_l4_service_cli/030_wp3_client_catalog.md diff --git a/devlog/_plan/260911_l5_integrations_io/000_packet.md b/devlog/_fin/260911_l5_integrations_io/000_packet.md similarity index 98% rename from devlog/_plan/260911_l5_integrations_io/000_packet.md rename to devlog/_fin/260911_l5_integrations_io/000_packet.md index 24f0fcd6ec4..b6adb970935 100644 --- a/devlog/_plan/260911_l5_integrations_io/000_packet.md +++ b/devlog/_fin/260911_l5_integrations_io/000_packet.md @@ -1,6 +1,6 @@ # Dispatch packet — L5 (revision 5) -Round unit: `devlog/_plan/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). +Round unit: `devlog/_fin/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). Five audit rounds shaped this packet. The last one was a seven-lane feasibility check that asked whether each stack is implementable inside its owned paths; three lanes came back with gaps, and the fixes are folded here. `010_lane_partition.md` is the authoritative ownership list; `130_wp4_feasibility.md` records why each path was granted. diff --git a/devlog/_plan/260911_l6_streaming_tools/000_packet.md b/devlog/_fin/260911_l6_streaming_tools/000_packet.md similarity index 97% rename from devlog/_plan/260911_l6_streaming_tools/000_packet.md rename to devlog/_fin/260911_l6_streaming_tools/000_packet.md index 45a0a023b49..f5133493529 100644 --- a/devlog/_plan/260911_l6_streaming_tools/000_packet.md +++ b/devlog/_fin/260911_l6_streaming_tools/000_packet.md @@ -1,6 +1,6 @@ # Dispatch packet — L6 (revision 5) -Round unit: `devlog/_plan/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). +Round unit: `devlog/_fin/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). Five audit rounds shaped this packet. The last one was a seven-lane feasibility check that asked whether each stack is implementable inside its owned paths; three lanes came back with gaps, and the fixes are folded here. `010_lane_partition.md` is the authoritative ownership list; `130_wp4_feasibility.md` records why each path was granted. diff --git a/devlog/_plan/260911_l6_streaming_tools/010_4191_ws_failure_classification.md b/devlog/_fin/260911_l6_streaming_tools/010_4191_ws_failure_classification.md similarity index 98% rename from devlog/_plan/260911_l6_streaming_tools/010_4191_ws_failure_classification.md rename to devlog/_fin/260911_l6_streaming_tools/010_4191_ws_failure_classification.md index f141f3ca56b..109352ebfbd 100644 --- a/devlog/_plan/260911_l6_streaming_tools/010_4191_ws_failure_classification.md +++ b/devlog/_fin/260911_l6_streaming_tools/010_4191_ws_failure_classification.md @@ -1,6 +1,6 @@ # 010 — #4191: classify the WebSocket failure instead of restating it -Unit: `devlog/_plan/260911_l6_streaming_tools`. Lane L6, work-phase 1. +Unit: `devlog/_fin/260911_l6_streaming_tools`. Lane L6, work-phase 1. Issue: [#4191](https://github.com/lidge-jun/opencodex/issues/4191). ## What the report actually contains diff --git a/devlog/_plan/260911_l6_streaming_tools/020_4190_qoder_scaffold_guard.md b/devlog/_fin/260911_l6_streaming_tools/020_4190_qoder_scaffold_guard.md similarity index 98% rename from devlog/_plan/260911_l6_streaming_tools/020_4190_qoder_scaffold_guard.md rename to devlog/_fin/260911_l6_streaming_tools/020_4190_qoder_scaffold_guard.md index f24b36fd9b0..572aac12c82 100644 --- a/devlog/_plan/260911_l6_streaming_tools/020_4190_qoder_scaffold_guard.md +++ b/devlog/_fin/260911_l6_streaming_tools/020_4190_qoder_scaffold_guard.md @@ -1,6 +1,6 @@ # 020 — #4190: refuse vendor scaffolding on the qoder route -Unit: `devlog/_plan/260911_l6_streaming_tools`. Lane L6, work-phase 2. +Unit: `devlog/_fin/260911_l6_streaming_tools`. Lane L6, work-phase 2. Issue: [#4190](https://github.com/lidge-jun/opencodex/issues/4190). ## The contract that was being broken diff --git a/devlog/_plan/260911_l7_docs/000_packet.md b/devlog/_fin/260911_l7_docs/000_packet.md similarity index 97% rename from devlog/_plan/260911_l7_docs/000_packet.md rename to devlog/_fin/260911_l7_docs/000_packet.md index a7e38e9f18a..af9d4981396 100644 --- a/devlog/_plan/260911_l7_docs/000_packet.md +++ b/devlog/_fin/260911_l7_docs/000_packet.md @@ -1,6 +1,6 @@ # Dispatch packet — L7 (revision 5) -Round unit: `devlog/_plan/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). +Round unit: `devlog/_fin/260911_lane_dispatch_round` on `dev`. Base freeze: `origin/dev` `6d3ad12e3` (2.51.0). Five audit rounds shaped this packet. The last one was a seven-lane feasibility check that asked whether each stack is implementable inside its owned paths; three lanes came back with gaps, and the fixes are folded here. `010_lane_partition.md` is the authoritative ownership list; `130_wp4_feasibility.md` records why each path was granted. diff --git a/devlog/_plan/260911_l7_docs/010_roadmap.md b/devlog/_fin/260911_l7_docs/010_roadmap.md similarity index 100% rename from devlog/_plan/260911_l7_docs/010_roadmap.md rename to devlog/_fin/260911_l7_docs/010_roadmap.md diff --git a/devlog/_plan/260911_l7_docs/020_4215_wording.md b/devlog/_fin/260911_l7_docs/020_4215_wording.md similarity index 100% rename from devlog/_plan/260911_l7_docs/020_4215_wording.md rename to devlog/_fin/260911_l7_docs/020_4215_wording.md diff --git a/devlog/_plan/260911_l7_docs/030_4200_recipe.md b/devlog/_fin/260911_l7_docs/030_4200_recipe.md similarity index 100% rename from devlog/_plan/260911_l7_docs/030_4200_recipe.md rename to devlog/_fin/260911_l7_docs/030_4200_recipe.md diff --git a/devlog/_plan/260911_l7_docs/040_4215_delivery.md b/devlog/_fin/260911_l7_docs/040_4215_delivery.md similarity index 100% rename from devlog/_plan/260911_l7_docs/040_4215_delivery.md rename to devlog/_fin/260911_l7_docs/040_4215_delivery.md diff --git a/devlog/_plan/260911_l7_docs/050_4200_delivery.md b/devlog/_fin/260911_l7_docs/050_4200_delivery.md similarity index 100% rename from devlog/_plan/260911_l7_docs/050_4200_delivery.md rename to devlog/_fin/260911_l7_docs/050_4200_delivery.md diff --git a/devlog/_plan/260911_lane_dispatch_round/000_plan.md b/devlog/_fin/260911_lane_dispatch_round/000_plan.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/000_plan.md rename to devlog/_fin/260911_lane_dispatch_round/000_plan.md diff --git a/devlog/_plan/260911_lane_dispatch_round/010_lane_partition.md b/devlog/_fin/260911_lane_dispatch_round/010_lane_partition.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/010_lane_partition.md rename to devlog/_fin/260911_lane_dispatch_round/010_lane_partition.md diff --git a/devlog/_plan/260911_lane_dispatch_round/020_lane_packets.md b/devlog/_fin/260911_lane_dispatch_round/020_lane_packets.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/020_lane_packets.md rename to devlog/_fin/260911_lane_dispatch_round/020_lane_packets.md diff --git a/devlog/_plan/260911_lane_dispatch_round/030_audit_round1.md b/devlog/_fin/260911_lane_dispatch_round/030_audit_round1.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/030_audit_round1.md rename to devlog/_fin/260911_lane_dispatch_round/030_audit_round1.md diff --git a/devlog/_plan/260911_lane_dispatch_round/040_audit_round2.md b/devlog/_fin/260911_lane_dispatch_round/040_audit_round2.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/040_audit_round2.md rename to devlog/_fin/260911_lane_dispatch_round/040_audit_round2.md diff --git a/devlog/_plan/260911_lane_dispatch_round/050_audit_round3.md b/devlog/_fin/260911_lane_dispatch_round/050_audit_round3.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/050_audit_round3.md rename to devlog/_fin/260911_lane_dispatch_round/050_audit_round3.md diff --git a/devlog/_plan/260911_lane_dispatch_round/060_ledger.md b/devlog/_fin/260911_lane_dispatch_round/060_ledger.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/060_ledger.md rename to devlog/_fin/260911_lane_dispatch_round/060_ledger.md diff --git a/devlog/_plan/260911_lane_dispatch_round/070_dispatch_handoff.md b/devlog/_fin/260911_lane_dispatch_round/070_dispatch_handoff.md similarity index 92% rename from devlog/_plan/260911_lane_dispatch_round/070_dispatch_handoff.md rename to devlog/_fin/260911_lane_dispatch_round/070_dispatch_handoff.md index 402c4fb6ce6..cb79da61c0b 100644 --- a/devlog/_plan/260911_lane_dispatch_round/070_dispatch_handoff.md +++ b/devlog/_fin/260911_lane_dispatch_round/070_dispatch_handoff.md @@ -12,7 +12,7 @@ Paste the matching block into a new thread whose working directory is the lane w You are lane L1 of the 260911 dispatch round. Your worktree is ~/.codex/worktrees/260911-l1/opencodex, already on branch codex/260911-l1-responses-core, cut from origin/dev 6d3ad12e3. -Read devlog/_plan/260911_l1_responses_core/000_packet.md first and follow it exactly. It is your contract: +Read devlog/_fin/260911_l1_responses_core/000_packet.md first and follow it exactly. It is your contract: owned paths, the decisions already made for you, the rules, and the report format. Run $codexclaw:cxc-loop as HOTL for your stack, in this order: #4172 then #4176. @@ -31,7 +31,7 @@ is green, report and stop. You are lane L2 of the 260911 dispatch round. Your worktree is ~/.codex/worktrees/260911-l2/opencodex, already on branch codex/260911-l2-catalog-provider, cut from origin/dev 6d3ad12e3. -Read devlog/_plan/260911_l2_catalog_provider/000_packet.md first and follow it exactly. It is your contract: +Read devlog/_fin/260911_l2_catalog_provider/000_packet.md first and follow it exactly. It is your contract: owned paths, the decisions already made for you, the rules, and the report format. Run $codexclaw:cxc-loop as HOTL for your stack, in this order: #4201. @@ -50,7 +50,7 @@ is green, report and stop. You are lane L3 of the 260911 dispatch round. Your worktree is ~/.codex/worktrees/260911-l3/opencodex, already on branch codex/260911-l3-account-pool, cut from origin/dev 6d3ad12e3. -Read devlog/_plan/260911_l3_account_pool/000_packet.md first and follow it exactly. It is your contract: +Read devlog/_fin/260911_l3_account_pool/000_packet.md first and follow it exactly. It is your contract: owned paths, the decisions already made for you, the rules, and the report format. Run $codexclaw:cxc-loop as HOTL for your stack, in this order: #4126 then #4212 then #4211. @@ -69,7 +69,7 @@ is green, report and stop. You are lane L4 of the 260911 dispatch round. Your worktree is ~/.codex/worktrees/260911-l4/opencodex, already on branch codex/260911-l4-service-cli, cut from origin/dev 6d3ad12e3. -Read devlog/_plan/260911_l4_service_cli/000_packet.md first and follow it exactly. It is your contract: +Read devlog/_fin/260911_l4_service_cli/000_packet.md first and follow it exactly. It is your contract: owned paths, the decisions already made for you, the rules, and the report format. Run $codexclaw:cxc-loop as HOTL for your stack, in this order: #4202 then #4169 then #4204 then #4207. @@ -88,7 +88,7 @@ is green, report and stop. You are lane L5 of the 260911 dispatch round. Your worktree is ~/.codex/worktrees/260911-l5/opencodex, already on branch codex/260911-l5-integrations-io, cut from origin/dev 6d3ad12e3. -Read devlog/_plan/260911_l5_integrations_io/000_packet.md first and follow it exactly. It is your contract: +Read devlog/_fin/260911_l5_integrations_io/000_packet.md first and follow it exactly. It is your contract: owned paths, the decisions already made for you, the rules, and the report format. Run $codexclaw:cxc-loop as HOTL for your stack, in this order: #4197 then #4214. @@ -107,7 +107,7 @@ is green, report and stop. You are lane L6 of the 260911 dispatch round. Your worktree is ~/.codex/worktrees/260911-l6/opencodex, already on branch codex/260911-l6-streaming-tools, cut from origin/dev 6d3ad12e3. -Read devlog/_plan/260911_l6_streaming_tools/000_packet.md first and follow it exactly. It is your contract: +Read devlog/_fin/260911_l6_streaming_tools/000_packet.md first and follow it exactly. It is your contract: owned paths, the decisions already made for you, the rules, and the report format. Run $codexclaw:cxc-loop as HOTL for your stack, in this order: #4191 then #4190. @@ -126,7 +126,7 @@ is green, report and stop. You are lane L7 of the 260911 dispatch round. Your worktree is ~/.codex/worktrees/260911-l7/opencodex, already on branch codex/260911-l7-docs, cut from origin/dev 6d3ad12e3. -Read devlog/_plan/260911_l7_docs/000_packet.md first and follow it exactly. It is your contract: +Read devlog/_fin/260911_l7_docs/000_packet.md first and follow it exactly. It is your contract: owned paths, the decisions already made for you, the rules, and the report format. Run $codexclaw:cxc-loop as HOTL for your stack, in this order: #4215 then #4200. diff --git a/devlog/_plan/260911_lane_dispatch_round/080_wp2_publish_plan.md b/devlog/_fin/260911_lane_dispatch_round/080_wp2_publish_plan.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/080_wp2_publish_plan.md rename to devlog/_fin/260911_lane_dispatch_round/080_wp2_publish_plan.md diff --git a/devlog/_plan/260911_lane_dispatch_round/090_wp2_execution.md b/devlog/_fin/260911_lane_dispatch_round/090_wp2_execution.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/090_wp2_execution.md rename to devlog/_fin/260911_lane_dispatch_round/090_wp2_execution.md diff --git a/devlog/_plan/260911_lane_dispatch_round/100_wp3_plan.md b/devlog/_fin/260911_lane_dispatch_round/100_wp3_plan.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/100_wp3_plan.md rename to devlog/_fin/260911_lane_dispatch_round/100_wp3_plan.md diff --git a/devlog/_plan/260911_lane_dispatch_round/110_tracking_refresh.md b/devlog/_fin/260911_lane_dispatch_round/110_tracking_refresh.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/110_tracking_refresh.md rename to devlog/_fin/260911_lane_dispatch_round/110_tracking_refresh.md diff --git a/devlog/_plan/260911_lane_dispatch_round/120_wp4_plan.md b/devlog/_fin/260911_lane_dispatch_round/120_wp4_plan.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/120_wp4_plan.md rename to devlog/_fin/260911_lane_dispatch_round/120_wp4_plan.md diff --git a/devlog/_plan/260911_lane_dispatch_round/130_wp4_feasibility.md b/devlog/_fin/260911_lane_dispatch_round/130_wp4_feasibility.md similarity index 100% rename from devlog/_plan/260911_lane_dispatch_round/130_wp4_feasibility.md rename to devlog/_fin/260911_lane_dispatch_round/130_wp4_feasibility.md diff --git a/devlog/_plan/260911_ocx_login_codex_routing/000_plan.md b/devlog/_fin/260911_ocx_login_codex_routing/000_plan.md similarity index 100% rename from devlog/_plan/260911_ocx_login_codex_routing/000_plan.md rename to devlog/_fin/260911_ocx_login_codex_routing/000_plan.md diff --git a/devlog/_plan/260911_ocx_login_codex_routing/010_audit_round1.md b/devlog/_fin/260911_ocx_login_codex_routing/010_audit_round1.md similarity index 100% rename from devlog/_plan/260911_ocx_login_codex_routing/010_audit_round1.md rename to devlog/_fin/260911_ocx_login_codex_routing/010_audit_round1.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/000_plan.md b/devlog/_fin/260911_opencode_go_free_stabilization/000_plan.md similarity index 98% rename from devlog/_plan/260911_opencode_go_free_stabilization/000_plan.md rename to devlog/_fin/260911_opencode_go_free_stabilization/000_plan.md index 55d56096a1c..001ccd47c6d 100644 --- a/devlog/_plan/260911_opencode_go_free_stabilization/000_plan.md +++ b/devlog/_fin/260911_opencode_go_free_stabilization/000_plan.md @@ -14,7 +14,7 @@ OpenCode Zen 게이트웨이(go, zen, free)로 붙는 세 프리셋은 정적 `m | Non-goals | `src/providers/command-code-efforts.ts`(열린 PR #4258 소유), 어댑터 와이어 동작 변경, 새 사용자 config 필드, 라이브 업스트림 프로브가 필요한 주장, 무키 free 티어 정책 변경 | | Verifier | `bun test tests/providers/provider-registry-parity.test.ts`, `bun test tests/providers/opencode-go-deepseek.test.ts`, `bun test tests/adapters/openai/openai-chat-hardening.test.ts`, `bun run typecheck`. 신설 가드는 수정 전 실패를 먼저 확인한다 | | Stop condition | PR이 dev를 base로 열리고 템플릿 3개 섹션이 채워진 시점 | -| Memory artifact | `devlog/_plan/260911_opencode_go_free_stabilization/` | +| Memory artifact | `devlog/_fin/260911_opencode_go_free_stabilization/` | | Expected terminal outcomes | DONE = PR 게시 + 모든 검증 명령 green. BLOCKED = 업스트림 사실 확인이 필요해 근거 없이 시드할 수 없는 항목이 남을 때 | | Escalation condition | push 권한은 사용자가 이미 준 PR 게시로 한정한다. 머지·릴리스는 별도 승인. 라이브 프로브가 필요한 주장은 시드하지 않고 보고한다 | | Resource bounds | 도구: repo 읽기/쓰기, gh 읽기 + PR 생성, grok-4.6 서브에이전트. 쓰기 범위: `src/providers`, `src/types`, `tests/providers`, `docs-site`, 이 플랜 유닛. 벽시계: 사용자 세션 내 | diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/001_issue_triage.md b/devlog/_fin/260911_opencode_go_free_stabilization/001_issue_triage.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/001_issue_triage.md rename to devlog/_fin/260911_opencode_go_free_stabilization/001_issue_triage.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/002_cross_proxy_survey.md b/devlog/_fin/260911_opencode_go_free_stabilization/002_cross_proxy_survey.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/002_cross_proxy_survey.md rename to devlog/_fin/260911_opencode_go_free_stabilization/002_cross_proxy_survey.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/003_registry_gap_inventory.md b/devlog/_fin/260911_opencode_go_free_stabilization/003_registry_gap_inventory.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/003_registry_gap_inventory.md rename to devlog/_fin/260911_opencode_go_free_stabilization/003_registry_gap_inventory.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/004_audit_rounds.md b/devlog/_fin/260911_opencode_go_free_stabilization/004_audit_rounds.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/004_audit_rounds.md rename to devlog/_fin/260911_opencode_go_free_stabilization/004_audit_rounds.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/010_phase1_preset_structured_output.md b/devlog/_fin/260911_opencode_go_free_stabilization/010_phase1_preset_structured_output.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/010_phase1_preset_structured_output.md rename to devlog/_fin/260911_opencode_go_free_stabilization/010_phase1_preset_structured_output.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/020_phase2_preset_consistency_guard.md b/devlog/_fin/260911_opencode_go_free_stabilization/020_phase2_preset_consistency_guard.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/020_phase2_preset_consistency_guard.md rename to devlog/_fin/260911_opencode_go_free_stabilization/020_phase2_preset_consistency_guard.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/030_phase3_docs_and_pr.md b/devlog/_fin/260911_opencode_go_free_stabilization/030_phase3_docs_and_pr.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/030_phase3_docs_and_pr.md rename to devlog/_fin/260911_opencode_go_free_stabilization/030_phase3_docs_and_pr.md diff --git a/devlog/_plan/260911_opencode_go_free_stabilization/031_wp4_outcome.md b/devlog/_fin/260911_opencode_go_free_stabilization/031_wp4_outcome.md similarity index 100% rename from devlog/_plan/260911_opencode_go_free_stabilization/031_wp4_outcome.md rename to devlog/_fin/260911_opencode_go_free_stabilization/031_wp4_outcome.md diff --git a/devlog/_plan/260911_r2_merge_train/000_plan.md b/devlog/_fin/260911_r2_merge_train/000_plan.md similarity index 100% rename from devlog/_plan/260911_r2_merge_train/000_plan.md rename to devlog/_fin/260911_r2_merge_train/000_plan.md diff --git a/devlog/_plan/260911_r2_merge_train/010_phase1_pr4244.md b/devlog/_fin/260911_r2_merge_train/010_phase1_pr4244.md similarity index 100% rename from devlog/_plan/260911_r2_merge_train/010_phase1_pr4244.md rename to devlog/_fin/260911_r2_merge_train/010_phase1_pr4244.md diff --git a/devlog/_plan/260911_r2_merge_train/020_phase2_pr4248.md b/devlog/_fin/260911_r2_merge_train/020_phase2_pr4248.md similarity index 100% rename from devlog/_plan/260911_r2_merge_train/020_phase2_pr4248.md rename to devlog/_fin/260911_r2_merge_train/020_phase2_pr4248.md diff --git a/devlog/_plan/260911_r2_merge_train/030_phase3_pr4246.md b/devlog/_fin/260911_r2_merge_train/030_phase3_pr4246.md similarity index 100% rename from devlog/_plan/260911_r2_merge_train/030_phase3_pr4246.md rename to devlog/_fin/260911_r2_merge_train/030_phase3_pr4246.md diff --git a/devlog/_plan/260911_r2_merge_train/040_phase4_pr4247.md b/devlog/_fin/260911_r2_merge_train/040_phase4_pr4247.md similarity index 100% rename from devlog/_plan/260911_r2_merge_train/040_phase4_pr4247.md rename to devlog/_fin/260911_r2_merge_train/040_phase4_pr4247.md diff --git a/devlog/_plan/260911_ws_commit_boundary/000_plan.md b/devlog/_fin/260911_ws_commit_boundary/000_plan.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/000_plan.md rename to devlog/_fin/260911_ws_commit_boundary/000_plan.md diff --git a/devlog/_plan/260911_ws_commit_boundary/010_journey_evaluation.md b/devlog/_fin/260911_ws_commit_boundary/010_journey_evaluation.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/010_journey_evaluation.md rename to devlog/_fin/260911_ws_commit_boundary/010_journey_evaluation.md diff --git a/devlog/_plan/260911_ws_commit_boundary/020_design_record.md b/devlog/_fin/260911_ws_commit_boundary/020_design_record.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/020_design_record.md rename to devlog/_fin/260911_ws_commit_boundary/020_design_record.md diff --git a/devlog/_plan/260911_ws_commit_boundary/025_audit_round1.md b/devlog/_fin/260911_ws_commit_boundary/025_audit_round1.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/025_audit_round1.md rename to devlog/_fin/260911_ws_commit_boundary/025_audit_round1.md diff --git a/devlog/_plan/260911_ws_commit_boundary/030_wp2_plan.md b/devlog/_fin/260911_ws_commit_boundary/030_wp2_plan.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/030_wp2_plan.md rename to devlog/_fin/260911_ws_commit_boundary/030_wp2_plan.md diff --git a/devlog/_plan/260911_ws_commit_boundary/040_wp3_plan.md b/devlog/_fin/260911_ws_commit_boundary/040_wp3_plan.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/040_wp3_plan.md rename to devlog/_fin/260911_ws_commit_boundary/040_wp3_plan.md diff --git a/devlog/_plan/260911_ws_commit_boundary/045_wp4_plan.md b/devlog/_fin/260911_ws_commit_boundary/045_wp4_plan.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/045_wp4_plan.md rename to devlog/_fin/260911_ws_commit_boundary/045_wp4_plan.md diff --git a/devlog/_plan/260911_ws_commit_boundary/050_review.md b/devlog/_fin/260911_ws_commit_boundary/050_review.md similarity index 100% rename from devlog/_plan/260911_ws_commit_boundary/050_review.md rename to devlog/_fin/260911_ws_commit_boundary/050_review.md diff --git a/devlog/_plan/260912_audio_apis_stack/000_plan.md b/devlog/_fin/260912_audio_apis_stack/000_plan.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/000_plan.md rename to devlog/_fin/260912_audio_apis_stack/000_plan.md diff --git a/devlog/_plan/260912_audio_apis_stack/002_review_disposition.md b/devlog/_fin/260912_audio_apis_stack/002_review_disposition.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/002_review_disposition.md rename to devlog/_fin/260912_audio_apis_stack/002_review_disposition.md diff --git a/devlog/_plan/260912_audio_apis_stack/010_transcription.md b/devlog/_fin/260912_audio_apis_stack/010_transcription.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/010_transcription.md rename to devlog/_fin/260912_audio_apis_stack/010_transcription.md diff --git a/devlog/_plan/260912_audio_apis_stack/011_transcription_checks.md b/devlog/_fin/260912_audio_apis_stack/011_transcription_checks.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/011_transcription_checks.md rename to devlog/_fin/260912_audio_apis_stack/011_transcription_checks.md diff --git a/devlog/_plan/260912_audio_apis_stack/020_streaming_voice.md b/devlog/_fin/260912_audio_apis_stack/020_streaming_voice.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/020_streaming_voice.md rename to devlog/_fin/260912_audio_apis_stack/020_streaming_voice.md diff --git a/devlog/_plan/260912_audio_apis_stack/021_streaming_checks.md b/devlog/_fin/260912_audio_apis_stack/021_streaming_checks.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/021_streaming_checks.md rename to devlog/_fin/260912_audio_apis_stack/021_streaming_checks.md diff --git a/devlog/_plan/260912_audio_apis_stack/030_connections.md b/devlog/_fin/260912_audio_apis_stack/030_connections.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/030_connections.md rename to devlog/_fin/260912_audio_apis_stack/030_connections.md diff --git a/devlog/_plan/260912_audio_apis_stack/031_connections_checks.md b/devlog/_fin/260912_audio_apis_stack/031_connections_checks.md similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/031_connections_checks.md rename to devlog/_fin/260912_audio_apis_stack/031_connections_checks.md diff --git a/devlog/_plan/260912_audio_apis_stack/screenshots/audio-1440-light.png b/devlog/_fin/260912_audio_apis_stack/screenshots/audio-1440-light.png similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/screenshots/audio-1440-light.png rename to devlog/_fin/260912_audio_apis_stack/screenshots/audio-1440-light.png diff --git a/devlog/_plan/260912_audio_apis_stack/screenshots/audio-320-ko.png b/devlog/_fin/260912_audio_apis_stack/screenshots/audio-320-ko.png similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/screenshots/audio-320-ko.png rename to devlog/_fin/260912_audio_apis_stack/screenshots/audio-320-ko.png diff --git a/devlog/_plan/260912_audio_apis_stack/screenshots/audio-390-light.png b/devlog/_fin/260912_audio_apis_stack/screenshots/audio-390-light.png similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/screenshots/audio-390-light.png rename to devlog/_fin/260912_audio_apis_stack/screenshots/audio-390-light.png diff --git a/devlog/_plan/260912_audio_apis_stack/screenshots/transcription-layer-baseline.png b/devlog/_fin/260912_audio_apis_stack/screenshots/transcription-layer-baseline.png similarity index 100% rename from devlog/_plan/260912_audio_apis_stack/screenshots/transcription-layer-baseline.png rename to devlog/_fin/260912_audio_apis_stack/screenshots/transcription-layer-baseline.png diff --git a/devlog/_plan/260912_beginner_pdf/000_plan.md b/devlog/_fin/260912_beginner_pdf/000_plan.md similarity index 100% rename from devlog/_plan/260912_beginner_pdf/000_plan.md rename to devlog/_fin/260912_beginner_pdf/000_plan.md diff --git a/devlog/_plan/260912_cache_lane/000_plan.md b/devlog/_fin/260912_cache_lane/000_plan.md similarity index 100% rename from devlog/_plan/260912_cache_lane/000_plan.md rename to devlog/_fin/260912_cache_lane/000_plan.md diff --git a/devlog/_plan/260912_cache_lane/010_claim.md b/devlog/_fin/260912_cache_lane/010_claim.md similarity index 100% rename from devlog/_plan/260912_cache_lane/010_claim.md rename to devlog/_fin/260912_cache_lane/010_claim.md diff --git a/devlog/_plan/260912_cache_lane/020_affinity.md b/devlog/_fin/260912_cache_lane/020_affinity.md similarity index 100% rename from devlog/_plan/260912_cache_lane/020_affinity.md rename to devlog/_fin/260912_cache_lane/020_affinity.md diff --git a/devlog/_plan/260912_cache_lane/025_affinity_native.md b/devlog/_fin/260912_cache_lane/025_affinity_native.md similarity index 100% rename from devlog/_plan/260912_cache_lane/025_affinity_native.md rename to devlog/_fin/260912_cache_lane/025_affinity_native.md diff --git a/devlog/_plan/260912_cache_lane/026_affinity_adapt.md b/devlog/_fin/260912_cache_lane/026_affinity_adapt.md similarity index 100% rename from devlog/_plan/260912_cache_lane/026_affinity_adapt.md rename to devlog/_fin/260912_cache_lane/026_affinity_adapt.md diff --git a/devlog/_plan/260912_cache_lane/027_affinity_slot.md b/devlog/_fin/260912_cache_lane/027_affinity_slot.md similarity index 100% rename from devlog/_plan/260912_cache_lane/027_affinity_slot.md rename to devlog/_fin/260912_cache_lane/027_affinity_slot.md diff --git a/devlog/_plan/260912_cache_lane/030_prefix.md b/devlog/_fin/260912_cache_lane/030_prefix.md similarity index 100% rename from devlog/_plan/260912_cache_lane/030_prefix.md rename to devlog/_fin/260912_cache_lane/030_prefix.md diff --git a/devlog/_plan/260912_cache_lane/035_prefix_adapt.md b/devlog/_fin/260912_cache_lane/035_prefix_adapt.md similarity index 100% rename from devlog/_plan/260912_cache_lane/035_prefix_adapt.md rename to devlog/_fin/260912_cache_lane/035_prefix_adapt.md diff --git a/devlog/_plan/260912_cache_lane/036_prefix_linear.md b/devlog/_fin/260912_cache_lane/036_prefix_linear.md similarity index 100% rename from devlog/_plan/260912_cache_lane/036_prefix_linear.md rename to devlog/_fin/260912_cache_lane/036_prefix_linear.md diff --git a/devlog/_plan/260912_cache_lane/037_prefix_slot.md b/devlog/_fin/260912_cache_lane/037_prefix_slot.md similarity index 100% rename from devlog/_plan/260912_cache_lane/037_prefix_slot.md rename to devlog/_fin/260912_cache_lane/037_prefix_slot.md diff --git a/devlog/_plan/260912_cache_lane/040_hermes.md b/devlog/_fin/260912_cache_lane/040_hermes.md similarity index 100% rename from devlog/_plan/260912_cache_lane/040_hermes.md rename to devlog/_fin/260912_cache_lane/040_hermes.md diff --git a/devlog/_plan/260912_cache_lane/041_hermes_ci_refresh.md b/devlog/_fin/260912_cache_lane/041_hermes_ci_refresh.md similarity index 100% rename from devlog/_plan/260912_cache_lane/041_hermes_ci_refresh.md rename to devlog/_fin/260912_cache_lane/041_hermes_ci_refresh.md diff --git a/devlog/_plan/260912_cache_lane/050_verify.md b/devlog/_fin/260912_cache_lane/050_verify.md similarity index 100% rename from devlog/_plan/260912_cache_lane/050_verify.md rename to devlog/_fin/260912_cache_lane/050_verify.md diff --git a/devlog/_plan/260912_cache_lane/060_handoff.md b/devlog/_fin/260912_cache_lane/060_handoff.md similarity index 100% rename from devlog/_plan/260912_cache_lane/060_handoff.md rename to devlog/_fin/260912_cache_lane/060_handoff.md diff --git a/devlog/_plan/260912_campaign_ci_fixtures/000_plan.md b/devlog/_fin/260912_campaign_ci_fixtures/000_plan.md similarity index 100% rename from devlog/_plan/260912_campaign_ci_fixtures/000_plan.md rename to devlog/_fin/260912_campaign_ci_fixtures/000_plan.md diff --git a/devlog/_plan/260912_catalog_lane_readiness/000_plan.md b/devlog/_fin/260912_catalog_lane_readiness/000_plan.md similarity index 100% rename from devlog/_plan/260912_catalog_lane_readiness/000_plan.md rename to devlog/_fin/260912_catalog_lane_readiness/000_plan.md diff --git a/devlog/_plan/260912_catalog_lane_readiness/010_roadmap.md b/devlog/_fin/260912_catalog_lane_readiness/010_roadmap.md similarity index 100% rename from devlog/_plan/260912_catalog_lane_readiness/010_roadmap.md rename to devlog/_fin/260912_catalog_lane_readiness/010_roadmap.md diff --git a/devlog/_plan/260912_catalog_lane_readiness/011_design_reflection.md b/devlog/_fin/260912_catalog_lane_readiness/011_design_reflection.md similarity index 100% rename from devlog/_plan/260912_catalog_lane_readiness/011_design_reflection.md rename to devlog/_fin/260912_catalog_lane_readiness/011_design_reflection.md diff --git a/devlog/_plan/260912_catalog_lane_readiness/020_review.md b/devlog/_fin/260912_catalog_lane_readiness/020_review.md similarity index 100% rename from devlog/_plan/260912_catalog_lane_readiness/020_review.md rename to devlog/_fin/260912_catalog_lane_readiness/020_review.md diff --git a/devlog/_plan/260912_catalog_lane_readiness/022_keyboard_repair.md b/devlog/_fin/260912_catalog_lane_readiness/022_keyboard_repair.md similarity index 100% rename from devlog/_plan/260912_catalog_lane_readiness/022_keyboard_repair.md rename to devlog/_fin/260912_catalog_lane_readiness/022_keyboard_repair.md diff --git a/devlog/_plan/260912_catalog_lane_readiness/030_evidence.md b/devlog/_fin/260912_catalog_lane_readiness/030_evidence.md similarity index 100% rename from devlog/_plan/260912_catalog_lane_readiness/030_evidence.md rename to devlog/_fin/260912_catalog_lane_readiness/030_evidence.md diff --git a/devlog/_plan/260912_cline_client/000_plan.md b/devlog/_fin/260912_cline_client/000_plan.md similarity index 100% rename from devlog/_plan/260912_cline_client/000_plan.md rename to devlog/_fin/260912_cline_client/000_plan.md diff --git a/devlog/_plan/260912_cline_client/001_contract.md b/devlog/_fin/260912_cline_client/001_contract.md similarity index 100% rename from devlog/_plan/260912_cline_client/001_contract.md rename to devlog/_fin/260912_cline_client/001_contract.md diff --git a/devlog/_plan/260912_cline_client/009_roadmap_result.md b/devlog/_fin/260912_cline_client/009_roadmap_result.md similarity index 100% rename from devlog/_plan/260912_cline_client/009_roadmap_result.md rename to devlog/_fin/260912_cline_client/009_roadmap_result.md diff --git a/devlog/_plan/260912_cline_client/010_contract.md b/devlog/_fin/260912_cline_client/010_contract.md similarity index 100% rename from devlog/_plan/260912_cline_client/010_contract.md rename to devlog/_fin/260912_cline_client/010_contract.md diff --git a/devlog/_plan/260912_cline_client/019_contract_result.md b/devlog/_fin/260912_cline_client/019_contract_result.md similarity index 100% rename from devlog/_plan/260912_cline_client/019_contract_result.md rename to devlog/_fin/260912_cline_client/019_contract_result.md diff --git a/devlog/_plan/260912_cline_client/020_surfaces.md b/devlog/_fin/260912_cline_client/020_surfaces.md similarity index 100% rename from devlog/_plan/260912_cline_client/020_surfaces.md rename to devlog/_fin/260912_cline_client/020_surfaces.md diff --git a/devlog/_plan/260912_cline_client/029_surfaces_result.md b/devlog/_fin/260912_cline_client/029_surfaces_result.md similarity index 100% rename from devlog/_plan/260912_cline_client/029_surfaces_result.md rename to devlog/_fin/260912_cline_client/029_surfaces_result.md diff --git a/devlog/_plan/260912_cline_client/030_verification.md b/devlog/_fin/260912_cline_client/030_verification.md similarity index 100% rename from devlog/_plan/260912_cline_client/030_verification.md rename to devlog/_fin/260912_cline_client/030_verification.md diff --git a/devlog/_plan/260912_cline_client/039_gui_evidence.md b/devlog/_fin/260912_cline_client/039_gui_evidence.md similarity index 100% rename from devlog/_plan/260912_cline_client/039_gui_evidence.md rename to devlog/_fin/260912_cline_client/039_gui_evidence.md diff --git a/devlog/_plan/260912_cline_client/evidence/cline-export.png b/devlog/_fin/260912_cline_client/evidence/cline-export.png similarity index 100% rename from devlog/_plan/260912_cline_client/evidence/cline-export.png rename to devlog/_fin/260912_cline_client/evidence/cline-export.png diff --git a/devlog/_plan/260912_cline_client/evidence/cline-integration.png b/devlog/_fin/260912_cline_client/evidence/cline-integration.png similarity index 100% rename from devlog/_plan/260912_cline_client/evidence/cline-integration.png rename to devlog/_fin/260912_cline_client/evidence/cline-integration.png diff --git a/devlog/_plan/260912_codex_gpt54_retirement/000_plan.md b/devlog/_fin/260912_codex_gpt54_retirement/000_plan.md similarity index 100% rename from devlog/_plan/260912_codex_gpt54_retirement/000_plan.md rename to devlog/_fin/260912_codex_gpt54_retirement/000_plan.md diff --git a/devlog/_plan/260912_codex_gpt54_retirement/010_catalog_removal.md b/devlog/_fin/260912_codex_gpt54_retirement/010_catalog_removal.md similarity index 100% rename from devlog/_plan/260912_codex_gpt54_retirement/010_catalog_removal.md rename to devlog/_fin/260912_codex_gpt54_retirement/010_catalog_removal.md diff --git a/devlog/_plan/260912_codex_gpt54_retirement/020_defaults_repoint.md b/devlog/_fin/260912_codex_gpt54_retirement/020_defaults_repoint.md similarity index 100% rename from devlog/_plan/260912_codex_gpt54_retirement/020_defaults_repoint.md rename to devlog/_fin/260912_codex_gpt54_retirement/020_defaults_repoint.md diff --git a/devlog/_plan/260912_codex_gpt54_retirement/030_surfaces_and_gate.md b/devlog/_fin/260912_codex_gpt54_retirement/030_surfaces_and_gate.md similarity index 100% rename from devlog/_plan/260912_codex_gpt54_retirement/030_surfaces_and_gate.md rename to devlog/_fin/260912_codex_gpt54_retirement/030_surfaces_and_gate.md diff --git a/devlog/_plan/260912_codex_gpt54_retirement/040_done.md b/devlog/_fin/260912_codex_gpt54_retirement/040_done.md similarity index 100% rename from devlog/_plan/260912_codex_gpt54_retirement/040_done.md rename to devlog/_fin/260912_codex_gpt54_retirement/040_done.md diff --git a/devlog/_plan/260912_codex_spark_retirement/000_plan.md b/devlog/_fin/260912_codex_spark_retirement/000_plan.md similarity index 100% rename from devlog/_plan/260912_codex_spark_retirement/000_plan.md rename to devlog/_fin/260912_codex_spark_retirement/000_plan.md diff --git a/devlog/_plan/260912_codex_spark_retirement/001_source.md b/devlog/_fin/260912_codex_spark_retirement/001_source.md similarity index 100% rename from devlog/_plan/260912_codex_spark_retirement/001_source.md rename to devlog/_fin/260912_codex_spark_retirement/001_source.md diff --git a/devlog/_plan/260912_codex_spark_retirement/010_implementation.md b/devlog/_fin/260912_codex_spark_retirement/010_implementation.md similarity index 100% rename from devlog/_plan/260912_codex_spark_retirement/010_implementation.md rename to devlog/_fin/260912_codex_spark_retirement/010_implementation.md diff --git a/devlog/_plan/260912_codex_spark_retirement/020_review.md b/devlog/_fin/260912_codex_spark_retirement/020_review.md similarity index 100% rename from devlog/_plan/260912_codex_spark_retirement/020_review.md rename to devlog/_fin/260912_codex_spark_retirement/020_review.md diff --git a/devlog/_plan/260912_codex_spark_retirement/030_delivery.md b/devlog/_fin/260912_codex_spark_retirement/030_delivery.md similarity index 100% rename from devlog/_plan/260912_codex_spark_retirement/030_delivery.md rename to devlog/_fin/260912_codex_spark_retirement/030_delivery.md diff --git a/devlog/_plan/260912_combo_carry/000_plan.md b/devlog/_fin/260912_combo_carry/000_plan.md similarity index 100% rename from devlog/_plan/260912_combo_carry/000_plan.md rename to devlog/_fin/260912_combo_carry/000_plan.md diff --git a/devlog/_plan/260912_combo_carry/010_runtime.md b/devlog/_fin/260912_combo_carry/010_runtime.md similarity index 100% rename from devlog/_plan/260912_combo_carry/010_runtime.md rename to devlog/_fin/260912_combo_carry/010_runtime.md diff --git a/devlog/_plan/260912_combo_carry/020_editor.md b/devlog/_fin/260912_combo_carry/020_editor.md similarity index 100% rename from devlog/_plan/260912_combo_carry/020_editor.md rename to devlog/_fin/260912_combo_carry/020_editor.md diff --git a/devlog/_plan/260912_combo_carry/030_verification.md b/devlog/_fin/260912_combo_carry/030_verification.md similarity index 100% rename from devlog/_plan/260912_combo_carry/030_verification.md rename to devlog/_fin/260912_combo_carry/030_verification.md diff --git a/devlog/_plan/260912_combo_carry/031_exhausted.png b/devlog/_fin/260912_combo_carry/031_exhausted.png similarity index 100% rename from devlog/_plan/260912_combo_carry/031_exhausted.png rename to devlog/_fin/260912_combo_carry/031_exhausted.png diff --git a/devlog/_plan/260912_combo_carry/032_unknown.png b/devlog/_fin/260912_combo_carry/032_unknown.png similarity index 100% rename from devlog/_plan/260912_combo_carry/032_unknown.png rename to devlog/_fin/260912_combo_carry/032_unknown.png diff --git a/devlog/_plan/260912_combo_carry/033_expired.png b/devlog/_fin/260912_combo_carry/033_expired.png similarity index 100% rename from devlog/_plan/260912_combo_carry/033_expired.png rename to devlog/_fin/260912_combo_carry/033_expired.png diff --git a/devlog/_plan/260912_combo_carry/034_render_evidence.md b/devlog/_fin/260912_combo_carry/034_render_evidence.md similarity index 100% rename from devlog/_plan/260912_combo_carry/034_render_evidence.md rename to devlog/_fin/260912_combo_carry/034_render_evidence.md diff --git a/devlog/_plan/260912_combo_carry/040_pnpm_ci_repair.md b/devlog/_fin/260912_combo_carry/040_pnpm_ci_repair.md similarity index 100% rename from devlog/_plan/260912_combo_carry/040_pnpm_ci_repair.md rename to devlog/_fin/260912_combo_carry/040_pnpm_ci_repair.md diff --git a/devlog/_plan/260912_combo_carry/050_active_reactivation_repair.md b/devlog/_fin/260912_combo_carry/050_active_reactivation_repair.md similarity index 100% rename from devlog/_plan/260912_combo_carry/050_active_reactivation_repair.md rename to devlog/_fin/260912_combo_carry/050_active_reactivation_repair.md diff --git a/devlog/_plan/260912_devin_hardening/000_plan.md b/devlog/_fin/260912_devin_hardening/000_plan.md similarity index 100% rename from devlog/_plan/260912_devin_hardening/000_plan.md rename to devlog/_fin/260912_devin_hardening/000_plan.md diff --git a/devlog/_plan/260912_devin_hardening/010_cli_token_transition.md b/devlog/_fin/260912_devin_hardening/010_cli_token_transition.md similarity index 100% rename from devlog/_plan/260912_devin_hardening/010_cli_token_transition.md rename to devlog/_fin/260912_devin_hardening/010_cli_token_transition.md diff --git a/devlog/_plan/260912_devin_hardening/020_cloud_direct_hardening.md b/devlog/_fin/260912_devin_hardening/020_cloud_direct_hardening.md similarity index 100% rename from devlog/_plan/260912_devin_hardening/020_cloud_direct_hardening.md rename to devlog/_fin/260912_devin_hardening/020_cloud_direct_hardening.md diff --git a/devlog/_plan/260912_devin_hardening/030_cached_token_display.md b/devlog/_fin/260912_devin_hardening/030_cached_token_display.md similarity index 100% rename from devlog/_plan/260912_devin_hardening/030_cached_token_display.md rename to devlog/_fin/260912_devin_hardening/030_cached_token_display.md diff --git a/devlog/_plan/260912_devin_hardening/040_stacked_delivery.md b/devlog/_fin/260912_devin_hardening/040_stacked_delivery.md similarity index 100% rename from devlog/_plan/260912_devin_hardening/040_stacked_delivery.md rename to devlog/_fin/260912_devin_hardening/040_stacked_delivery.md diff --git a/devlog/_plan/260912_devin_hardening/logs-devin-cached-restored.jpg b/devlog/_fin/260912_devin_hardening/logs-devin-cached-restored.jpg similarity index 100% rename from devlog/_plan/260912_devin_hardening/logs-devin-cached-restored.jpg rename to devlog/_fin/260912_devin_hardening/logs-devin-cached-restored.jpg diff --git a/devlog/_plan/260912_grok_reset_coupon_gui/000_plan.md b/devlog/_fin/260912_grok_reset_coupon_gui/000_plan.md similarity index 99% rename from devlog/_plan/260912_grok_reset_coupon_gui/000_plan.md rename to devlog/_fin/260912_grok_reset_coupon_gui/000_plan.md index e300fc35c0c..192e5dd2d7c 100644 --- a/devlog/_plan/260912_grok_reset_coupon_gui/000_plan.md +++ b/devlog/_fin/260912_grok_reset_coupon_gui/000_plan.md @@ -31,7 +31,7 @@ audit (`030`) are folded into the decisions, file map, verifiers and criteria be observes this unit's files. - **Stop condition:** merged into `dev` with exact-head CI green and `dev` ancestry proven. -- **Memory artifact:** `devlog/_plan/260912_grok_reset_coupon_gui/`, closing into +- **Memory artifact:** `devlog/_fin/260912_grok_reset_coupon_gui/`, closing into `devlog/_fin/` after the merge. - **Expected terminal outcomes:** DONE on merge; BLOCKED if review requires the server change this unit excluded; NEEDS_HUMAN if a second maintainer approval is diff --git a/devlog/_plan/260912_grok_reset_coupon_gui/005_status.md b/devlog/_fin/260912_grok_reset_coupon_gui/005_status.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupon_gui/005_status.md rename to devlog/_fin/260912_grok_reset_coupon_gui/005_status.md diff --git a/devlog/_plan/260912_grok_reset_coupon_gui/010_architect_dispositions.md b/devlog/_fin/260912_grok_reset_coupon_gui/010_architect_dispositions.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupon_gui/010_architect_dispositions.md rename to devlog/_fin/260912_grok_reset_coupon_gui/010_architect_dispositions.md diff --git a/devlog/_plan/260912_grok_reset_coupon_gui/020_reflection_gaps.md b/devlog/_fin/260912_grok_reset_coupon_gui/020_reflection_gaps.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupon_gui/020_reflection_gaps.md rename to devlog/_fin/260912_grok_reset_coupon_gui/020_reflection_gaps.md diff --git a/devlog/_plan/260912_grok_reset_coupon_gui/030_audit_round1.md b/devlog/_fin/260912_grok_reset_coupon_gui/030_audit_round1.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupon_gui/030_audit_round1.md rename to devlog/_fin/260912_grok_reset_coupon_gui/030_audit_round1.md diff --git a/devlog/_plan/260912_grok_reset_coupon_gui/evidence/architect-round1.md b/devlog/_fin/260912_grok_reset_coupon_gui/evidence/architect-round1.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupon_gui/evidence/architect-round1.md rename to devlog/_fin/260912_grok_reset_coupon_gui/evidence/architect-round1.md diff --git a/devlog/_plan/260912_grok_reset_coupons/000_plan.md b/devlog/_fin/260912_grok_reset_coupons/000_plan.md similarity index 95% rename from devlog/_plan/260912_grok_reset_coupons/000_plan.md rename to devlog/_fin/260912_grok_reset_coupons/000_plan.md index 22ba5d65b9f..001038f8a1c 100644 --- a/devlog/_plan/260912_grok_reset_coupons/000_plan.md +++ b/devlog/_fin/260912_grok_reset_coupons/000_plan.md @@ -18,7 +18,7 @@ the same safety shape they already know. - **Non-goals:** no auto-redeem in this unit (opt-in auto-redeem is a follow-up); no GUI surface; no changes to the Codex reset-credit path; no new dependency (hand-rolled gRPC-Web codec, no @bufbuild/protobuf runtime import). - **Verifier:** `bun test tests/providers/xai/grok-reset-coupons.test.ts` (targets the new test file directly), `bun run typecheck` (package.json:11 "bun x tsc --noEmit"), `bun run test` (package.json:12 "bun scripts/test.ts" — full tree, reads all domains incl. our layout registrations), `bun run privacy:scan` (package.json "bun scripts/privacy-scan.ts" — scans the tree incl. new files). Live smoke (sanitized) re-proves the read path against the real endpoint. - **Stop condition:** all criteria met (goalplan c1–c6) and the PR is merged with exact-head CI + issue closed; report DONE. Missing authority (push/merge refusal) reports BLOCKED. -- **Memory artifact:** this unit (devlog/_plan/260912_grok_reset_coupons/, moves to _fin at wp4 D); goalplan + ledger under .codexclaw/goalplans/implement-grok-reset-coupon-support-in-opencodex/; evidence under .codexclaw/evidence/. +- **Memory artifact:** this unit (devlog/_fin/260912_grok_reset_coupons/, moves to _fin at wp4 D); goalplan + ledger under .codexclaw/goalplans/implement-grok-reset-coupon-support-in-opencodex/; evidence under .codexclaw/evidence/. - **Expected terminal outcomes:** DONE (all criteria + merged), BLOCKED (missing external authority or upstream contract change), BUDGET_EXHAUSTED (host bounds), NEEDS_HUMAN (upstream schema drift on RedeemReset success shape). - **Escalation condition:** upstream rejects the documented RedeemReset request shape on a real redeem → stop, report, ask operator how to proceed (spending a coupon is operator-owned). Main reclaims a lane after two distinct agents fail its packet (DISPATCH-RETIRE-01); pushing a slice to a worker requires a P-phase amendment. diff --git a/devlog/_plan/260912_grok_reset_coupons/001_survey_seams.md b/devlog/_fin/260912_grok_reset_coupons/001_survey_seams.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupons/001_survey_seams.md rename to devlog/_fin/260912_grok_reset_coupons/001_survey_seams.md diff --git a/devlog/_plan/260912_grok_reset_coupons/005_status.md b/devlog/_fin/260912_grok_reset_coupons/005_status.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupons/005_status.md rename to devlog/_fin/260912_grok_reset_coupons/005_status.md diff --git a/devlog/_plan/260912_grok_reset_coupons/010_phase1_core_client.md b/devlog/_fin/260912_grok_reset_coupons/010_phase1_core_client.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupons/010_phase1_core_client.md rename to devlog/_fin/260912_grok_reset_coupons/010_phase1_core_client.md diff --git a/devlog/_plan/260912_grok_reset_coupons/020_phase2_surfaces.md b/devlog/_fin/260912_grok_reset_coupons/020_phase2_surfaces.md similarity index 100% rename from devlog/_plan/260912_grok_reset_coupons/020_phase2_surfaces.md rename to devlog/_fin/260912_grok_reset_coupons/020_phase2_surfaces.md diff --git a/devlog/_plan/260912_grok_reset_coupons/030_phase3_delivery.md b/devlog/_fin/260912_grok_reset_coupons/030_phase3_delivery.md similarity index 99% rename from devlog/_plan/260912_grok_reset_coupons/030_phase3_delivery.md rename to devlog/_fin/260912_grok_reset_coupons/030_phase3_delivery.md index a89db8f8ee9..2c014eaee95 100644 --- a/devlog/_plan/260912_grok_reset_coupons/030_phase3_delivery.md +++ b/devlog/_fin/260912_grok_reset_coupons/030_phase3_delivery.md @@ -72,7 +72,7 @@ The Grok reset coupons capability introduces both a new CLI command under `ocx a Upon landing all Phase 1 and Phase 2 changes on `dev`, promote the planning directory to finished status: -- **Source:** `devlog/_plan/260912_grok_reset_coupons/` +- **Source:** `devlog/_fin/260912_grok_reset_coupons/` - **Destination:** `devlog/_fin/260912_grok_reset_coupons/` - **Action:** Move the directory and add `000_fin_summary.md` documenting: 1. Live verification against `grok.com/prod_mc_billing.ConsumerUiSvc`. diff --git a/devlog/_plan/260912_history_containment/000_plan.md b/devlog/_fin/260912_history_containment/000_plan.md similarity index 100% rename from devlog/_plan/260912_history_containment/000_plan.md rename to devlog/_fin/260912_history_containment/000_plan.md diff --git a/devlog/_plan/260912_history_containment/010_containment.md b/devlog/_fin/260912_history_containment/010_containment.md similarity index 100% rename from devlog/_plan/260912_history_containment/010_containment.md rename to devlog/_fin/260912_history_containment/010_containment.md diff --git a/devlog/_plan/260912_history_containment/020_continuation.md b/devlog/_fin/260912_history_containment/020_continuation.md similarity index 100% rename from devlog/_plan/260912_history_containment/020_continuation.md rename to devlog/_fin/260912_history_containment/020_continuation.md diff --git a/devlog/_plan/260912_history_containment/030_relay.md b/devlog/_fin/260912_history_containment/030_relay.md similarity index 100% rename from devlog/_plan/260912_history_containment/030_relay.md rename to devlog/_fin/260912_history_containment/030_relay.md diff --git a/devlog/_plan/260912_history_containment/040_verification.md b/devlog/_fin/260912_history_containment/040_verification.md similarity index 100% rename from devlog/_plan/260912_history_containment/040_verification.md rename to devlog/_fin/260912_history_containment/040_verification.md diff --git a/devlog/_plan/260912_history_containment/051_resume_status.md b/devlog/_fin/260912_history_containment/051_resume_status.md similarity index 100% rename from devlog/_plan/260912_history_containment/051_resume_status.md rename to devlog/_fin/260912_history_containment/051_resume_status.md diff --git a/devlog/_plan/260912_muse_device_oauth/000_plan.md b/devlog/_fin/260912_muse_device_oauth/000_plan.md similarity index 100% rename from devlog/_plan/260912_muse_device_oauth/000_plan.md rename to devlog/_fin/260912_muse_device_oauth/000_plan.md diff --git a/devlog/_plan/260912_muse_device_oauth/001_reference_measurements.md b/devlog/_fin/260912_muse_device_oauth/001_reference_measurements.md similarity index 100% rename from devlog/_plan/260912_muse_device_oauth/001_reference_measurements.md rename to devlog/_fin/260912_muse_device_oauth/001_reference_measurements.md diff --git a/devlog/_plan/260912_muse_device_oauth/002_design_decisions.md b/devlog/_fin/260912_muse_device_oauth/002_design_decisions.md similarity index 100% rename from devlog/_plan/260912_muse_device_oauth/002_design_decisions.md rename to devlog/_fin/260912_muse_device_oauth/002_design_decisions.md diff --git a/devlog/_plan/260912_muse_device_oauth/010_wp2_device_core.md b/devlog/_fin/260912_muse_device_oauth/010_wp2_device_core.md similarity index 99% rename from devlog/_plan/260912_muse_device_oauth/010_wp2_device_core.md rename to devlog/_fin/260912_muse_device_oauth/010_wp2_device_core.md index 5a93ec9ea8a..15f1d875919 100644 --- a/devlog/_plan/260912_muse_device_oauth/010_wp2_device_core.md +++ b/devlog/_fin/260912_muse_device_oauth/010_wp2_device_core.md @@ -25,7 +25,7 @@ Add beside `KiroOAuthMetadata`, whose role this mirrors (`002` §A): * * The Model API is authenticated by the `LLM|` key in `access`; this token authenticates * the Meta ACCOUNT and exists only to mint that key and to read subscription usage - * (devlog/_plan/260912_muse_device_oauth/002 A). Keeping it out of `access` is what lets + * (devlog/_fin/260912_muse_device_oauth/002 A). Keeping it out of `access` is what lets * every request path stay unchanged. * * It must never be added to `OAuthAccountSummary` (src/oauth/index.ts:1803) or to @@ -121,7 +121,7 @@ branches in milliseconds and paying real seconds per branch the way * resulting account token into the `LLM|` Model API key our request path sends as a * bearer. * - * Protocol source: devlog/_plan/260912_muse_device_oauth/001_reference_measurements.md. + * Protocol source: devlog/_fin/260912_muse_device_oauth/001_reference_measurements.md. * It is second-party, not vendor documentation, so every response is parsed defensively * and every failure names a kind instead of throwing a bare string. * diff --git a/devlog/_plan/260912_muse_device_oauth/020_wp3_login_integration.md b/devlog/_fin/260912_muse_device_oauth/020_wp3_login_integration.md similarity index 100% rename from devlog/_plan/260912_muse_device_oauth/020_wp3_login_integration.md rename to devlog/_fin/260912_muse_device_oauth/020_wp3_login_integration.md diff --git a/devlog/_plan/260912_muse_device_oauth/030_wp4_header_and_quota.md b/devlog/_fin/260912_muse_device_oauth/030_wp4_header_and_quota.md similarity index 100% rename from devlog/_plan/260912_muse_device_oauth/030_wp4_header_and_quota.md rename to devlog/_fin/260912_muse_device_oauth/030_wp4_header_and_quota.md diff --git a/devlog/_plan/260912_muse_device_oauth/040_wp5_tests_and_gate.md b/devlog/_fin/260912_muse_device_oauth/040_wp5_tests_and_gate.md similarity index 100% rename from devlog/_plan/260912_muse_device_oauth/040_wp5_tests_and_gate.md rename to devlog/_fin/260912_muse_device_oauth/040_wp5_tests_and_gate.md diff --git a/devlog/_plan/260912_muse_device_oauth/050_delivery_record.md b/devlog/_fin/260912_muse_device_oauth/050_delivery_record.md similarity index 100% rename from devlog/_plan/260912_muse_device_oauth/050_delivery_record.md rename to devlog/_fin/260912_muse_device_oauth/050_delivery_record.md diff --git a/devlog/_plan/260912_muse_tool_name_alias/000_plan.md b/devlog/_fin/260912_muse_tool_name_alias/000_plan.md similarity index 100% rename from devlog/_plan/260912_muse_tool_name_alias/000_plan.md rename to devlog/_fin/260912_muse_tool_name_alias/000_plan.md diff --git a/devlog/_plan/260912_omo_client_integration/000_plan.md b/devlog/_fin/260912_omo_client_integration/000_plan.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/000_plan.md rename to devlog/_fin/260912_omo_client_integration/000_plan.md diff --git a/devlog/_plan/260912_omo_client_integration/001_omo_contract.md b/devlog/_fin/260912_omo_client_integration/001_omo_contract.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/001_omo_contract.md rename to devlog/_fin/260912_omo_client_integration/001_omo_contract.md diff --git a/devlog/_plan/260912_omo_client_integration/002_registration_checklist.md b/devlog/_fin/260912_omo_client_integration/002_registration_checklist.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/002_registration_checklist.md rename to devlog/_fin/260912_omo_client_integration/002_registration_checklist.md diff --git a/devlog/_plan/260912_omo_client_integration/003_brand_mark_provenance.md b/devlog/_fin/260912_omo_client_integration/003_brand_mark_provenance.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/003_brand_mark_provenance.md rename to devlog/_fin/260912_omo_client_integration/003_brand_mark_provenance.md diff --git a/devlog/_plan/260912_omo_client_integration/010_wp2_backend.md b/devlog/_fin/260912_omo_client_integration/010_wp2_backend.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/010_wp2_backend.md rename to devlog/_fin/260912_omo_client_integration/010_wp2_backend.md diff --git a/devlog/_plan/260912_omo_client_integration/020_wp3_gui.md b/devlog/_fin/260912_omo_client_integration/020_wp3_gui.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/020_wp3_gui.md rename to devlog/_fin/260912_omo_client_integration/020_wp3_gui.md diff --git a/devlog/_plan/260912_omo_client_integration/030_wp4_docs.md b/devlog/_fin/260912_omo_client_integration/030_wp4_docs.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/030_wp4_docs.md rename to devlog/_fin/260912_omo_client_integration/030_wp4_docs.md diff --git a/devlog/_plan/260912_omo_client_integration/040_wp5_verification.md b/devlog/_fin/260912_omo_client_integration/040_wp5_verification.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/040_wp5_verification.md rename to devlog/_fin/260912_omo_client_integration/040_wp5_verification.md diff --git a/devlog/_plan/260912_omo_client_integration/050_wp6_gjc_rename.md b/devlog/_fin/260912_omo_client_integration/050_wp6_gjc_rename.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/050_wp6_gjc_rename.md rename to devlog/_fin/260912_omo_client_integration/050_wp6_gjc_rename.md diff --git a/devlog/_plan/260912_omo_client_integration/060_wp3_rendered_proof.md b/devlog/_fin/260912_omo_client_integration/060_wp3_rendered_proof.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/060_wp3_rendered_proof.md rename to devlog/_fin/260912_omo_client_integration/060_wp3_rendered_proof.md diff --git a/devlog/_plan/260912_omo_client_integration/090_outcome.md b/devlog/_fin/260912_omo_client_integration/090_outcome.md similarity index 100% rename from devlog/_plan/260912_omo_client_integration/090_outcome.md rename to devlog/_fin/260912_omo_client_integration/090_outcome.md diff --git a/devlog/_plan/260912_omo_client_integration/evidence/integrations-omo-tab.png b/devlog/_fin/260912_omo_client_integration/evidence/integrations-omo-tab.png similarity index 100% rename from devlog/_plan/260912_omo_client_integration/evidence/integrations-omo-tab.png rename to devlog/_fin/260912_omo_client_integration/evidence/integrations-omo-tab.png diff --git a/devlog/_plan/260912_operations/000_plan.md b/devlog/_fin/260912_operations/000_plan.md similarity index 100% rename from devlog/_plan/260912_operations/000_plan.md rename to devlog/_fin/260912_operations/000_plan.md diff --git a/devlog/_plan/260912_operations/001_roadmap_audit.md b/devlog/_fin/260912_operations/001_roadmap_audit.md similarity index 100% rename from devlog/_plan/260912_operations/001_roadmap_audit.md rename to devlog/_fin/260912_operations/001_roadmap_audit.md diff --git a/devlog/_plan/260912_operations/010_update.md b/devlog/_fin/260912_operations/010_update.md similarity index 100% rename from devlog/_plan/260912_operations/010_update.md rename to devlog/_fin/260912_operations/010_update.md diff --git a/devlog/_plan/260912_operations/020_listeners.md b/devlog/_fin/260912_operations/020_listeners.md similarity index 100% rename from devlog/_plan/260912_operations/020_listeners.md rename to devlog/_fin/260912_operations/020_listeners.md diff --git a/devlog/_plan/260912_operations/030_totals.md b/devlog/_fin/260912_operations/030_totals.md similarity index 100% rename from devlog/_plan/260912_operations/030_totals.md rename to devlog/_fin/260912_operations/030_totals.md diff --git a/devlog/_plan/260912_operations/040_client_usage.md b/devlog/_fin/260912_operations/040_client_usage.md similarity index 100% rename from devlog/_plan/260912_operations/040_client_usage.md rename to devlog/_fin/260912_operations/040_client_usage.md diff --git a/devlog/_plan/260912_operations/050_pairing.md b/devlog/_fin/260912_operations/050_pairing.md similarity index 100% rename from devlog/_plan/260912_operations/050_pairing.md rename to devlog/_fin/260912_operations/050_pairing.md diff --git a/devlog/_plan/260912_operations/060_transport.md b/devlog/_fin/260912_operations/060_transport.md similarity index 100% rename from devlog/_plan/260912_operations/060_transport.md rename to devlog/_fin/260912_operations/060_transport.md diff --git a/devlog/_plan/260912_operations/070_verification.md b/devlog/_fin/260912_operations/070_verification.md similarity index 100% rename from devlog/_plan/260912_operations/070_verification.md rename to devlog/_fin/260912_operations/070_verification.md diff --git a/devlog/_plan/260912_operations/080_update_events.md b/devlog/_fin/260912_operations/080_update_events.md similarity index 100% rename from devlog/_plan/260912_operations/080_update_events.md rename to devlog/_fin/260912_operations/080_update_events.md diff --git a/devlog/_plan/260912_operations/090_listener_diagnostic.md b/devlog/_fin/260912_operations/090_listener_diagnostic.md similarity index 100% rename from devlog/_plan/260912_operations/090_listener_diagnostic.md rename to devlog/_fin/260912_operations/090_listener_diagnostic.md diff --git a/devlog/_plan/260912_operations/100_usage_transport.md b/devlog/_fin/260912_operations/100_usage_transport.md similarity index 100% rename from devlog/_plan/260912_operations/100_usage_transport.md rename to devlog/_fin/260912_operations/100_usage_transport.md diff --git a/devlog/_plan/260912_operations/110_resume_status.md b/devlog/_fin/260912_operations/110_resume_status.md similarity index 100% rename from devlog/_plan/260912_operations/110_resume_status.md rename to devlog/_fin/260912_operations/110_resume_status.md diff --git a/devlog/_plan/260912_operations/120_coordinator_probe.md b/devlog/_fin/260912_operations/120_coordinator_probe.md similarity index 100% rename from devlog/_plan/260912_operations/120_coordinator_probe.md rename to devlog/_fin/260912_operations/120_coordinator_probe.md diff --git a/devlog/_plan/260912_phantom_account_short_quota/000_plan.md b/devlog/_fin/260912_phantom_account_short_quota/000_plan.md similarity index 100% rename from devlog/_plan/260912_phantom_account_short_quota/000_plan.md rename to devlog/_fin/260912_phantom_account_short_quota/000_plan.md diff --git a/devlog/_plan/260912_phantom_account_short_quota/010_phase1_drop_elapsed_short_carry.md b/devlog/_fin/260912_phantom_account_short_quota/010_phase1_drop_elapsed_short_carry.md similarity index 100% rename from devlog/_plan/260912_phantom_account_short_quota/010_phase1_drop_elapsed_short_carry.md rename to devlog/_fin/260912_phantom_account_short_quota/010_phase1_drop_elapsed_short_carry.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/000_plan.md b/devlog/_fin/260912_provider_catalog_unified_search/000_plan.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/000_plan.md rename to devlog/_fin/260912_provider_catalog_unified_search/000_plan.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/010_context.md b/devlog/_fin/260912_provider_catalog_unified_search/010_context.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/010_context.md rename to devlog/_fin/260912_provider_catalog_unified_search/010_context.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/015_codesign_grok.md b/devlog/_fin/260912_provider_catalog_unified_search/015_codesign_grok.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/015_codesign_grok.md rename to devlog/_fin/260912_provider_catalog_unified_search/015_codesign_grok.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/016_audit_corrections.md b/devlog/_fin/260912_provider_catalog_unified_search/016_audit_corrections.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/016_audit_corrections.md rename to devlog/_fin/260912_provider_catalog_unified_search/016_audit_corrections.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/020_r3_local_tab.md b/devlog/_fin/260912_provider_catalog_unified_search/020_r3_local_tab.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/020_r3_local_tab.md rename to devlog/_fin/260912_provider_catalog_unified_search/020_r3_local_tab.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/030_r2_note_clamp.md b/devlog/_fin/260912_provider_catalog_unified_search/030_r2_note_clamp.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/030_r2_note_clamp.md rename to devlog/_fin/260912_provider_catalog_unified_search/030_r2_note_clamp.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/040_r1_unified_search.md b/devlog/_fin/260912_provider_catalog_unified_search/040_r1_unified_search.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/040_r1_unified_search.md rename to devlog/_fin/260912_provider_catalog_unified_search/040_r1_unified_search.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/050_delivery.md b/devlog/_fin/260912_provider_catalog_unified_search/050_delivery.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/050_delivery.md rename to devlog/_fin/260912_provider_catalog_unified_search/050_delivery.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/060_delivery_record.md b/devlog/_fin/260912_provider_catalog_unified_search/060_delivery_record.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/060_delivery_record.md rename to devlog/_fin/260912_provider_catalog_unified_search/060_delivery_record.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/evidence/grok-4.6-codesign.md b/devlog/_fin/260912_provider_catalog_unified_search/evidence/grok-4.6-codesign.md similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/evidence/grok-4.6-codesign.md rename to devlog/_fin/260912_provider_catalog_unified_search/evidence/grok-4.6-codesign.md diff --git a/devlog/_plan/260912_provider_catalog_unified_search/evidence/wp2-local-tab.png b/devlog/_fin/260912_provider_catalog_unified_search/evidence/wp2-local-tab.png similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/evidence/wp2-local-tab.png rename to devlog/_fin/260912_provider_catalog_unified_search/evidence/wp2-local-tab.png diff --git a/devlog/_plan/260912_provider_catalog_unified_search/evidence/wp3-note-clamp.png b/devlog/_fin/260912_provider_catalog_unified_search/evidence/wp3-note-clamp.png similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/evidence/wp3-note-clamp.png rename to devlog/_fin/260912_provider_catalog_unified_search/evidence/wp3-note-clamp.png diff --git a/devlog/_plan/260912_provider_catalog_unified_search/evidence/wp3-note-popup.png b/devlog/_fin/260912_provider_catalog_unified_search/evidence/wp3-note-popup.png similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/evidence/wp3-note-popup.png rename to devlog/_fin/260912_provider_catalog_unified_search/evidence/wp3-note-popup.png diff --git a/devlog/_plan/260912_provider_catalog_unified_search/evidence/wp4-browse-mode.png b/devlog/_fin/260912_provider_catalog_unified_search/evidence/wp4-browse-mode.png similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/evidence/wp4-browse-mode.png rename to devlog/_fin/260912_provider_catalog_unified_search/evidence/wp4-browse-mode.png diff --git a/devlog/_plan/260912_provider_catalog_unified_search/evidence/wp4-search-accounts.png b/devlog/_fin/260912_provider_catalog_unified_search/evidence/wp4-search-accounts.png similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/evidence/wp4-search-accounts.png rename to devlog/_fin/260912_provider_catalog_unified_search/evidence/wp4-search-accounts.png diff --git a/devlog/_plan/260912_provider_catalog_unified_search/evidence/wp4-search-groups.png b/devlog/_fin/260912_provider_catalog_unified_search/evidence/wp4-search-groups.png similarity index 100% rename from devlog/_plan/260912_provider_catalog_unified_search/evidence/wp4-search-groups.png rename to devlog/_fin/260912_provider_catalog_unified_search/evidence/wp4-search-groups.png diff --git a/devlog/_plan/260912_reasoning_effort_downgrade/000_decision.md b/devlog/_fin/260912_reasoning_effort_downgrade/000_decision.md similarity index 96% rename from devlog/_plan/260912_reasoning_effort_downgrade/000_decision.md rename to devlog/_fin/260912_reasoning_effort_downgrade/000_decision.md index 67499186afe..b83a14ca267 100644 --- a/devlog/_plan/260912_reasoning_effort_downgrade/000_decision.md +++ b/devlog/_fin/260912_reasoning_effort_downgrade/000_decision.md @@ -5,7 +5,7 @@ When a routed upstream answers 400/403 and names reasoning effort in the body, the pipeline records that (provider, model, effort) as refused, replays the request once at the next lower published rung, and keeps the rung out of every later ladder (see the metadata record in -devlog/_plan/260912_reasoning_metadata/). The attempt is logged with recovery kind +devlog/_fin/260912_reasoning_metadata/). The attempt is logged with recovery kind reasoning-effort-downgrade, so requestedEffort and effectiveEffort stay distinguishable in usage. ## Why the ladder is not enough diff --git a/devlog/_plan/260912_reasoning_metadata/000_decision.md b/devlog/_fin/260912_reasoning_metadata/000_decision.md similarity index 100% rename from devlog/_plan/260912_reasoning_metadata/000_decision.md rename to devlog/_fin/260912_reasoning_metadata/000_decision.md diff --git a/devlog/_plan/260912_release_regression_train/000_plan.md b/devlog/_fin/260912_release_regression_train/000_plan.md similarity index 100% rename from devlog/_plan/260912_release_regression_train/000_plan.md rename to devlog/_fin/260912_release_regression_train/000_plan.md diff --git a/devlog/_plan/260912_release_regression_train/010_ci_repair.md b/devlog/_fin/260912_release_regression_train/010_ci_repair.md similarity index 100% rename from devlog/_plan/260912_release_regression_train/010_ci_repair.md rename to devlog/_fin/260912_release_regression_train/010_ci_repair.md diff --git a/devlog/_plan/260912_release_regression_train/020_regression_sweep.md b/devlog/_fin/260912_release_regression_train/020_regression_sweep.md similarity index 100% rename from devlog/_plan/260912_release_regression_train/020_regression_sweep.md rename to devlog/_fin/260912_release_regression_train/020_regression_sweep.md diff --git a/devlog/_plan/260912_release_regression_train/025_sweep_results.md b/devlog/_fin/260912_release_regression_train/025_sweep_results.md similarity index 100% rename from devlog/_plan/260912_release_regression_train/025_sweep_results.md rename to devlog/_fin/260912_release_regression_train/025_sweep_results.md diff --git a/devlog/_plan/260912_release_regression_train/030_defect_landing.md b/devlog/_fin/260912_release_regression_train/030_defect_landing.md similarity index 100% rename from devlog/_plan/260912_release_regression_train/030_defect_landing.md rename to devlog/_fin/260912_release_regression_train/030_defect_landing.md diff --git a/devlog/_plan/260912_release_regression_train/040_preview_release.md b/devlog/_fin/260912_release_regression_train/040_preview_release.md similarity index 100% rename from devlog/_plan/260912_release_regression_train/040_preview_release.md rename to devlog/_fin/260912_release_regression_train/040_preview_release.md diff --git a/devlog/_plan/260912_release_regression_train/050_main_release.md b/devlog/_fin/260912_release_regression_train/050_main_release.md similarity index 100% rename from devlog/_plan/260912_release_regression_train/050_main_release.md rename to devlog/_fin/260912_release_regression_train/050_main_release.md diff --git a/devlog/_plan/260912_remote_workspace_carry/000_plan.md b/devlog/_fin/260912_remote_workspace_carry/000_plan.md similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/000_plan.md rename to devlog/_fin/260912_remote_workspace_carry/000_plan.md diff --git a/devlog/_plan/260912_remote_workspace_carry/010_protocol.md b/devlog/_fin/260912_remote_workspace_carry/010_protocol.md similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/010_protocol.md rename to devlog/_fin/260912_remote_workspace_carry/010_protocol.md diff --git a/devlog/_plan/260912_remote_workspace_carry/020_executor_runtime.md b/devlog/_fin/260912_remote_workspace_carry/020_executor_runtime.md similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/020_executor_runtime.md rename to devlog/_fin/260912_remote_workspace_carry/020_executor_runtime.md diff --git a/devlog/_plan/260912_remote_workspace_carry/030_integration.md b/devlog/_fin/260912_remote_workspace_carry/030_integration.md similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/030_integration.md rename to devlog/_fin/260912_remote_workspace_carry/030_integration.md diff --git a/devlog/_plan/260912_remote_workspace_carry/040_hosted_validation.md b/devlog/_fin/260912_remote_workspace_carry/040_hosted_validation.md similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/040_hosted_validation.md rename to devlog/_fin/260912_remote_workspace_carry/040_hosted_validation.md diff --git a/devlog/_plan/260912_remote_workspace_carry/041_resume_ci_repair.md b/devlog/_fin/260912_remote_workspace_carry/041_resume_ci_repair.md similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/041_resume_ci_repair.md rename to devlog/_fin/260912_remote_workspace_carry/041_resume_ci_repair.md diff --git a/devlog/_plan/260912_remote_workspace_carry/assets/041_desktop_read_only.png b/devlog/_fin/260912_remote_workspace_carry/assets/041_desktop_read_only.png similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/assets/041_desktop_read_only.png rename to devlog/_fin/260912_remote_workspace_carry/assets/041_desktop_read_only.png diff --git a/devlog/_plan/260912_remote_workspace_carry/assets/042_desktop_files_only.png b/devlog/_fin/260912_remote_workspace_carry/assets/042_desktop_files_only.png similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/assets/042_desktop_files_only.png rename to devlog/_fin/260912_remote_workspace_carry/assets/042_desktop_files_only.png diff --git a/devlog/_plan/260912_remote_workspace_carry/screenshots/remote-workspace-hub-dashboard.png b/devlog/_fin/260912_remote_workspace_carry/screenshots/remote-workspace-hub-dashboard.png similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/screenshots/remote-workspace-hub-dashboard.png rename to devlog/_fin/260912_remote_workspace_carry/screenshots/remote-workspace-hub-dashboard.png diff --git a/devlog/_plan/260912_remote_workspace_carry/screenshots/remote-workspace-pairing-code.png b/devlog/_fin/260912_remote_workspace_carry/screenshots/remote-workspace-pairing-code.png similarity index 100% rename from devlog/_plan/260912_remote_workspace_carry/screenshots/remote-workspace-pairing-code.png rename to devlog/_fin/260912_remote_workspace_carry/screenshots/remote-workspace-pairing-code.png diff --git a/devlog/_plan/260912_thinking_contract/000_plan.md b/devlog/_fin/260912_thinking_contract/000_plan.md similarity index 100% rename from devlog/_plan/260912_thinking_contract/000_plan.md rename to devlog/_fin/260912_thinking_contract/000_plan.md diff --git a/devlog/_plan/260912_thinking_contract/001_sources.md b/devlog/_fin/260912_thinking_contract/001_sources.md similarity index 100% rename from devlog/_plan/260912_thinking_contract/001_sources.md rename to devlog/_fin/260912_thinking_contract/001_sources.md diff --git a/devlog/_plan/260912_thinking_contract/010_presentation.md b/devlog/_fin/260912_thinking_contract/010_presentation.md similarity index 100% rename from devlog/_plan/260912_thinking_contract/010_presentation.md rename to devlog/_fin/260912_thinking_contract/010_presentation.md diff --git a/devlog/_plan/260912_thinking_contract/020_transport_hint.md b/devlog/_fin/260912_thinking_contract/020_transport_hint.md similarity index 100% rename from devlog/_plan/260912_thinking_contract/020_transport_hint.md rename to devlog/_fin/260912_thinking_contract/020_transport_hint.md diff --git a/devlog/_plan/260912_thinking_contract/030_spark.md b/devlog/_fin/260912_thinking_contract/030_spark.md similarity index 100% rename from devlog/_plan/260912_thinking_contract/030_spark.md rename to devlog/_fin/260912_thinking_contract/030_spark.md diff --git a/devlog/_plan/260912_thinking_contract/040_delivery.md b/devlog/_fin/260912_thinking_contract/040_delivery.md similarity index 100% rename from devlog/_plan/260912_thinking_contract/040_delivery.md rename to devlog/_fin/260912_thinking_contract/040_delivery.md diff --git a/devlog/_plan/260912_thinking_contract/050_refresh.md b/devlog/_fin/260912_thinking_contract/050_refresh.md similarity index 100% rename from devlog/_plan/260912_thinking_contract/050_refresh.md rename to devlog/_fin/260912_thinking_contract/050_refresh.md diff --git a/devlog/_plan/260912_v2_contracts/000_plan.md b/devlog/_fin/260912_v2_contracts/000_plan.md similarity index 100% rename from devlog/_plan/260912_v2_contracts/000_plan.md rename to devlog/_fin/260912_v2_contracts/000_plan.md diff --git a/devlog/_plan/260912_v2_contracts/010_plaintext.md b/devlog/_fin/260912_v2_contracts/010_plaintext.md similarity index 100% rename from devlog/_plan/260912_v2_contracts/010_plaintext.md rename to devlog/_fin/260912_v2_contracts/010_plaintext.md diff --git a/devlog/_plan/260912_v2_contracts/020_recovery.md b/devlog/_fin/260912_v2_contracts/020_recovery.md similarity index 100% rename from devlog/_plan/260912_v2_contracts/020_recovery.md rename to devlog/_fin/260912_v2_contracts/020_recovery.md diff --git a/devlog/_plan/260912_v2_contracts/030_native_identity.md b/devlog/_fin/260912_v2_contracts/030_native_identity.md similarity index 100% rename from devlog/_plan/260912_v2_contracts/030_native_identity.md rename to devlog/_fin/260912_v2_contracts/030_native_identity.md diff --git a/devlog/_plan/260912_v2_contracts/040_verification.md b/devlog/_fin/260912_v2_contracts/040_verification.md similarity index 100% rename from devlog/_plan/260912_v2_contracts/040_verification.md rename to devlog/_fin/260912_v2_contracts/040_verification.md diff --git a/devlog/_plan/260912_v2_contracts/050_resume_evidence.md b/devlog/_fin/260912_v2_contracts/050_resume_evidence.md similarity index 100% rename from devlog/_plan/260912_v2_contracts/050_resume_evidence.md rename to devlog/_fin/260912_v2_contracts/050_resume_evidence.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/000_plan.md b/devlog/_fin/260912_zcode_protocol_and_catalog/000_plan.md similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/000_plan.md rename to devlog/_fin/260912_zcode_protocol_and_catalog/000_plan.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/001_research_zai_model_facts.md b/devlog/_fin/260912_zcode_protocol_and_catalog/001_research_zai_model_facts.md similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/001_research_zai_model_facts.md rename to devlog/_fin/260912_zcode_protocol_and_catalog/001_research_zai_model_facts.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/002_research_zcode_bundle_schema.md b/devlog/_fin/260912_zcode_protocol_and_catalog/002_research_zcode_bundle_schema.md similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/002_research_zcode_bundle_schema.md rename to devlog/_fin/260912_zcode_protocol_and_catalog/002_research_zcode_bundle_schema.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/003_research_ocx_internals.md b/devlog/_fin/260912_zcode_protocol_and_catalog/003_research_ocx_internals.md similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/003_research_ocx_internals.md rename to devlog/_fin/260912_zcode_protocol_and_catalog/003_research_ocx_internals.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/010_wp2_zcode_export_responses.md b/devlog/_fin/260912_zcode_protocol_and_catalog/010_wp2_zcode_export_responses.md similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/010_wp2_zcode_export_responses.md rename to devlog/_fin/260912_zcode_protocol_and_catalog/010_wp2_zcode_export_responses.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/020_wp3_glm53_flash_modalities.md b/devlog/_fin/260912_zcode_protocol_and_catalog/020_wp3_glm53_flash_modalities.md similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/020_wp3_glm53_flash_modalities.md rename to devlog/_fin/260912_zcode_protocol_and_catalog/020_wp3_glm53_flash_modalities.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/030_wp4_zai_responses_default.md b/devlog/_fin/260912_zcode_protocol_and_catalog/030_wp4_zai_responses_default.md similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/030_wp4_zai_responses_default.md rename to devlog/_fin/260912_zcode_protocol_and_catalog/030_wp4_zai_responses_default.md diff --git a/devlog/_plan/260912_zcode_protocol_and_catalog/evidence/zai-responses-models.json b/devlog/_fin/260912_zcode_protocol_and_catalog/evidence/zai-responses-models.json similarity index 100% rename from devlog/_plan/260912_zcode_protocol_and_catalog/evidence/zai-responses-models.json rename to devlog/_fin/260912_zcode_protocol_and_catalog/evidence/zai-responses-models.json diff --git a/devlog/_plan/260913_chat_refusal_translator/000_plan.md b/devlog/_fin/260913_chat_refusal_translator/000_plan.md similarity index 100% rename from devlog/_plan/260913_chat_refusal_translator/000_plan.md rename to devlog/_fin/260913_chat_refusal_translator/000_plan.md diff --git a/devlog/_plan/260913_chat_refusal_translator/010_rootcause_evidence.md b/devlog/_fin/260913_chat_refusal_translator/010_rootcause_evidence.md similarity index 100% rename from devlog/_plan/260913_chat_refusal_translator/010_rootcause_evidence.md rename to devlog/_fin/260913_chat_refusal_translator/010_rootcause_evidence.md diff --git a/devlog/_plan/260913_chat_refusal_translator/020_fix_refusal_scope.md b/devlog/_fin/260913_chat_refusal_translator/020_fix_refusal_scope.md similarity index 100% rename from devlog/_plan/260913_chat_refusal_translator/020_fix_refusal_scope.md rename to devlog/_fin/260913_chat_refusal_translator/020_fix_refusal_scope.md diff --git a/devlog/_fin/260913_contributor_carry_train/000_plan.md b/devlog/_fin/260913_contributor_carry_train/000_plan.md index d3b03d7fe3e..797255df8eb 100644 --- a/devlog/_fin/260913_contributor_carry_train/000_plan.md +++ b/devlog/_fin/260913_contributor_carry_train/000_plan.md @@ -10,7 +10,7 @@ request owning them. The goal also closes everything those landings actually resolve. `origin/dev` was `2df82f412` when this roadmap was written. This unit follows the 36-PR lane-stack merge in -`devlog/_plan/260913_lane_stack_merge/`, which landed the maintainer-authored +`devlog/_fin/260913_lane_stack_merge/`, which landed the maintainer-authored backlog. That batch is the precedent for the mechanism here; what changes is the authorship. Every branch in this train belongs to someone else, so attribution is a correctness requirement rather than a courtesy. diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/000_plan.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/000_plan.md similarity index 100% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/000_plan.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/000_plan.md diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/001_platform_topology.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/001_platform_topology.md similarity index 100% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/001_platform_topology.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/001_platform_topology.md diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/002_audit_findings.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/002_audit_findings.md similarity index 100% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/002_audit_findings.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/002_audit_findings.md diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/010_phase1_shared_restart_surface.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/010_phase1_shared_restart_surface.md similarity index 100% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/010_phase1_shared_restart_surface.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/010_phase1_shared_restart_surface.md diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/020_phase2_detached_self_handoff.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/020_phase2_detached_self_handoff.md similarity index 100% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/020_phase2_detached_self_handoff.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/020_phase2_detached_self_handoff.md diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/030_phase3_contract_merge.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/030_phase3_contract_merge.md similarity index 99% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/030_phase3_contract_merge.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/030_phase3_contract_merge.md index 241974a7bef..d09bae27c2e 100644 --- a/devlog/_plan/260913_cross_platform_desktop_app_restart/030_phase3_contract_merge.md +++ b/devlog/_fin/260913_cross_platform_desktop_app_restart/030_phase3_contract_merge.md @@ -25,7 +25,7 @@ quit. The operator's in-flight turn is interrupted, recovered, and interrupted a So when a desktop restart is going to run, app-servers that are **members of the discovered desktop tree** are excluded from the SIGTERM pass. Quitting the app terminates them anyway. Standalone app-servers — the npm `codex app-server` pair that -`devlog/_plan/260826_restart_codex_linux_survivor/000_repro_and_root_cause.md` +`devlog/_fin/260826_restart_codex_linux_survivor/000_repro_and_root_cause.md` documents, and SSH bootstraps — are not members and are still signalled. `afterCatalogWriteHandleAppServers` gains one option: diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/040_phase4_verification_and_delivery.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/040_phase4_verification_and_delivery.md similarity index 100% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/040_phase4_verification_and_delivery.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/040_phase4_verification_and_delivery.md diff --git a/devlog/_plan/260913_cross_platform_desktop_app_restart/041_execution_record.md b/devlog/_fin/260913_cross_platform_desktop_app_restart/041_execution_record.md similarity index 100% rename from devlog/_plan/260913_cross_platform_desktop_app_restart/041_execution_record.md rename to devlog/_fin/260913_cross_platform_desktop_app_restart/041_execution_record.md diff --git a/devlog/_plan/260913_devin_landing_and_caching/000_plan.md b/devlog/_fin/260913_devin_landing_and_caching/000_plan.md similarity index 99% rename from devlog/_plan/260913_devin_landing_and_caching/000_plan.md rename to devlog/_fin/260913_devin_landing_and_caching/000_plan.md index 7c91cc19590..e71adec2cdb 100644 --- a/devlog/_plan/260913_devin_landing_and_caching/000_plan.md +++ b/devlog/_fin/260913_devin_landing_and_caching/000_plan.md @@ -70,7 +70,7 @@ wp0 (이 문서) ──┬── wp1 #4420 carry (독립) | wp | 문서 | 산출물 | 쓰기 범위 | |---|---|---|---| -| wp0 | 이 문서 + 010/020/030/040 | 로드맵 | `devlog/_plan/260913_devin_landing_and_caching/` | +| wp0 | 이 문서 + 010/020/030/040 | 로드맵 | `devlog/_fin/260913_devin_landing_and_caching/` | | wp1 | `010_wp1_swe2_effort_carry.md` | carry PR → merge | `src/adapters/devin.ts`, `tests/providers/devin-adapter.test.ts`, docs/structure | | wp2 | `020_wp2_devin_cli_fixture_carry.md` | carry PR → merge | `tests/providers/devin-cli-login.test.ts` | | wp3 | `030_wp3_ttfb_generation_deadline.md` | 버그픽스 PR → merge | `src/adapters/devin/cloud-direct/chat.ts`, `src/adapters/devin.ts`, 신규 테스트 | diff --git a/devlog/_plan/260913_devin_landing_and_caching/010_wp1_swe2_effort_carry.md b/devlog/_fin/260913_devin_landing_and_caching/010_wp1_swe2_effort_carry.md similarity index 100% rename from devlog/_plan/260913_devin_landing_and_caching/010_wp1_swe2_effort_carry.md rename to devlog/_fin/260913_devin_landing_and_caching/010_wp1_swe2_effort_carry.md diff --git a/devlog/_plan/260913_devin_landing_and_caching/020_wp2_devin_cli_fixture_carry.md b/devlog/_fin/260913_devin_landing_and_caching/020_wp2_devin_cli_fixture_carry.md similarity index 100% rename from devlog/_plan/260913_devin_landing_and_caching/020_wp2_devin_cli_fixture_carry.md rename to devlog/_fin/260913_devin_landing_and_caching/020_wp2_devin_cli_fixture_carry.md diff --git a/devlog/_plan/260913_devin_landing_and_caching/030_wp3_ttfb_generation_deadline.md b/devlog/_fin/260913_devin_landing_and_caching/030_wp3_ttfb_generation_deadline.md similarity index 100% rename from devlog/_plan/260913_devin_landing_and_caching/030_wp3_ttfb_generation_deadline.md rename to devlog/_fin/260913_devin_landing_and_caching/030_wp3_ttfb_generation_deadline.md diff --git a/devlog/_plan/260913_devin_landing_and_caching/040_wp4_devin_prompt_cache_and_identity.md b/devlog/_fin/260913_devin_landing_and_caching/040_wp4_devin_prompt_cache_and_identity.md similarity index 100% rename from devlog/_plan/260913_devin_landing_and_caching/040_wp4_devin_prompt_cache_and_identity.md rename to devlog/_fin/260913_devin_landing_and_caching/040_wp4_devin_prompt_cache_and_identity.md diff --git a/devlog/_plan/260913_devin_landing_and_caching/050_wp5_effort_suffix_unification.md b/devlog/_fin/260913_devin_landing_and_caching/050_wp5_effort_suffix_unification.md similarity index 100% rename from devlog/_plan/260913_devin_landing_and_caching/050_wp5_effort_suffix_unification.md rename to devlog/_fin/260913_devin_landing_and_caching/050_wp5_effort_suffix_unification.md diff --git a/devlog/_plan/260913_devin_landing_and_caching/060_wp6_assign_model_router.md b/devlog/_fin/260913_devin_landing_and_caching/060_wp6_assign_model_router.md similarity index 100% rename from devlog/_plan/260913_devin_landing_and_caching/060_wp6_assign_model_router.md rename to devlog/_fin/260913_devin_landing_and_caching/060_wp6_assign_model_router.md diff --git a/devlog/_plan/260913_devin_provider_merge/000_plan.md b/devlog/_fin/260913_devin_provider_merge/000_plan.md similarity index 100% rename from devlog/_plan/260913_devin_provider_merge/000_plan.md rename to devlog/_fin/260913_devin_provider_merge/000_plan.md diff --git a/devlog/_plan/260913_devin_provider_merge/010_wp1_core_merge.md b/devlog/_fin/260913_devin_provider_merge/010_wp1_core_merge.md similarity index 100% rename from devlog/_plan/260913_devin_provider_merge/010_wp1_core_merge.md rename to devlog/_fin/260913_devin_provider_merge/010_wp1_core_merge.md diff --git a/devlog/_plan/260913_devin_provider_merge/020_wp2_migration.md b/devlog/_fin/260913_devin_provider_merge/020_wp2_migration.md similarity index 100% rename from devlog/_plan/260913_devin_provider_merge/020_wp2_migration.md rename to devlog/_fin/260913_devin_provider_merge/020_wp2_migration.md diff --git a/devlog/_plan/260913_devin_provider_merge/030_wp3_surface_sync.md b/devlog/_fin/260913_devin_provider_merge/030_wp3_surface_sync.md similarity index 100% rename from devlog/_plan/260913_devin_provider_merge/030_wp3_surface_sync.md rename to devlog/_fin/260913_devin_provider_merge/030_wp3_surface_sync.md diff --git a/devlog/_plan/260913_devin_provider_merge/040_wp4_pr.md b/devlog/_fin/260913_devin_provider_merge/040_wp4_pr.md similarity index 100% rename from devlog/_plan/260913_devin_provider_merge/040_wp4_pr.md rename to devlog/_fin/260913_devin_provider_merge/040_wp4_pr.md diff --git a/devlog/_plan/260913_godfile_round1/000_plan.md b/devlog/_fin/260913_godfile_round1/000_plan.md similarity index 100% rename from devlog/_plan/260913_godfile_round1/000_plan.md rename to devlog/_fin/260913_godfile_round1/000_plan.md diff --git a/devlog/_plan/260913_lane_stack_merge/000_plan.md b/devlog/_fin/260913_lane_stack_merge/000_plan.md similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/000_plan.md rename to devlog/_fin/260913_lane_stack_merge/000_plan.md diff --git a/devlog/_plan/260913_lane_stack_merge/001_merge_topology.md b/devlog/_fin/260913_lane_stack_merge/001_merge_topology.md similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/001_merge_topology.md rename to devlog/_fin/260913_lane_stack_merge/001_merge_topology.md diff --git a/devlog/_plan/260913_lane_stack_merge/002_merge_mechanics.md b/devlog/_fin/260913_lane_stack_merge/002_merge_mechanics.md similarity index 97% rename from devlog/_plan/260913_lane_stack_merge/002_merge_mechanics.md rename to devlog/_fin/260913_lane_stack_merge/002_merge_mechanics.md index 57935bee93a..861e3f6873c 100644 --- a/devlog/_plan/260913_lane_stack_merge/002_merge_mechanics.md +++ b/devlog/_fin/260913_lane_stack_merge/002_merge_mechanics.md @@ -53,7 +53,7 @@ dashboard, not running `bun run test`. Images need a hosted URL to render in a description, so the PNGs are committed into the lane's devlog unit under `screenshots/` and referenced by raw link. -`devlog/_plan/260912_audio_apis_stack/screenshots/` is the existing precedent. +`devlog/_fin/260912_audio_apis_stack/screenshots/` is the existing precedent. The screenshot commit rides along with the tip's final `origin/dev` re-merge so the lane pays for one CI run rather than one per commit. diff --git a/devlog/_plan/260913_lane_stack_merge/010_wave1.md b/devlog/_fin/260913_lane_stack_merge/010_wave1.md similarity index 98% rename from devlog/_plan/260913_lane_stack_merge/010_wave1.md rename to devlog/_fin/260913_lane_stack_merge/010_wave1.md index dc49e84c851..021aec6c19e 100644 --- a/devlog/_plan/260913_lane_stack_merge/010_wave1.md +++ b/devlog/_fin/260913_lane_stack_merge/010_wave1.md @@ -13,7 +13,7 @@ Each runs as its own worktree-backed thread owned by `xai/grok-4.6`. | 2 | #4392 | `codex/audio-streaming` | skip | | 3 | #4395 | `codex/audio-connections` | tip, full run | -Internal order is fixed by `devlog/_plan/260912_audio_apis_stack`: 010 +Internal order is fixed by `devlog/_fin/260912_audio_apis_stack`: 010 transcription, 020 streaming, 030 dashboard. #4391 and #4392 share `src/providers/openai-sidecar.ts`, `src/server/audio-upstream.ts`, and `src/server/live.ts`, so reordering them guarantees conflicts. diff --git a/devlog/_plan/260913_lane_stack_merge/020_wave2.md b/devlog/_fin/260913_lane_stack_merge/020_wave2.md similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/020_wave2.md rename to devlog/_fin/260913_lane_stack_merge/020_wave2.md diff --git a/devlog/_plan/260913_lane_stack_merge/030_tip_and_regression.md b/devlog/_fin/260913_lane_stack_merge/030_tip_and_regression.md similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/030_tip_and_regression.md rename to devlog/_fin/260913_lane_stack_merge/030_tip_and_regression.md diff --git a/devlog/_plan/260913_lane_stack_merge/040_issue_closure.md b/devlog/_fin/260913_lane_stack_merge/040_issue_closure.md similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/040_issue_closure.md rename to devlog/_fin/260913_lane_stack_merge/040_issue_closure.md diff --git a/devlog/_plan/260913_lane_stack_merge/050_outcome.md b/devlog/_fin/260913_lane_stack_merge/050_outcome.md similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/050_outcome.md rename to devlog/_fin/260913_lane_stack_merge/050_outcome.md diff --git a/devlog/_plan/260913_lane_stack_merge/screenshots/codex-account-pool.png b/devlog/_fin/260913_lane_stack_merge/screenshots/codex-account-pool.png similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/screenshots/codex-account-pool.png rename to devlog/_fin/260913_lane_stack_merge/screenshots/codex-account-pool.png diff --git a/devlog/_plan/260913_lane_stack_merge/screenshots/dashboard-overview.png b/devlog/_fin/260913_lane_stack_merge/screenshots/dashboard-overview.png similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/screenshots/dashboard-overview.png rename to devlog/_fin/260913_lane_stack_merge/screenshots/dashboard-overview.png diff --git a/devlog/_plan/260913_lane_stack_merge/screenshots/integrations-clients.png b/devlog/_fin/260913_lane_stack_merge/screenshots/integrations-clients.png similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/screenshots/integrations-clients.png rename to devlog/_fin/260913_lane_stack_merge/screenshots/integrations-clients.png diff --git a/devlog/_plan/260913_lane_stack_merge/screenshots/remote-workspace.png b/devlog/_fin/260913_lane_stack_merge/screenshots/remote-workspace.png similarity index 100% rename from devlog/_plan/260913_lane_stack_merge/screenshots/remote-workspace.png rename to devlog/_fin/260913_lane_stack_merge/screenshots/remote-workspace.png diff --git a/devlog/_plan/260913_missing_coauthor_credits/000_plan.md b/devlog/_fin/260913_missing_coauthor_credits/000_plan.md similarity index 98% rename from devlog/_plan/260913_missing_coauthor_credits/000_plan.md rename to devlog/_fin/260913_missing_coauthor_credits/000_plan.md index 97c78e5d348..c8725127833 100644 --- a/devlog/_plan/260913_missing_coauthor_credits/000_plan.md +++ b/devlog/_fin/260913_missing_coauthor_credits/000_plan.md @@ -31,7 +31,7 @@ on the page: **#3988 by @rrmlima**, merged through **#4031**. - **Stop condition:** #3988 is on `CREDITS.md`, the PR is merged to `dev`, or NOOP if a later origin/dev commit already repaired it. - **Memory artifact:** this unit - `devlog/_plan/260913_missing_coauthor_credits/` plus + `devlog/_fin/260913_missing_coauthor_credits/` plus `.codexclaw/evidence/4c876c16-4cd9-4a26-bcd5-743ccaa1b137/credits-scan/`. - **Expected terminal outcomes:** DONE (row + merged PR); NOOP (already repaired); BLOCKED (merge protection); UNSAFE (history rewrite / raw email in tree). diff --git a/devlog/_plan/260913_missing_coauthor_credits/001_scan_evidence.md b/devlog/_fin/260913_missing_coauthor_credits/001_scan_evidence.md similarity index 100% rename from devlog/_plan/260913_missing_coauthor_credits/001_scan_evidence.md rename to devlog/_fin/260913_missing_coauthor_credits/001_scan_evidence.md diff --git a/devlog/_plan/260913_missing_coauthor_credits/010_inventory_freeze.md b/devlog/_fin/260913_missing_coauthor_credits/010_inventory_freeze.md similarity index 100% rename from devlog/_plan/260913_missing_coauthor_credits/010_inventory_freeze.md rename to devlog/_fin/260913_missing_coauthor_credits/010_inventory_freeze.md diff --git a/devlog/_plan/260913_missing_coauthor_credits/020_credits_update.md b/devlog/_fin/260913_missing_coauthor_credits/020_credits_update.md similarity index 100% rename from devlog/_plan/260913_missing_coauthor_credits/020_credits_update.md rename to devlog/_fin/260913_missing_coauthor_credits/020_credits_update.md diff --git a/devlog/_plan/260913_missing_coauthor_credits/030_pr_merge.md b/devlog/_fin/260913_missing_coauthor_credits/030_pr_merge.md similarity index 100% rename from devlog/_plan/260913_missing_coauthor_credits/030_pr_merge.md rename to devlog/_fin/260913_missing_coauthor_credits/030_pr_merge.md diff --git a/devlog/_plan/260913_model_availability_errors/000_summary.md b/devlog/_fin/260913_model_availability_errors/000_summary.md similarity index 100% rename from devlog/_plan/260913_model_availability_errors/000_summary.md rename to devlog/_fin/260913_model_availability_errors/000_summary.md diff --git a/devlog/_plan/260913_model_picker_grouping_and_effort/000_plan.md b/devlog/_fin/260913_model_picker_grouping_and_effort/000_plan.md similarity index 100% rename from devlog/_plan/260913_model_picker_grouping_and_effort/000_plan.md rename to devlog/_fin/260913_model_picker_grouping_and_effort/000_plan.md diff --git a/devlog/_plan/260913_model_picker_grouping_and_effort/010_devin_effort_ladder.md b/devlog/_fin/260913_model_picker_grouping_and_effort/010_devin_effort_ladder.md similarity index 100% rename from devlog/_plan/260913_model_picker_grouping_and_effort/010_devin_effort_ladder.md rename to devlog/_fin/260913_model_picker_grouping_and_effort/010_devin_effort_ladder.md diff --git a/devlog/_plan/260914_carry_pr4528/000_plan.md b/devlog/_fin/260914_carry_pr4528/000_plan.md similarity index 100% rename from devlog/_plan/260914_carry_pr4528/000_plan.md rename to devlog/_fin/260914_carry_pr4528/000_plan.md diff --git a/devlog/_plan/260914_carry_pr4528/010_phase1.md b/devlog/_fin/260914_carry_pr4528/010_phase1.md similarity index 100% rename from devlog/_plan/260914_carry_pr4528/010_phase1.md rename to devlog/_fin/260914_carry_pr4528/010_phase1.md diff --git a/devlog/_plan/260914_codex_history_preflight_scope/000_plan.md b/devlog/_fin/260914_codex_history_preflight_scope/000_plan.md similarity index 100% rename from devlog/_plan/260914_codex_history_preflight_scope/000_plan.md rename to devlog/_fin/260914_codex_history_preflight_scope/000_plan.md diff --git a/devlog/_plan/260914_codex_history_preflight_scope/010_rootcause_evidence.md b/devlog/_fin/260914_codex_history_preflight_scope/010_rootcause_evidence.md similarity index 100% rename from devlog/_plan/260914_codex_history_preflight_scope/010_rootcause_evidence.md rename to devlog/_fin/260914_codex_history_preflight_scope/010_rootcause_evidence.md diff --git a/devlog/_plan/260914_codex_history_preflight_scope/020_fix_and_contract_change.md b/devlog/_fin/260914_codex_history_preflight_scope/020_fix_and_contract_change.md similarity index 100% rename from devlog/_plan/260914_codex_history_preflight_scope/020_fix_and_contract_change.md rename to devlog/_fin/260914_codex_history_preflight_scope/020_fix_and_contract_change.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/000_unit.md b/devlog/_fin/260914_cost_guard_stabilization/000_unit.md similarity index 98% rename from devlog/_plan/260914_cost_guard_stabilization/000_unit.md rename to devlog/_fin/260914_cost_guard_stabilization/000_unit.md index 87c6cffe368..a14fcce0662 100644 --- a/devlog/_plan/260914_cost_guard_stabilization/000_unit.md +++ b/devlog/_fin/260914_cost_guard_stabilization/000_unit.md @@ -65,7 +65,7 @@ routing mistake into a cost event; they ship after the incident is closed. ## Relationship to #4581 -The L2 lane unit `devlog/_plan/260914_l2_pool_routing_cache/010_cache_safe_rebind.md` +The L2 lane unit `devlog/_fin/260914_l2_pool_routing_cache/010_cache_safe_rebind.md` reached the headroom floor by a different route -- keep the threshold eviction rule, constrain the destination -- and landed on `dev` as #4581 while this unit was in flight. That analysis is correct and this work **builds on it** rather than beside diff --git a/devlog/_plan/260914_cost_guard_stabilization/010_bound_binding_policy.md b/devlog/_fin/260914_cost_guard_stabilization/010_bound_binding_policy.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/010_bound_binding_policy.md rename to devlog/_fin/260914_cost_guard_stabilization/010_bound_binding_policy.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/020_backoff_preserves_binding.md b/devlog/_fin/260914_cost_guard_stabilization/020_backoff_preserves_binding.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/020_backoff_preserves_binding.md rename to devlog/_fin/260914_cost_guard_stabilization/020_backoff_preserves_binding.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/030_move_reason_evidence.md b/devlog/_fin/260914_cost_guard_stabilization/030_move_reason_evidence.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/030_move_reason_evidence.md rename to devlog/_fin/260914_cost_guard_stabilization/030_move_reason_evidence.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/040_send_budget.md b/devlog/_fin/260914_cost_guard_stabilization/040_send_budget.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/040_send_budget.md rename to devlog/_fin/260914_cost_guard_stabilization/040_send_budget.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/050_worker_isolation.md b/devlog/_fin/260914_cost_guard_stabilization/050_worker_isolation.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/050_worker_isolation.md rename to devlog/_fin/260914_cost_guard_stabilization/050_worker_isolation.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/060_quota_cache_domains.md b/devlog/_fin/260914_cost_guard_stabilization/060_quota_cache_domains.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/060_quota_cache_domains.md rename to devlog/_fin/260914_cost_guard_stabilization/060_quota_cache_domains.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/070_delivery.md b/devlog/_fin/260914_cost_guard_stabilization/070_delivery.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/070_delivery.md rename to devlog/_fin/260914_cost_guard_stabilization/070_delivery.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/080_codex_cache_reinforcement.md b/devlog/_fin/260914_cost_guard_stabilization/080_codex_cache_reinforcement.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/080_codex_cache_reinforcement.md rename to devlog/_fin/260914_cost_guard_stabilization/080_codex_cache_reinforcement.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/090_remaining_stack.md b/devlog/_fin/260914_cost_guard_stabilization/090_remaining_stack.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/090_remaining_stack.md rename to devlog/_fin/260914_cost_guard_stabilization/090_remaining_stack.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/100_dev_tip_closure_assessment.md b/devlog/_fin/260914_cost_guard_stabilization/100_dev_tip_closure_assessment.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/100_dev_tip_closure_assessment.md rename to devlog/_fin/260914_cost_guard_stabilization/100_dev_tip_closure_assessment.md diff --git a/devlog/_plan/260914_cost_guard_stabilization/110_spend_ceiling_configuration.md b/devlog/_fin/260914_cost_guard_stabilization/110_spend_ceiling_configuration.md similarity index 100% rename from devlog/_plan/260914_cost_guard_stabilization/110_spend_ceiling_configuration.md rename to devlog/_fin/260914_cost_guard_stabilization/110_spend_ceiling_configuration.md diff --git a/devlog/_plan/260914_godfile_round2/000_plan.md b/devlog/_fin/260914_godfile_round2/000_plan.md similarity index 98% rename from devlog/_plan/260914_godfile_round2/000_plan.md rename to devlog/_fin/260914_godfile_round2/000_plan.md index ffe4ed88bf2..2c323314153 100644 --- a/devlog/_plan/260914_godfile_round2/000_plan.md +++ b/devlog/_fin/260914_godfile_round2/000_plan.md @@ -14,7 +14,7 @@ | Non-goals | 기능 정책 변경, 버그 수정 동반, `tests/` 33개 분해, i18n·생성물·devlog 분해, `core.ts`·`server/index.ts`·`auth-api.ts`·`providers/registry.ts` 본체(별도 단위) | | Verifier | hosted CI. 수동 브랜치 체인의 tip PR 실행을 레인 게이트로 쓴다(DEV-STACK-08, owner 승인) | | Stop condition | 6개 사이클의 D가 모두 닫히고 레인이 `dev`에 머지될 때 | -| Memory artifact | 이 단위(`devlog/_plan/260914_godfile_round2/`)와 각 PR 본문 | +| Memory artifact | 이 단위(`devlog/_fin/260914_godfile_round2/`)와 각 PR 본문 | | Expected outcomes | 성공 = 7파일 facade화 + 래칫 녹색 / 차단 = tip CI 적색이 반복되고 원인이 분해 외부일 때 | | Escalation | tip CI가 분해와 무관한 이유로 적색이거나, 래칫 기준선이 다른 작업과 충돌할 때 | diff --git a/devlog/_plan/260914_godfile_round2/010_phase1_file_size_ratchet.md b/devlog/_fin/260914_godfile_round2/010_phase1_file_size_ratchet.md similarity index 99% rename from devlog/_plan/260914_godfile_round2/010_phase1_file_size_ratchet.md rename to devlog/_fin/260914_godfile_round2/010_phase1_file_size_ratchet.md index c073f95f795..f48eef637dc 100644 --- a/devlog/_plan/260914_godfile_round2/010_phase1_file_size_ratchet.md +++ b/devlog/_fin/260914_godfile_round2/010_phase1_file_size_ratchet.md @@ -638,7 +638,7 @@ describe("file-size ratchet: scan filter", () => { // Prefix and exact exclusions. gui/dist without a trailing slash is listed // in the contract alongside gui/dist/ children. - expect(isScannedPath("devlog/_plan/260914_godfile_round2/010.md")).toBe(false); + expect(isScannedPath("devlog/_fin/260914_godfile_round2/010.md")).toBe(false); expect(isScannedPath("assets/banner.png")).toBe(false); expect(isScannedPath("docs-site/public/favicon.png")).toBe(false); expect(isScannedPath("docs-site/src/assets/og.png")).toBe(false); diff --git a/devlog/_plan/260914_godfile_round2/020_phase2_state_and_shim.md b/devlog/_fin/260914_godfile_round2/020_phase2_state_and_shim.md similarity index 100% rename from devlog/_plan/260914_godfile_round2/020_phase2_state_and_shim.md rename to devlog/_fin/260914_godfile_round2/020_phase2_state_and_shim.md diff --git a/devlog/_plan/260914_godfile_round2/030_phase3_inject_and_catalog_sync.md b/devlog/_fin/260914_godfile_round2/030_phase3_inject_and_catalog_sync.md similarity index 100% rename from devlog/_plan/260914_godfile_round2/030_phase3_inject_and_catalog_sync.md rename to devlog/_fin/260914_godfile_round2/030_phase3_inject_and_catalog_sync.md diff --git a/devlog/_plan/260914_godfile_round2/040_phase4_routing_and_quota.md b/devlog/_fin/260914_godfile_round2/040_phase4_routing_and_quota.md similarity index 100% rename from devlog/_plan/260914_godfile_round2/040_phase4_routing_and_quota.md rename to devlog/_fin/260914_godfile_round2/040_phase4_routing_and_quota.md diff --git a/devlog/_plan/260914_godfile_round2/050_phase5_config.md b/devlog/_fin/260914_godfile_round2/050_phase5_config.md similarity index 100% rename from devlog/_plan/260914_godfile_round2/050_phase5_config.md rename to devlog/_fin/260914_godfile_round2/050_phase5_config.md diff --git a/devlog/_plan/260914_l2_pool_routing_cache/000_unit.md b/devlog/_fin/260914_l2_pool_routing_cache/000_unit.md similarity index 100% rename from devlog/_plan/260914_l2_pool_routing_cache/000_unit.md rename to devlog/_fin/260914_l2_pool_routing_cache/000_unit.md diff --git a/devlog/_plan/260914_l2_pool_routing_cache/010_cache_safe_rebind.md b/devlog/_fin/260914_l2_pool_routing_cache/010_cache_safe_rebind.md similarity index 100% rename from devlog/_plan/260914_l2_pool_routing_cache/010_cache_safe_rebind.md rename to devlog/_fin/260914_l2_pool_routing_cache/010_cache_safe_rebind.md diff --git a/devlog/_plan/260914_l2_pool_routing_cache/020_routing_adoption.md b/devlog/_fin/260914_l2_pool_routing_cache/020_routing_adoption.md similarity index 100% rename from devlog/_plan/260914_l2_pool_routing_cache/020_routing_adoption.md rename to devlog/_fin/260914_l2_pool_routing_cache/020_routing_adoption.md diff --git a/devlog/_plan/260914_l2_pool_routing_cache/030_delivery.md b/devlog/_fin/260914_l2_pool_routing_cache/030_delivery.md similarity index 100% rename from devlog/_plan/260914_l2_pool_routing_cache/030_delivery.md rename to devlog/_fin/260914_l2_pool_routing_cache/030_delivery.md diff --git a/devlog/_plan/260914_l4_responses_media/010_roadmap.md b/devlog/_fin/260914_l4_responses_media/010_roadmap.md similarity index 100% rename from devlog/_plan/260914_l4_responses_media/010_roadmap.md rename to devlog/_fin/260914_l4_responses_media/010_roadmap.md diff --git a/devlog/_plan/260914_l5_provider_account_edges/000_plan.md b/devlog/_fin/260914_l5_provider_account_edges/000_plan.md similarity index 100% rename from devlog/_plan/260914_l5_provider_account_edges/000_plan.md rename to devlog/_fin/260914_l5_provider_account_edges/000_plan.md diff --git a/devlog/_plan/260914_l5_provider_account_edges/010_wp1_account_lifecycle_edges.md b/devlog/_fin/260914_l5_provider_account_edges/010_wp1_account_lifecycle_edges.md similarity index 100% rename from devlog/_plan/260914_l5_provider_account_edges/010_wp1_account_lifecycle_edges.md rename to devlog/_fin/260914_l5_provider_account_edges/010_wp1_account_lifecycle_edges.md diff --git a/devlog/_plan/260914_l7_web_search_bridge/000_plan.md b/devlog/_fin/260914_l7_web_search_bridge/000_plan.md similarity index 100% rename from devlog/_plan/260914_l7_web_search_bridge/000_plan.md rename to devlog/_fin/260914_l7_web_search_bridge/000_plan.md diff --git a/devlog/_plan/260914_l7_web_search_bridge/010_mixed_tool_continuation.md b/devlog/_fin/260914_l7_web_search_bridge/010_mixed_tool_continuation.md similarity index 100% rename from devlog/_plan/260914_l7_web_search_bridge/010_mixed_tool_continuation.md rename to devlog/_fin/260914_l7_web_search_bridge/010_mixed_tool_continuation.md diff --git a/devlog/_plan/260914_l7_web_search_bridge/020_alpha_search_fallback.md b/devlog/_fin/260914_l7_web_search_bridge/020_alpha_search_fallback.md similarity index 100% rename from devlog/_plan/260914_l7_web_search_bridge/020_alpha_search_fallback.md rename to devlog/_fin/260914_l7_web_search_bridge/020_alpha_search_fallback.md diff --git a/devlog/_plan/260914_provider_parity_stack/000_plan.md b/devlog/_fin/260914_provider_parity_stack/000_plan.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/000_plan.md rename to devlog/_fin/260914_provider_parity_stack/000_plan.md diff --git a/devlog/_plan/260914_provider_parity_stack/001_audit_evidence.md b/devlog/_fin/260914_provider_parity_stack/001_audit_evidence.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/001_audit_evidence.md rename to devlog/_fin/260914_provider_parity_stack/001_audit_evidence.md diff --git a/devlog/_plan/260914_provider_parity_stack/002_architect_dispositions.md b/devlog/_fin/260914_provider_parity_stack/002_architect_dispositions.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/002_architect_dispositions.md rename to devlog/_fin/260914_provider_parity_stack/002_architect_dispositions.md diff --git a/devlog/_plan/260914_provider_parity_stack/003_blocker_corrections.md b/devlog/_fin/260914_provider_parity_stack/003_blocker_corrections.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/003_blocker_corrections.md rename to devlog/_fin/260914_provider_parity_stack/003_blocker_corrections.md diff --git a/devlog/_plan/260914_provider_parity_stack/010_phase1_ingress_normalization.md b/devlog/_fin/260914_provider_parity_stack/010_phase1_ingress_normalization.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/010_phase1_ingress_normalization.md rename to devlog/_fin/260914_provider_parity_stack/010_phase1_ingress_normalization.md diff --git a/devlog/_plan/260914_provider_parity_stack/020_phase2_chat_responses_controls.md b/devlog/_fin/260914_provider_parity_stack/020_phase2_chat_responses_controls.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/020_phase2_chat_responses_controls.md rename to devlog/_fin/260914_provider_parity_stack/020_phase2_chat_responses_controls.md diff --git a/devlog/_plan/260914_provider_parity_stack/030_phase3_provider_wire_contracts.md b/devlog/_fin/260914_provider_parity_stack/030_phase3_provider_wire_contracts.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/030_phase3_provider_wire_contracts.md rename to devlog/_fin/260914_provider_parity_stack/030_phase3_provider_wire_contracts.md diff --git a/devlog/_plan/260914_provider_parity_stack/040_phase4_modality_fidelity.md b/devlog/_fin/260914_provider_parity_stack/040_phase4_modality_fidelity.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/040_phase4_modality_fidelity.md rename to devlog/_fin/260914_provider_parity_stack/040_phase4_modality_fidelity.md diff --git a/devlog/_plan/260914_provider_parity_stack/050_residuals.md b/devlog/_fin/260914_provider_parity_stack/050_residuals.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/050_residuals.md rename to devlog/_fin/260914_provider_parity_stack/050_residuals.md diff --git a/devlog/_plan/260914_provider_parity_stack/060_direct_media_guard.md b/devlog/_fin/260914_provider_parity_stack/060_direct_media_guard.md similarity index 100% rename from devlog/_plan/260914_provider_parity_stack/060_direct_media_guard.md rename to devlog/_fin/260914_provider_parity_stack/060_direct_media_guard.md diff --git a/devlog/_plan/260914_r2l8_catalog_autorefresh/010_roadmap.md b/devlog/_fin/260914_r2l8_catalog_autorefresh/010_roadmap.md similarity index 100% rename from devlog/_plan/260914_r2l8_catalog_autorefresh/010_roadmap.md rename to devlog/_fin/260914_r2l8_catalog_autorefresh/010_roadmap.md diff --git a/devlog/_plan/260914_r2l8_catalog_autorefresh/020_issue_3377_capability_audit.md b/devlog/_fin/260914_r2l8_catalog_autorefresh/020_issue_3377_capability_audit.md similarity index 100% rename from devlog/_plan/260914_r2l8_catalog_autorefresh/020_issue_3377_capability_audit.md rename to devlog/_fin/260914_r2l8_catalog_autorefresh/020_issue_3377_capability_audit.md diff --git a/devlog/_plan/260914_regression_audit_and_release/000_audit_and_release_plan.md b/devlog/_fin/260914_regression_audit_and_release/000_audit_and_release_plan.md similarity index 100% rename from devlog/_plan/260914_regression_audit_and_release/000_audit_and_release_plan.md rename to devlog/_fin/260914_regression_audit_and_release/000_audit_and_release_plan.md diff --git a/devlog/_plan/260914_regression_audit_and_release/010_audit_findings.md b/devlog/_fin/260914_regression_audit_and_release/010_audit_findings.md similarity index 100% rename from devlog/_plan/260914_regression_audit_and_release/010_audit_findings.md rename to devlog/_fin/260914_regression_audit_and_release/010_audit_findings.md diff --git a/devlog/_plan/260914_regression_audit_and_release/020_release_runbook.md b/devlog/_fin/260914_regression_audit_and_release/020_release_runbook.md similarity index 100% rename from devlog/_plan/260914_regression_audit_and_release/020_release_runbook.md rename to devlog/_fin/260914_regression_audit_and_release/020_release_runbook.md diff --git a/devlog/_plan/260915_2560_release_train/000_roadmap.md b/devlog/_fin/260915_2560_release_train/000_roadmap.md similarity index 100% rename from devlog/_plan/260915_2560_release_train/000_roadmap.md rename to devlog/_fin/260915_2560_release_train/000_roadmap.md diff --git a/devlog/_plan/260915_2560_release_train/010_land_4683.md b/devlog/_fin/260915_2560_release_train/010_land_4683.md similarity index 100% rename from devlog/_plan/260915_2560_release_train/010_land_4683.md rename to devlog/_fin/260915_2560_release_train/010_land_4683.md diff --git a/devlog/_plan/260915_2560_release_train/020_regression_audit.md b/devlog/_fin/260915_2560_release_train/020_regression_audit.md similarity index 100% rename from devlog/_plan/260915_2560_release_train/020_regression_audit.md rename to devlog/_fin/260915_2560_release_train/020_regression_audit.md diff --git a/devlog/_plan/260915_2560_release_train/030_release.md b/devlog/_fin/260915_2560_release_train/030_release.md similarity index 100% rename from devlog/_plan/260915_2560_release_train/030_release.md rename to devlog/_fin/260915_2560_release_train/030_release.md diff --git a/devlog/_plan/260915_2560_release_train/040_release_decision.md b/devlog/_fin/260915_2560_release_train/040_release_decision.md similarity index 100% rename from devlog/_plan/260915_2560_release_train/040_release_decision.md rename to devlog/_fin/260915_2560_release_train/040_release_decision.md diff --git a/devlog/_plan/260915_godfile_round3/000_plan.md b/devlog/_fin/260915_godfile_round3/000_plan.md similarity index 100% rename from devlog/_plan/260915_godfile_round3/000_plan.md rename to devlog/_fin/260915_godfile_round3/000_plan.md diff --git a/devlog/_plan/260915_godfile_round3/010_phase1_config.md b/devlog/_fin/260915_godfile_round3/010_phase1_config.md similarity index 97% rename from devlog/_plan/260915_godfile_round3/010_phase1_config.md rename to devlog/_fin/260915_godfile_round3/010_phase1_config.md index 5690230a157..0ebaf4ae601 100644 --- a/devlog/_plan/260915_godfile_round3/010_phase1_config.md +++ b/devlog/_fin/260915_godfile_round3/010_phase1_config.md @@ -1,6 +1,6 @@ # 010 — src/config.ts 파사드 분해 (260914 050 대체 최신판) -src/config.ts 4,799줄(기준 트리 ce0ac617da)이 스키마·로드 열화·salvage·잠금·치환 쓰기·라이브 재결합을 한 파일에 들고 있어 래칫 이후에도 2,000줄을 넘긴다. 이 문서는 `devlog/_plan/260914_godfile_round2/050_phase5_config.md`를 대체하는 복붙 가능한 이동 계약이다. 그 라운드가 dev에서 이 파일에 +92줄(#4546/#4624 credentialGroups)을 더했으므로 모든 원본 행 번호를 이 트리에서 다시 잡았다. 구현자는 아래 원본 행을 새 리프로 옮기고 파사드가 기존 export 이름을 그대로 다시보내며, 소비자는 import 경로를 건드리지 않는다. create-only 경로 initializePersistedConfigIfMissing와 치환 경로 saveConfig는 공용 헬퍼로 합치지 않고 잔여 파사드에 함께 남기고, 경고 메모 세 값은 warn-memo 단일 소유 모듈로 먼저 분리하며, configSchema는 키 그룹으로 쪼개지 않는다. PR 순서는 실제 의존(salvage→schema, diagnostics→salvage/load-degrade, live-reconcile→persist)을 따라 warn-memo·독립 잎 → schema → salvage+load-degrade → mutation-lock+persist-unlocked+diagnostics → live-reconcile로 고정했다. +src/config.ts 4,799줄(기준 트리 ce0ac617da)이 스키마·로드 열화·salvage·잠금·치환 쓰기·라이브 재결합을 한 파일에 들고 있어 래칫 이후에도 2,000줄을 넘긴다. 이 문서는 `devlog/_fin/260914_godfile_round2/050_phase5_config.md`를 대체하는 복붙 가능한 이동 계약이다. 그 라운드가 dev에서 이 파일에 +92줄(#4546/#4624 credentialGroups)을 더했으므로 모든 원본 행 번호를 이 트리에서 다시 잡았다. 구현자는 아래 원본 행을 새 리프로 옮기고 파사드가 기존 export 이름을 그대로 다시보내며, 소비자는 import 경로를 건드리지 않는다. create-only 경로 initializePersistedConfigIfMissing와 치환 경로 saveConfig는 공용 헬퍼로 합치지 않고 잔여 파사드에 함께 남기고, 경고 메모 세 값은 warn-memo 단일 소유 모듈로 먼저 분리하며, configSchema는 키 그룹으로 쪼개지 않는다. PR 순서는 실제 의존(salvage→schema, diagnostics→salvage/load-degrade, live-reconcile→persist)을 따라 warn-memo·독립 잎 → schema → salvage+load-degrade → mutation-lock+persist-unlocked+diagnostics → live-reconcile로 고정했다. > 전달 형태 정정: 이 문서가 적은 브랜치 이름과 PR 개수는 실행되지 않았다. 다섯 파일이 한 워킹트리에서 동시에 작업돼 두 개의 PR로 수렴했다. 이동 계약과 함정 항목은 그대로 실행됐다. 실제 전달은 [090_outcome.md](./090_outcome.md) 를 보라. diff --git a/devlog/_plan/260915_godfile_round3/020_phase2_providers_registry.md b/devlog/_fin/260915_godfile_round3/020_phase2_providers_registry.md similarity index 100% rename from devlog/_plan/260915_godfile_round3/020_phase2_providers_registry.md rename to devlog/_fin/260915_godfile_round3/020_phase2_providers_registry.md diff --git a/devlog/_plan/260915_godfile_round3/030_phase3_codex_auth_api.md b/devlog/_fin/260915_godfile_round3/030_phase3_codex_auth_api.md similarity index 100% rename from devlog/_plan/260915_godfile_round3/030_phase3_codex_auth_api.md rename to devlog/_fin/260915_godfile_round3/030_phase3_codex_auth_api.md diff --git a/devlog/_plan/260915_godfile_round3/040_phase4_catalog_provider_fetch.md b/devlog/_fin/260915_godfile_round3/040_phase4_catalog_provider_fetch.md similarity index 100% rename from devlog/_plan/260915_godfile_round3/040_phase4_catalog_provider_fetch.md rename to devlog/_fin/260915_godfile_round3/040_phase4_catalog_provider_fetch.md diff --git a/devlog/_plan/260915_godfile_round3/050_phase5_adapters_openai_chat.md b/devlog/_fin/260915_godfile_round3/050_phase5_adapters_openai_chat.md similarity index 100% rename from devlog/_plan/260915_godfile_round3/050_phase5_adapters_openai_chat.md rename to devlog/_fin/260915_godfile_round3/050_phase5_adapters_openai_chat.md diff --git a/devlog/_plan/260915_godfile_round3/090_outcome.md b/devlog/_fin/260915_godfile_round3/090_outcome.md similarity index 100% rename from devlog/_plan/260915_godfile_round3/090_outcome.md rename to devlog/_fin/260915_godfile_round3/090_outcome.md diff --git a/devlog/_plan/260915_godfile_round5/000_plan.md b/devlog/_fin/260915_godfile_round5/000_plan.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/000_plan.md rename to devlog/_fin/260915_godfile_round5/000_plan.md diff --git a/devlog/_plan/260915_godfile_round5/010_openai_responses.md b/devlog/_fin/260915_godfile_round5/010_openai_responses.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/010_openai_responses.md rename to devlog/_fin/260915_godfile_round5/010_openai_responses.md diff --git a/devlog/_plan/260915_godfile_round5/020_bridge.md b/devlog/_fin/260915_godfile_round5/020_bridge.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/020_bridge.md rename to devlog/_fin/260915_godfile_round5/020_bridge.md diff --git a/devlog/_plan/260915_godfile_round5/030_activation_guard.md b/devlog/_fin/260915_godfile_round5/030_activation_guard.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/030_activation_guard.md rename to devlog/_fin/260915_godfile_round5/030_activation_guard.md diff --git a/devlog/_plan/260915_godfile_round5/040_server_index.md b/devlog/_fin/260915_godfile_round5/040_server_index.md similarity index 99% rename from devlog/_plan/260915_godfile_round5/040_server_index.md rename to devlog/_fin/260915_godfile_round5/040_server_index.md index 71d58bcad36..3e0e8938fd0 100644 --- a/devlog/_plan/260915_godfile_round5/040_server_index.md +++ b/devlog/_fin/260915_godfile_round5/040_server_index.md @@ -184,5 +184,5 @@ sed -n '<구간>p' src/server/index.ts # 1-91, 92-101, 199-266, 267-296, 338-3 sed -n '1481,3220p' src/server/index.ts | rg -o -w '' | sort | uniq -c # serveOptions 캡처 sed -n '2976,3219p' src/server/index.ts | rg -o -w '<동일 목록>' | sort | uniq -c # websocket 캡처 sed -n '1481,3220p' src/server/index.ts | rg -n -w 'server' # 라이브 바인딩 위치 -ls src/server/ ; ls -la devlog/_plan/260915_godfile_round5/ +ls src/server/ ; ls -la devlog/_fin/260915_godfile_round5/ ``` diff --git a/devlog/_plan/260915_godfile_round5/050_stack_and_gates.md b/devlog/_fin/260915_godfile_round5/050_stack_and_gates.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/050_stack_and_gates.md rename to devlog/_fin/260915_godfile_round5/050_stack_and_gates.md diff --git a/devlog/_plan/260915_godfile_round5/060_audit_record.md b/devlog/_fin/260915_godfile_round5/060_audit_record.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/060_audit_record.md rename to devlog/_fin/260915_godfile_round5/060_audit_record.md diff --git a/devlog/_plan/260915_godfile_round5/061_server_index_outcome.md b/devlog/_fin/260915_godfile_round5/061_server_index_outcome.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/061_server_index_outcome.md rename to devlog/_fin/260915_godfile_round5/061_server_index_outcome.md diff --git a/devlog/_plan/260915_godfile_round5/070_core_outcome.md b/devlog/_fin/260915_godfile_round5/070_core_outcome.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/070_core_outcome.md rename to devlog/_fin/260915_godfile_round5/070_core_outcome.md diff --git a/devlog/_plan/260915_godfile_round5/080_round_outcome.md b/devlog/_fin/260915_godfile_round5/080_round_outcome.md similarity index 100% rename from devlog/_plan/260915_godfile_round5/080_round_outcome.md rename to devlog/_fin/260915_godfile_round5/080_round_outcome.md diff --git a/devlog/_plan/260915_workflow_budget_window/000_unit.md b/devlog/_fin/260915_workflow_budget_window/000_unit.md similarity index 100% rename from devlog/_plan/260915_workflow_budget_window/000_unit.md rename to devlog/_fin/260915_workflow_budget_window/000_unit.md diff --git a/devlog/_plan/260915_workflow_budget_window/010_windowed_ceilings.md b/devlog/_fin/260915_workflow_budget_window/010_windowed_ceilings.md similarity index 100% rename from devlog/_plan/260915_workflow_budget_window/010_windowed_ceilings.md rename to devlog/_fin/260915_workflow_budget_window/010_windowed_ceilings.md diff --git a/devlog/_plan/260915_workflow_budget_window/020_legible_refusal.md b/devlog/_fin/260915_workflow_budget_window/020_legible_refusal.md similarity index 100% rename from devlog/_plan/260915_workflow_budget_window/020_legible_refusal.md rename to devlog/_fin/260915_workflow_budget_window/020_legible_refusal.md diff --git a/devlog/_plan/260915_workflow_budget_window/030_wfc_diff_plan.md b/devlog/_fin/260915_workflow_budget_window/030_wfc_diff_plan.md similarity index 100% rename from devlog/_plan/260915_workflow_budget_window/030_wfc_diff_plan.md rename to devlog/_fin/260915_workflow_budget_window/030_wfc_diff_plan.md diff --git a/devlog/_plan/260916_cursor_http2_toolcall/000_plan.md b/devlog/_fin/260916_cursor_http2_toolcall/000_plan.md similarity index 100% rename from devlog/_plan/260916_cursor_http2_toolcall/000_plan.md rename to devlog/_fin/260916_cursor_http2_toolcall/000_plan.md diff --git a/devlog/_plan/260916_cursor_http2_toolcall/010_phase1_text_toolcall_quarantine.md b/devlog/_fin/260916_cursor_http2_toolcall/010_phase1_text_toolcall_quarantine.md similarity index 100% rename from devlog/_plan/260916_cursor_http2_toolcall/010_phase1_text_toolcall_quarantine.md rename to devlog/_fin/260916_cursor_http2_toolcall/010_phase1_text_toolcall_quarantine.md diff --git a/devlog/_plan/260916_cursor_http2_toolcall/020_phase2_observed_max_tokens.md b/devlog/_fin/260916_cursor_http2_toolcall/020_phase2_observed_max_tokens.md similarity index 100% rename from devlog/_plan/260916_cursor_http2_toolcall/020_phase2_observed_max_tokens.md rename to devlog/_fin/260916_cursor_http2_toolcall/020_phase2_observed_max_tokens.md diff --git a/devlog/_plan/260916_release_2570_stabilization/031_openai_tiers_split.md b/devlog/_fin/260916_release_2570_stabilization/031_openai_tiers_split.md similarity index 100% rename from devlog/_plan/260916_release_2570_stabilization/031_openai_tiers_split.md rename to devlog/_fin/260916_release_2570_stabilization/031_openai_tiers_split.md diff --git a/devlog/_plan/260916_release_2570_stabilization/041_preview_fence_test_is_structural.md b/devlog/_fin/260916_release_2570_stabilization/041_preview_fence_test_is_structural.md similarity index 100% rename from devlog/_plan/260916_release_2570_stabilization/041_preview_fence_test_is_structural.md rename to devlog/_fin/260916_release_2570_stabilization/041_preview_fence_test_is_structural.md diff --git a/devlog/_plan/260917_2570_release_train/000_roadmap.md b/devlog/_fin/260917_2570_release_train/000_roadmap.md similarity index 100% rename from devlog/_plan/260917_2570_release_train/000_roadmap.md rename to devlog/_fin/260917_2570_release_train/000_roadmap.md diff --git a/devlog/_plan/260917_2570_release_train/010_dev_green.md b/devlog/_fin/260917_2570_release_train/010_dev_green.md similarity index 100% rename from devlog/_plan/260917_2570_release_train/010_dev_green.md rename to devlog/_fin/260917_2570_release_train/010_dev_green.md diff --git a/devlog/_plan/260917_2570_release_train/020_pr_triage.md b/devlog/_fin/260917_2570_release_train/020_pr_triage.md similarity index 100% rename from devlog/_plan/260917_2570_release_train/020_pr_triage.md rename to devlog/_fin/260917_2570_release_train/020_pr_triage.md diff --git a/devlog/_plan/260917_2570_release_train/030_issue_triage.md b/devlog/_fin/260917_2570_release_train/030_issue_triage.md similarity index 100% rename from devlog/_plan/260917_2570_release_train/030_issue_triage.md rename to devlog/_fin/260917_2570_release_train/030_issue_triage.md diff --git a/devlog/_plan/260917_2570_release_train/040_release.md b/devlog/_fin/260917_2570_release_train/040_release.md similarity index 100% rename from devlog/_plan/260917_2570_release_train/040_release.md rename to devlog/_fin/260917_2570_release_train/040_release.md diff --git a/devlog/_plan/260917_devin_input_ceiling/000_review.md b/devlog/_fin/260917_devin_input_ceiling/000_review.md similarity index 100% rename from devlog/_plan/260917_devin_input_ceiling/000_review.md rename to devlog/_fin/260917_devin_input_ceiling/000_review.md diff --git a/devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/000_master_plan.md b/devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/000_master_plan.md similarity index 100% rename from devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/000_master_plan.md rename to devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/000_master_plan.md diff --git a/devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/010_issue_4850_preview_pool_eligibility_fence.md b/devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/010_issue_4850_preview_pool_eligibility_fence.md similarity index 100% rename from devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/010_issue_4850_preview_pool_eligibility_fence.md rename to devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/010_issue_4850_preview_pool_eligibility_fence.md diff --git a/devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/020_pr_4873_dependency_audit_review.md b/devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/020_pr_4873_dependency_audit_review.md similarity index 100% rename from devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/020_pr_4873_dependency_audit_review.md rename to devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/020_pr_4873_dependency_audit_review.md diff --git a/devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/030_unit_c_docs_site_build_gate.md b/devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/030_unit_c_docs_site_build_gate.md similarity index 100% rename from devlog/_plan/260917_l1_preview_read_fence_and_dep_audit/030_unit_c_docs_site_build_gate.md rename to devlog/_fin/260917_l1_preview_read_fence_and_dep_audit/030_unit_c_docs_site_build_gate.md diff --git a/devlog/_plan/260917_l2_safe_teardown/000_master_plan.md b/devlog/_fin/260917_l2_safe_teardown/000_master_plan.md similarity index 98% rename from devlog/_plan/260917_l2_safe_teardown/000_master_plan.md rename to devlog/_fin/260917_l2_safe_teardown/000_master_plan.md index 1c39d9be975..76738e7b633 100644 --- a/devlog/_plan/260917_l2_safe_teardown/000_master_plan.md +++ b/devlog/_fin/260917_l2_safe_teardown/000_master_plan.md @@ -123,7 +123,7 @@ Child (#4809): ## Prior art in this repository -`devlog/_plan/260914_codex_history_preflight_scope/` narrowed the same guard +`devlog/_fin/260914_codex_history_preflight_scope/` narrowed the same guard on the apply direction and explicitly left this open: > "The uninstall deadlock on an already-paginated home remains open follow-up; diff --git a/devlog/_plan/260917_l2_safe_teardown/010_upstream_resolution_facts.md b/devlog/_fin/260917_l2_safe_teardown/010_upstream_resolution_facts.md similarity index 100% rename from devlog/_plan/260917_l2_safe_teardown/010_upstream_resolution_facts.md rename to devlog/_fin/260917_l2_safe_teardown/010_upstream_resolution_facts.md diff --git a/devlog/_plan/260917_l2_safe_teardown/020_issue_4812_contract.md b/devlog/_fin/260917_l2_safe_teardown/020_issue_4812_contract.md similarity index 100% rename from devlog/_plan/260917_l2_safe_teardown/020_issue_4812_contract.md rename to devlog/_fin/260917_l2_safe_teardown/020_issue_4812_contract.md diff --git a/devlog/_plan/260917_l2_safe_teardown/030_issue_4809_contract.md b/devlog/_fin/260917_l2_safe_teardown/030_issue_4809_contract.md similarity index 100% rename from devlog/_plan/260917_l2_safe_teardown/030_issue_4809_contract.md rename to devlog/_fin/260917_l2_safe_teardown/030_issue_4809_contract.md diff --git a/devlog/_plan/260917_l2_safe_teardown/040_verification.md b/devlog/_fin/260917_l2_safe_teardown/040_verification.md similarity index 100% rename from devlog/_plan/260917_l2_safe_teardown/040_verification.md rename to devlog/_fin/260917_l2_safe_teardown/040_verification.md diff --git a/devlog/_plan/260917_l3_retry_budget_admission/000_roadmap.md b/devlog/_fin/260917_l3_retry_budget_admission/000_roadmap.md similarity index 100% rename from devlog/_plan/260917_l3_retry_budget_admission/000_roadmap.md rename to devlog/_fin/260917_l3_retry_budget_admission/000_roadmap.md diff --git a/devlog/_plan/260917_l3_retry_budget_admission/010_admission_audit.md b/devlog/_fin/260917_l3_retry_budget_admission/010_admission_audit.md similarity index 100% rename from devlog/_plan/260917_l3_retry_budget_admission/010_admission_audit.md rename to devlog/_fin/260917_l3_retry_budget_admission/010_admission_audit.md diff --git a/devlog/_plan/260917_l3_retry_budget_admission/020_independent_review.md b/devlog/_fin/260917_l3_retry_budget_admission/020_independent_review.md similarity index 100% rename from devlog/_plan/260917_l3_retry_budget_admission/020_independent_review.md rename to devlog/_fin/260917_l3_retry_budget_admission/020_independent_review.md diff --git a/devlog/_plan/260917_l4_responses_private_fields_and_history/010_roadmap.md b/devlog/_fin/260917_l4_responses_private_fields_and_history/010_roadmap.md similarity index 100% rename from devlog/_plan/260917_l4_responses_private_fields_and_history/010_roadmap.md rename to devlog/_fin/260917_l4_responses_private_fields_and_history/010_roadmap.md diff --git a/devlog/_plan/260917_l5_cursor_stabilization/000_roadmap.md b/devlog/_fin/260917_l5_cursor_stabilization/000_roadmap.md similarity index 100% rename from devlog/_plan/260917_l5_cursor_stabilization/000_roadmap.md rename to devlog/_fin/260917_l5_cursor_stabilization/000_roadmap.md diff --git a/devlog/_plan/260917_l5_cursor_stabilization/010_u1_text_toolcall_contract.md b/devlog/_fin/260917_l5_cursor_stabilization/010_u1_text_toolcall_contract.md similarity index 100% rename from devlog/_plan/260917_l5_cursor_stabilization/010_u1_text_toolcall_contract.md rename to devlog/_fin/260917_l5_cursor_stabilization/010_u1_text_toolcall_contract.md diff --git a/devlog/_plan/260917_l5_cursor_stabilization/020_u2_observed_window_scope.md b/devlog/_fin/260917_l5_cursor_stabilization/020_u2_observed_window_scope.md similarity index 100% rename from devlog/_plan/260917_l5_cursor_stabilization/020_u2_observed_window_scope.md rename to devlog/_fin/260917_l5_cursor_stabilization/020_u2_observed_window_scope.md diff --git a/devlog/_plan/260917_l5_cursor_stabilization/030_u3_remint_isolation_and_budget.md b/devlog/_fin/260917_l5_cursor_stabilization/030_u3_remint_isolation_and_budget.md similarity index 100% rename from devlog/_plan/260917_l5_cursor_stabilization/030_u3_remint_isolation_and_budget.md rename to devlog/_fin/260917_l5_cursor_stabilization/030_u3_remint_isolation_and_budget.md diff --git a/devlog/_plan/260917_l5_cursor_stabilization/040_u4_codebuddy_bare_tool_names.md b/devlog/_fin/260917_l5_cursor_stabilization/040_u4_codebuddy_bare_tool_names.md similarity index 100% rename from devlog/_plan/260917_l5_cursor_stabilization/040_u4_codebuddy_bare_tool_names.md rename to devlog/_fin/260917_l5_cursor_stabilization/040_u4_codebuddy_bare_tool_names.md diff --git a/devlog/_plan/260917_l6_contract_quality_fixes/000_master_plan.md b/devlog/_fin/260917_l6_contract_quality_fixes/000_master_plan.md similarity index 100% rename from devlog/_plan/260917_l6_contract_quality_fixes/000_master_plan.md rename to devlog/_fin/260917_l6_contract_quality_fixes/000_master_plan.md diff --git a/devlog/_plan/260917_l6_contract_quality_fixes/010_4855_terminal_stop_classification.md b/devlog/_fin/260917_l6_contract_quality_fixes/010_4855_terminal_stop_classification.md similarity index 100% rename from devlog/_plan/260917_l6_contract_quality_fixes/010_4855_terminal_stop_classification.md rename to devlog/_fin/260917_l6_contract_quality_fixes/010_4855_terminal_stop_classification.md diff --git a/devlog/_plan/260917_l6_contract_quality_fixes/020_4822_zai_model_discovery.md b/devlog/_fin/260917_l6_contract_quality_fixes/020_4822_zai_model_discovery.md similarity index 100% rename from devlog/_plan/260917_l6_contract_quality_fixes/020_4822_zai_model_discovery.md rename to devlog/_fin/260917_l6_contract_quality_fixes/020_4822_zai_model_discovery.md diff --git a/devlog/_plan/260917_l6_contract_quality_fixes/030_carried_catalog_and_gui_prs.md b/devlog/_fin/260917_l6_contract_quality_fixes/030_carried_catalog_and_gui_prs.md similarity index 100% rename from devlog/_plan/260917_l6_contract_quality_fixes/030_carried_catalog_and_gui_prs.md rename to devlog/_fin/260917_l6_contract_quality_fixes/030_carried_catalog_and_gui_prs.md diff --git a/devlog/_plan/260917_l6_contract_quality_fixes/040_4857_first_frame_usage_contract.md b/devlog/_fin/260917_l6_contract_quality_fixes/040_4857_first_frame_usage_contract.md similarity index 100% rename from devlog/_plan/260917_l6_contract_quality_fixes/040_4857_first_frame_usage_contract.md rename to devlog/_fin/260917_l6_contract_quality_fixes/040_4857_first_frame_usage_contract.md diff --git a/devlog/_plan/260917_l7_native_control_stack_audit/000_plan.md b/devlog/_fin/260917_l7_native_control_stack_audit/000_plan.md similarity index 96% rename from devlog/_plan/260917_l7_native_control_stack_audit/000_plan.md rename to devlog/_fin/260917_l7_native_control_stack_audit/000_plan.md index 74fb88be8a1..51b66a9c527 100644 --- a/devlog/_plan/260917_l7_native_control_stack_audit/000_plan.md +++ b/devlog/_fin/260917_l7_native_control_stack_audit/000_plan.md @@ -26,7 +26,7 @@ rebased or reimplemented here. ## Write scope -`devlog/_plan/260917_l7_native_control_stack_audit/` only. No `src/`, no +`devlog/_fin/260917_l7_native_control_stack_audit/` only. No `src/`, no `tests/`, no `structure/`, no `docs-site/`. The four audited branches are read through `git show` and `git diff` against fetched `refs/pull/*/head`; nothing in this branch touches them. diff --git a/devlog/_plan/260917_l7_native_control_stack_audit/010_stage_diffs.md b/devlog/_fin/260917_l7_native_control_stack_audit/010_stage_diffs.md similarity index 100% rename from devlog/_plan/260917_l7_native_control_stack_audit/010_stage_diffs.md rename to devlog/_fin/260917_l7_native_control_stack_audit/010_stage_diffs.md diff --git a/devlog/_plan/260917_l7_native_control_stack_audit/020_integration_contract.md b/devlog/_fin/260917_l7_native_control_stack_audit/020_integration_contract.md similarity index 100% rename from devlog/_plan/260917_l7_native_control_stack_audit/020_integration_contract.md rename to devlog/_fin/260917_l7_native_control_stack_audit/020_integration_contract.md diff --git a/devlog/_plan/260917_l7_native_control_stack_audit/030_l1_precondition.md b/devlog/_fin/260917_l7_native_control_stack_audit/030_l1_precondition.md similarity index 100% rename from devlog/_plan/260917_l7_native_control_stack_audit/030_l1_precondition.md rename to devlog/_fin/260917_l7_native_control_stack_audit/030_l1_precondition.md diff --git a/devlog/_plan/260917_l7_native_control_stack_audit/040_activation_decision.md b/devlog/_fin/260917_l7_native_control_stack_audit/040_activation_decision.md similarity index 100% rename from devlog/_plan/260917_l7_native_control_stack_audit/040_activation_decision.md rename to devlog/_fin/260917_l7_native_control_stack_audit/040_activation_decision.md diff --git a/devlog/_plan/260918_2580_release_train/000_roadmap.md b/devlog/_fin/260918_2580_release_train/000_roadmap.md similarity index 100% rename from devlog/_plan/260918_2580_release_train/000_roadmap.md rename to devlog/_fin/260918_2580_release_train/000_roadmap.md diff --git a/devlog/_plan/260918_2580_release_train/040_release.md b/devlog/_fin/260918_2580_release_train/040_release.md similarity index 100% rename from devlog/_plan/260918_2580_release_train/040_release.md rename to devlog/_fin/260918_2580_release_train/040_release.md diff --git a/devlog/_plan/260918_lane_a_bug_train/010_roadmap.md b/devlog/_fin/260918_lane_a_bug_train/010_roadmap.md similarity index 100% rename from devlog/_plan/260918_lane_a_bug_train/010_roadmap.md rename to devlog/_fin/260918_lane_a_bug_train/010_roadmap.md diff --git a/devlog/_plan/260918_lane_a_bug_train/030_transient_passthrough_policy.md b/devlog/_fin/260918_lane_a_bug_train/030_transient_passthrough_policy.md similarity index 100% rename from devlog/_plan/260918_lane_a_bug_train/030_transient_passthrough_policy.md rename to devlog/_fin/260918_lane_a_bug_train/030_transient_passthrough_policy.md diff --git a/devlog/_plan/260918_lane_a_bug_train/040_combo_response_format.md b/devlog/_fin/260918_lane_a_bug_train/040_combo_response_format.md similarity index 100% rename from devlog/_plan/260918_lane_a_bug_train/040_combo_response_format.md rename to devlog/_fin/260918_lane_a_bug_train/040_combo_response_format.md diff --git a/devlog/_plan/260918_lane_a_bug_train/041_combo_response_format_second_vendor.md b/devlog/_fin/260918_lane_a_bug_train/041_combo_response_format_second_vendor.md similarity index 100% rename from devlog/_plan/260918_lane_a_bug_train/041_combo_response_format_second_vendor.md rename to devlog/_fin/260918_lane_a_bug_train/041_combo_response_format_second_vendor.md diff --git a/devlog/_plan/260918_lane_a_bug_train/050_cohort_pool_affinity.md b/devlog/_fin/260918_lane_a_bug_train/050_cohort_pool_affinity.md similarity index 100% rename from devlog/_plan/260918_lane_a_bug_train/050_cohort_pool_affinity.md rename to devlog/_fin/260918_lane_a_bug_train/050_cohort_pool_affinity.md diff --git a/devlog/_plan/260918_lane_b_provider_reliability/000_roadmap.md b/devlog/_fin/260918_lane_b_provider_reliability/000_roadmap.md similarity index 100% rename from devlog/_plan/260918_lane_b_provider_reliability/000_roadmap.md rename to devlog/_fin/260918_lane_b_provider_reliability/000_roadmap.md diff --git a/devlog/_plan/260918_ld_search_bridge_and_thinking_replay/010_roadmap.md b/devlog/_fin/260918_ld_search_bridge_and_thinking_replay/010_roadmap.md similarity index 100% rename from devlog/_plan/260918_ld_search_bridge_and_thinking_replay/010_roadmap.md rename to devlog/_fin/260918_ld_search_bridge_and_thinking_replay/010_roadmap.md diff --git a/devlog/_plan/260918_ld_search_bridge_and_thinking_replay/020_closure_evidence.md b/devlog/_fin/260918_ld_search_bridge_and_thinking_replay/020_closure_evidence.md similarity index 100% rename from devlog/_plan/260918_ld_search_bridge_and_thinking_replay/020_closure_evidence.md rename to devlog/_fin/260918_ld_search_bridge_and_thinking_replay/020_closure_evidence.md diff --git a/devlog/_plan/260919_5008_antigravity_turn_ordering/000_upstream_contract_evidence.md b/devlog/_fin/260919_5008_antigravity_turn_ordering/000_upstream_contract_evidence.md similarity index 100% rename from devlog/_plan/260919_5008_antigravity_turn_ordering/000_upstream_contract_evidence.md rename to devlog/_fin/260919_5008_antigravity_turn_ordering/000_upstream_contract_evidence.md diff --git a/devlog/_fin/260919_contract_resolution/001_status.md b/devlog/_fin/260919_contract_resolution/001_status.md index 454a1b4be0f..5c5b339860b 100644 --- a/devlog/_fin/260919_contract_resolution/001_status.md +++ b/devlog/_fin/260919_contract_resolution/001_status.md @@ -1,6 +1,6 @@ # Campaign status -Status: IMPLEMENTATION COMPLETE. The active regression and release follow-up is tracked in [its separate open unit](../../_plan/260920_regression_release/000_scope.md). All sixteen original implementation issues are now closed. Final dashboard #5197 landed as `ed44e04a933f6d4d62d2e049bf7606f08d347b06`; #5118 was closed after ancestry/tree checks and current source/fixture evidence. The owner explicitly requested immediate integration while macOS verification remained unfinished, and that timing exception is recorded on the PR. No full-platform pass is claimed for that incomplete run. Complete hosted regression, main/preview promotion, release publication and post-publication verification remain outstanding. Two non-blocking review observations are retained for follow-up. The heartbeat remains active. +Status: IMPLEMENTATION COMPLETE. The active regression and release follow-up is tracked in [its separate open unit](../../_fin/260920_regression_release/000_scope.md). All sixteen original implementation issues are now closed. Final dashboard #5197 landed as `ed44e04a933f6d4d62d2e049bf7606f08d347b06`; #5118 was closed after ancestry/tree checks and current source/fixture evidence. The owner explicitly requested immediate integration while macOS verification remained unfinished, and that timing exception is recorded on the PR. No full-platform pass is claimed for that incomplete run. Complete hosted regression, main/preview promotion, release publication and post-publication verification remain outstanding. Two non-blocking review observations are retained for follow-up. The heartbeat remains active. ## Owners diff --git a/devlog/_fin/260919_contract_resolution/042_release_followup_authorization.md b/devlog/_fin/260919_contract_resolution/042_release_followup_authorization.md index b7f1ea71313..d62ca2065e6 100644 --- a/devlog/_fin/260919_contract_resolution/042_release_followup_authorization.md +++ b/devlog/_fin/260919_contract_resolution/042_release_followup_authorization.md @@ -14,6 +14,6 @@ Request-time branch references: The immutable `main` baseline preserves the requested regression scope even if another authorized integration later advances a branch. The final target is captured after the campaign lands; no missing change may be dropped merely by choosing a newer comparison base. -At authorization time, the current work phase still needed to finish #5118 and its acceptance evidence. That implementation prerequisite is now complete; the still-open release work is tracked in [the separate plan unit](../../_plan/260920_regression_release/000_scope.md). After that cycle closes, the next Plan phase must inspect the current release authority, versions, branch ancestry and workflow inputs; write the complete regression/promotion/release plan; and register its remaining criteria before execution. Do not infer a release version or dist-tag before that inspection. Use the repository's required version ordering and promotion sequence. +At authorization time, the current work phase still needed to finish #5118 and its acceptance evidence. That implementation prerequisite is now complete; the still-open release work is tracked in [the separate plan unit](../../_fin/260920_regression_release/000_scope.md). After that cycle closes, the next Plan phase must inspect the current release authority, versions, branch ancestry and workflow inputs; write the complete regression/promotion/release plan; and register its remaining criteria before execution. Do not infer a release version or dist-tag before that inspection. Use the repository's required version ordering and promotion sequence. Completion of the expanded request requires all original issue evidence plus the full regression result, verified `main`/`preview` promotions, release publication and post-publication evidence for the actual released version and commit. Keep those claims separate. The host goal must not complete at sixteen issue closures alone. Retain the heartbeat for the handoff and stop it only once all authorized follow-up work is verified. diff --git a/devlog/_fin/260919_contract_resolution/043_implementation_handoff.md b/devlog/_fin/260919_contract_resolution/043_implementation_handoff.md index bc41cf59f51..2b938d2072a 100644 --- a/devlog/_fin/260919_contract_resolution/043_implementation_handoff.md +++ b/devlog/_fin/260919_contract_resolution/043_implementation_handoff.md @@ -19,4 +19,4 @@ Use the request-time main baseline134c92a01b120162f00c7275189cc47858720379 throu Later verification: run35483995896 attempt1 completed SUCCESS at source278513a79e, including all event-applicable jobs and both macOS shards. The earlier integration timing exception remains a historical fact; the formerly pending source-PR platform checks are now complete. Full main-through-candidate regression, promotion and release remain separate follow-up work. -The still-open follow-up lives in [the regression and release unit](../../_plan/260920_regression_release/000_scope.md); this archive contains only the completed implementation record and its handoff. +The still-open follow-up lives in [the regression and release unit](../../_fin/260920_regression_release/000_scope.md); this archive contains only the completed implementation record and its handoff. diff --git a/devlog/_plan/260920_desktop_app_stabilization/000_local_build.md b/devlog/_fin/260920_desktop_app_stabilization/000_local_build.md similarity index 100% rename from devlog/_plan/260920_desktop_app_stabilization/000_local_build.md rename to devlog/_fin/260920_desktop_app_stabilization/000_local_build.md diff --git a/devlog/_plan/260920_desktop_app_stabilization/010_roadmap.md b/devlog/_fin/260920_desktop_app_stabilization/010_roadmap.md similarity index 100% rename from devlog/_plan/260920_desktop_app_stabilization/010_roadmap.md rename to devlog/_fin/260920_desktop_app_stabilization/010_roadmap.md diff --git a/devlog/_plan/260920_desktop_app_stabilization/011_acceptance.md b/devlog/_fin/260920_desktop_app_stabilization/011_acceptance.md similarity index 100% rename from devlog/_plan/260920_desktop_app_stabilization/011_acceptance.md rename to devlog/_fin/260920_desktop_app_stabilization/011_acceptance.md diff --git a/devlog/_plan/260920_desktop_app_stabilization/020_build_state_guards.md b/devlog/_fin/260920_desktop_app_stabilization/020_build_state_guards.md similarity index 100% rename from devlog/_plan/260920_desktop_app_stabilization/020_build_state_guards.md rename to devlog/_fin/260920_desktop_app_stabilization/020_build_state_guards.md diff --git a/devlog/_plan/260920_desktop_app_stabilization/030_icons_and_widget.md b/devlog/_fin/260920_desktop_app_stabilization/030_icons_and_widget.md similarity index 100% rename from devlog/_plan/260920_desktop_app_stabilization/030_icons_and_widget.md rename to devlog/_fin/260920_desktop_app_stabilization/030_icons_and_widget.md diff --git a/devlog/_plan/260920_desktop_app_stabilization/040_widget_never_offered.md b/devlog/_fin/260920_desktop_app_stabilization/040_widget_never_offered.md similarity index 100% rename from devlog/_plan/260920_desktop_app_stabilization/040_widget_never_offered.md rename to devlog/_fin/260920_desktop_app_stabilization/040_widget_never_offered.md diff --git a/devlog/_plan/260920_desktop_app_stabilization/050_landing.md b/devlog/_fin/260920_desktop_app_stabilization/050_landing.md similarity index 100% rename from devlog/_plan/260920_desktop_app_stabilization/050_landing.md rename to devlog/_fin/260920_desktop_app_stabilization/050_landing.md diff --git a/devlog/_plan/260920_regression_release/000_scope.md b/devlog/_fin/260920_regression_release/000_scope.md similarity index 100% rename from devlog/_plan/260920_regression_release/000_scope.md rename to devlog/_fin/260920_regression_release/000_scope.md diff --git a/devlog/_plan/260920_regression_release/010_execution.md b/devlog/_fin/260920_regression_release/010_execution.md similarity index 100% rename from devlog/_plan/260920_regression_release/010_execution.md rename to devlog/_fin/260920_regression_release/010_execution.md diff --git a/devlog/_plan/260920_round2_followups/000_plan.md b/devlog/_fin/260920_round2_followups/000_plan.md similarity index 100% rename from devlog/_plan/260920_round2_followups/000_plan.md rename to devlog/_fin/260920_round2_followups/000_plan.md diff --git a/devlog/_plan/260920_round2_followups/010_r1_paginated_history_guard.md b/devlog/_fin/260920_round2_followups/010_r1_paginated_history_guard.md similarity index 100% rename from devlog/_plan/260920_round2_followups/010_r1_paginated_history_guard.md rename to devlog/_fin/260920_round2_followups/010_r1_paginated_history_guard.md diff --git a/devlog/_plan/260920_round2_followups/020_r2_desktop_ci.md b/devlog/_fin/260920_round2_followups/020_r2_desktop_ci.md similarity index 100% rename from devlog/_plan/260920_round2_followups/020_r2_desktop_ci.md rename to devlog/_fin/260920_round2_followups/020_r2_desktop_ci.md diff --git a/devlog/_plan/260920_round2_followups/030_lane_r3.md b/devlog/_fin/260920_round2_followups/030_lane_r3.md similarity index 100% rename from devlog/_plan/260920_round2_followups/030_lane_r3.md rename to devlog/_fin/260920_round2_followups/030_lane_r3.md diff --git a/devlog/_plan/260920_round2_followups/040_r4_retry_rework.md b/devlog/_fin/260920_round2_followups/040_r4_retry_rework.md similarity index 100% rename from devlog/_plan/260920_round2_followups/040_r4_retry_rework.md rename to devlog/_fin/260920_round2_followups/040_r4_retry_rework.md diff --git a/devlog/_plan/260920_round2_followups/050_lane_r5.md b/devlog/_fin/260920_round2_followups/050_lane_r5.md similarity index 99% rename from devlog/_plan/260920_round2_followups/050_lane_r5.md rename to devlog/_fin/260920_round2_followups/050_lane_r5.md index 7343408d0cf..e666cf2f3e9 100644 --- a/devlog/_plan/260920_round2_followups/050_lane_r5.md +++ b/devlog/_fin/260920_round2_followups/050_lane_r5.md @@ -4,7 +4,7 @@ Status: OPEN. Branch `codex/260920-r5-telemetry-derived`, rebased onto `dev` aft advanced mid-lane. One branch, ordered commits, one pull request to `dev`. Lane C deferred #2366, #3748, #3983 and #5063 "as implemented", because each adds a parallel store -or a second emission path. [030_lane_c2.md](../260920_meaning_preservation_batch/030_lane_c2.md) +or a second emission path. [030_lane_c2.md](../../_plan/260920_meaning_preservation_batch/030_lane_c2.md) then specified the derived form for each. This lane builds those four forms. It adds no store: the durable shapes stay `PersistedUsageAttempt` and `PersistedUsageEntry`, and every projection reads them. diff --git a/devlog/_plan/260920_round2_followups/050_r4_remainders.md b/devlog/_fin/260920_round2_followups/050_r4_remainders.md similarity index 100% rename from devlog/_plan/260920_round2_followups/050_r4_remainders.md rename to devlog/_fin/260920_round2_followups/050_r4_remainders.md diff --git a/devlog/_plan/260920_round2_followups/060_r6_usage_models_table.md b/devlog/_fin/260920_round2_followups/060_r6_usage_models_table.md similarity index 100% rename from devlog/_plan/260920_round2_followups/060_r6_usage_models_table.md rename to devlog/_fin/260920_round2_followups/060_r6_usage_models_table.md diff --git a/devlog/_plan/260920_round2_followups/070_widget_signing.md b/devlog/_fin/260920_round2_followups/070_widget_signing.md similarity index 100% rename from devlog/_plan/260920_round2_followups/070_widget_signing.md rename to devlog/_fin/260920_round2_followups/070_widget_signing.md diff --git a/devlog/_plan/260920_round2_followups/090_closeout.md b/devlog/_fin/260920_round2_followups/090_closeout.md similarity index 100% rename from devlog/_plan/260920_round2_followups/090_closeout.md rename to devlog/_fin/260920_round2_followups/090_closeout.md diff --git a/devlog/_plan/260920_round2_followups/r6-usage-table/r6-01-column-order.png b/devlog/_fin/260920_round2_followups/r6-usage-table/r6-01-column-order.png similarity index 100% rename from devlog/_plan/260920_round2_followups/r6-usage-table/r6-01-column-order.png rename to devlog/_fin/260920_round2_followups/r6-usage-table/r6-01-column-order.png diff --git a/devlog/_plan/260920_round2_followups/r6-usage-table/r6-02-pinned-scroll.png b/devlog/_fin/260920_round2_followups/r6-usage-table/r6-02-pinned-scroll.png similarity index 100% rename from devlog/_plan/260920_round2_followups/r6-usage-table/r6-02-pinned-scroll.png rename to devlog/_fin/260920_round2_followups/r6-usage-table/r6-02-pinned-scroll.png diff --git a/devlog/_plan/260920_round2_followups/r6-usage-table/r6-03-narrow-fallback.png b/devlog/_fin/260920_round2_followups/r6-usage-table/r6-03-narrow-fallback.png similarity index 100% rename from devlog/_plan/260920_round2_followups/r6-usage-table/r6-03-narrow-fallback.png rename to devlog/_fin/260920_round2_followups/r6-usage-table/r6-03-narrow-fallback.png diff --git a/devlog/_plan/260921_app_runtime_ownership/000_charter.md b/devlog/_fin/260921_app_runtime_ownership/000_charter.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/000_charter.md rename to devlog/_fin/260921_app_runtime_ownership/000_charter.md diff --git a/devlog/_plan/260921_app_runtime_ownership/010_coexistence_findings.md b/devlog/_fin/260921_app_runtime_ownership/010_coexistence_findings.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/010_coexistence_findings.md rename to devlog/_fin/260921_app_runtime_ownership/010_coexistence_findings.md diff --git a/devlog/_plan/260921_app_runtime_ownership/020_windows_linux_findings.md b/devlog/_fin/260921_app_runtime_ownership/020_windows_linux_findings.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/020_windows_linux_findings.md rename to devlog/_fin/260921_app_runtime_ownership/020_windows_linux_findings.md diff --git a/devlog/_plan/260921_app_runtime_ownership/030_contradictions.md b/devlog/_fin/260921_app_runtime_ownership/030_contradictions.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/030_contradictions.md rename to devlog/_fin/260921_app_runtime_ownership/030_contradictions.md diff --git a/devlog/_plan/260921_app_runtime_ownership/040_verification_hosts.md b/devlog/_fin/260921_app_runtime_ownership/040_verification_hosts.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/040_verification_hosts.md rename to devlog/_fin/260921_app_runtime_ownership/040_verification_hosts.md diff --git a/devlog/_plan/260921_app_runtime_ownership/050_webview_dialogs.md b/devlog/_fin/260921_app_runtime_ownership/050_webview_dialogs.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/050_webview_dialogs.md rename to devlog/_fin/260921_app_runtime_ownership/050_webview_dialogs.md diff --git a/devlog/_plan/260921_app_runtime_ownership/060_contradictions_round2.md b/devlog/_fin/260921_app_runtime_ownership/060_contradictions_round2.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/060_contradictions_round2.md rename to devlog/_fin/260921_app_runtime_ownership/060_contradictions_round2.md diff --git a/devlog/_plan/260921_app_runtime_ownership/070_decisions.md b/devlog/_fin/260921_app_runtime_ownership/070_decisions.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/070_decisions.md rename to devlog/_fin/260921_app_runtime_ownership/070_decisions.md diff --git a/devlog/_plan/260921_app_runtime_ownership/080_decisions_round2.md b/devlog/_fin/260921_app_runtime_ownership/080_decisions_round2.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/080_decisions_round2.md rename to devlog/_fin/260921_app_runtime_ownership/080_decisions_round2.md diff --git a/devlog/_plan/260921_app_runtime_ownership/090_lanes.md b/devlog/_fin/260921_app_runtime_ownership/090_lanes.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/090_lanes.md rename to devlog/_fin/260921_app_runtime_ownership/090_lanes.md diff --git a/devlog/_plan/260921_app_runtime_ownership/100_resolutions.md b/devlog/_fin/260921_app_runtime_ownership/100_resolutions.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/100_resolutions.md rename to devlog/_fin/260921_app_runtime_ownership/100_resolutions.md diff --git a/devlog/_plan/260921_app_runtime_ownership/110_reaudit.md b/devlog/_fin/260921_app_runtime_ownership/110_reaudit.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/110_reaudit.md rename to devlog/_fin/260921_app_runtime_ownership/110_reaudit.md diff --git a/devlog/_plan/260921_app_runtime_ownership/120_gate_runbook.md b/devlog/_fin/260921_app_runtime_ownership/120_gate_runbook.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/120_gate_runbook.md rename to devlog/_fin/260921_app_runtime_ownership/120_gate_runbook.md diff --git a/devlog/_plan/260921_app_runtime_ownership/120_install_verification.md b/devlog/_fin/260921_app_runtime_ownership/120_install_verification.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/120_install_verification.md rename to devlog/_fin/260921_app_runtime_ownership/120_install_verification.md diff --git a/devlog/_plan/260921_app_runtime_ownership/130_linux_surface_findings.md b/devlog/_fin/260921_app_runtime_ownership/130_linux_surface_findings.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/130_linux_surface_findings.md rename to devlog/_fin/260921_app_runtime_ownership/130_linux_surface_findings.md diff --git a/devlog/_plan/260921_app_runtime_ownership/140_tray_popup_polish.md b/devlog/_fin/260921_app_runtime_ownership/140_tray_popup_polish.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/140_tray_popup_polish.md rename to devlog/_fin/260921_app_runtime_ownership/140_tray_popup_polish.md diff --git a/devlog/_plan/260921_app_runtime_ownership/150_closeout.md b/devlog/_fin/260921_app_runtime_ownership/150_closeout.md similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/150_closeout.md rename to devlog/_fin/260921_app_runtime_ownership/150_closeout.md diff --git a/devlog/_plan/260921_app_runtime_ownership/tray-usage-popup-glass.png b/devlog/_fin/260921_app_runtime_ownership/tray-usage-popup-glass.png similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/tray-usage-popup-glass.png rename to devlog/_fin/260921_app_runtime_ownership/tray-usage-popup-glass.png diff --git a/devlog/_plan/260921_app_runtime_ownership/tray-usage-popup.png b/devlog/_fin/260921_app_runtime_ownership/tray-usage-popup.png similarity index 100% rename from devlog/_plan/260921_app_runtime_ownership/tray-usage-popup.png rename to devlog/_fin/260921_app_runtime_ownership/tray-usage-popup.png diff --git a/devlog/_plan/260922_native_tray_release/000_plan.md b/devlog/_fin/260922_native_tray_release/000_plan.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/000_plan.md rename to devlog/_fin/260922_native_tray_release/000_plan.md diff --git a/devlog/_plan/260922_native_tray_release/001_evidence.md b/devlog/_fin/260922_native_tray_release/001_evidence.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/001_evidence.md rename to devlog/_fin/260922_native_tray_release/001_evidence.md diff --git a/devlog/_plan/260922_native_tray_release/002_plan_review.md b/devlog/_fin/260922_native_tray_release/002_plan_review.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/002_plan_review.md rename to devlog/_fin/260922_native_tray_release/002_plan_review.md diff --git a/devlog/_plan/260922_native_tray_release/010_native_presentation.md b/devlog/_fin/260922_native_tray_release/010_native_presentation.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/010_native_presentation.md rename to devlog/_fin/260922_native_tray_release/010_native_presentation.md diff --git a/devlog/_plan/260922_native_tray_release/011_presentation_verification.md b/devlog/_fin/260922_native_tray_release/011_presentation_verification.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/011_presentation_verification.md rename to devlog/_fin/260922_native_tray_release/011_presentation_verification.md diff --git a/devlog/_plan/260922_native_tray_release/020_shell_integration.md b/devlog/_fin/260922_native_tray_release/020_shell_integration.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/020_shell_integration.md rename to devlog/_fin/260922_native_tray_release/020_shell_integration.md diff --git a/devlog/_plan/260922_native_tray_release/021_integration_verification.md b/devlog/_fin/260922_native_tray_release/021_integration_verification.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/021_integration_verification.md rename to devlog/_fin/260922_native_tray_release/021_integration_verification.md diff --git a/devlog/_plan/260922_native_tray_release/030_regression.md b/devlog/_fin/260922_native_tray_release/030_regression.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/030_regression.md rename to devlog/_fin/260922_native_tray_release/030_regression.md diff --git a/devlog/_plan/260922_native_tray_release/031_verification.md b/devlog/_fin/260922_native_tray_release/031_verification.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/031_verification.md rename to devlog/_fin/260922_native_tray_release/031_verification.md diff --git a/devlog/_plan/260922_native_tray_release/040_release.md b/devlog/_fin/260922_native_tray_release/040_release.md similarity index 100% rename from devlog/_plan/260922_native_tray_release/040_release.md rename to devlog/_fin/260922_native_tray_release/040_release.md diff --git a/devlog/_plan/260922_native_tray_release/evidence/native-glass-bottom.png b/devlog/_fin/260922_native_tray_release/evidence/native-glass-bottom.png similarity index 100% rename from devlog/_plan/260922_native_tray_release/evidence/native-glass-bottom.png rename to devlog/_fin/260922_native_tray_release/evidence/native-glass-bottom.png diff --git a/devlog/_plan/260922_native_tray_release/evidence/native-glass-top.png b/devlog/_fin/260922_native_tray_release/evidence/native-glass-top.png similarity index 100% rename from devlog/_plan/260922_native_tray_release/evidence/native-glass-top.png rename to devlog/_fin/260922_native_tray_release/evidence/native-glass-top.png diff --git a/devlog/_plan/260922_native_tray_release/evidence/native-panel-bottom.png b/devlog/_fin/260922_native_tray_release/evidence/native-panel-bottom.png similarity index 100% rename from devlog/_plan/260922_native_tray_release/evidence/native-panel-bottom.png rename to devlog/_fin/260922_native_tray_release/evidence/native-panel-bottom.png diff --git a/devlog/_plan/260922_native_tray_release/evidence/native-panel-dark.png b/devlog/_fin/260922_native_tray_release/evidence/native-panel-dark.png similarity index 100% rename from devlog/_plan/260922_native_tray_release/evidence/native-panel-dark.png rename to devlog/_fin/260922_native_tray_release/evidence/native-panel-dark.png diff --git a/devlog/_plan/260922_native_tray_release/evidence/native-panel-light.png b/devlog/_fin/260922_native_tray_release/evidence/native-panel-light.png similarity index 100% rename from devlog/_plan/260922_native_tray_release/evidence/native-panel-light.png rename to devlog/_fin/260922_native_tray_release/evidence/native-panel-light.png diff --git a/devlog/_plan/260922_native_tray_release/evidence/web-tray-opaque-bottom.png b/devlog/_fin/260922_native_tray_release/evidence/web-tray-opaque-bottom.png similarity index 100% rename from devlog/_plan/260922_native_tray_release/evidence/web-tray-opaque-bottom.png rename to devlog/_fin/260922_native_tray_release/evidence/web-tray-opaque-bottom.png diff --git a/devlog/_plan/260922_native_tray_release/evidence/web-tray-vibrant-bottom.png b/devlog/_fin/260922_native_tray_release/evidence/web-tray-vibrant-bottom.png similarity index 100% rename from devlog/_plan/260922_native_tray_release/evidence/web-tray-vibrant-bottom.png rename to devlog/_fin/260922_native_tray_release/evidence/web-tray-vibrant-bottom.png diff --git a/devlog/_plan/260923_anthropic_fast_speed/010_plan.md b/devlog/_fin/260923_anthropic_fast_speed/010_plan.md similarity index 100% rename from devlog/_plan/260923_anthropic_fast_speed/010_plan.md rename to devlog/_fin/260923_anthropic_fast_speed/010_plan.md diff --git a/devlog/_plan/260923_anthropic_fast_speed/020_probe-evidence.md b/devlog/_fin/260923_anthropic_fast_speed/020_probe-evidence.md similarity index 100% rename from devlog/_plan/260923_anthropic_fast_speed/020_probe-evidence.md rename to devlog/_fin/260923_anthropic_fast_speed/020_probe-evidence.md diff --git a/devlog/_plan/260923_anthropic_fast_speed/030_reflection.md b/devlog/_fin/260923_anthropic_fast_speed/030_reflection.md similarity index 96% rename from devlog/_plan/260923_anthropic_fast_speed/030_reflection.md rename to devlog/_fin/260923_anthropic_fast_speed/030_reflection.md index a7af3f10043..01f06fd4232 100644 --- a/devlog/_plan/260923_anthropic_fast_speed/030_reflection.md +++ b/devlog/_fin/260923_anthropic_fast_speed/030_reflection.md @@ -1,6 +1,6 @@ # Reflection: Anthropic Fast D5 dispatch fallback -**Verdict: FAIL as written; NEAR-PASS after the concrete changes below.** D1-D4/D6 are consistent with the new probe: all three models accepted the OAuth Fast field but this account lacked entitlement (`devlog/_plan/260923_anthropic_fast_speed/020_probe-evidence.md:9-20,31-42`). The plan's pricing rule for both provider IDs is reasonable as a *confirmed-speed list-price estimate*, but D5's claim that `oauthDispatch` wraps every non-forward Anthropic send, and its proposed hidden second send there, do not hold (`010_plan.md:16-23`). This is a source audit, not a runtime test. +**Verdict: FAIL as written; NEAR-PASS after the concrete changes below.** D1-D4/D6 are consistent with the new probe: all three models accepted the OAuth Fast field but this account lacked entitlement (`devlog/_fin/260923_anthropic_fast_speed/020_probe-evidence.md:9-20,31-42`). The plan's pricing rule for both provider IDs is reasonable as a *confirmed-speed list-price estimate*, but D5's claim that `oauthDispatch` wraps every non-forward Anthropic send, and its proposed hidden second send there, do not hold (`010_plan.md:16-23`). This is a source audit, not a runtime test. ## Where `oauthDispatch` runs diff --git a/devlog/_plan/260923_anthropic_fast_speed/040_audit.md b/devlog/_fin/260923_anthropic_fast_speed/040_audit.md similarity index 100% rename from devlog/_plan/260923_anthropic_fast_speed/040_audit.md rename to devlog/_fin/260923_anthropic_fast_speed/040_audit.md diff --git a/devlog/_plan/260923_anthropic_fast_speed/050_build.md b/devlog/_fin/260923_anthropic_fast_speed/050_build.md similarity index 100% rename from devlog/_plan/260923_anthropic_fast_speed/050_build.md rename to devlog/_fin/260923_anthropic_fast_speed/050_build.md diff --git a/devlog/_plan/260923_anthropic_fast_speed/060_done.md b/devlog/_fin/260923_anthropic_fast_speed/060_done.md similarity index 100% rename from devlog/_plan/260923_anthropic_fast_speed/060_done.md rename to devlog/_fin/260923_anthropic_fast_speed/060_done.md diff --git a/devlog/_plan/260923_anthropic_fast_speed/evidence/logs-fast-downgrade.png b/devlog/_fin/260923_anthropic_fast_speed/evidence/logs-fast-downgrade.png similarity index 100% rename from devlog/_plan/260923_anthropic_fast_speed/evidence/logs-fast-downgrade.png rename to devlog/_fin/260923_anthropic_fast_speed/evidence/logs-fast-downgrade.png diff --git a/devlog/_plan/260923_bundle_a_tests_hygiene/000_triage.md b/devlog/_fin/260923_bundle_a_tests_hygiene/000_triage.md similarity index 100% rename from devlog/_plan/260923_bundle_a_tests_hygiene/000_triage.md rename to devlog/_fin/260923_bundle_a_tests_hygiene/000_triage.md diff --git a/devlog/_plan/260923_bundle_a_tests_hygiene/010_build.md b/devlog/_fin/260923_bundle_a_tests_hygiene/010_build.md similarity index 100% rename from devlog/_plan/260923_bundle_a_tests_hygiene/010_build.md rename to devlog/_fin/260923_bundle_a_tests_hygiene/010_build.md diff --git a/devlog/_plan/260923_bundle_a_tests_hygiene/020_delivery.md b/devlog/_fin/260923_bundle_a_tests_hygiene/020_delivery.md similarity index 100% rename from devlog/_plan/260923_bundle_a_tests_hygiene/020_delivery.md rename to devlog/_fin/260923_bundle_a_tests_hygiene/020_delivery.md diff --git a/devlog/_plan/260923_bundle_f1_provider_registry/000_overview.md b/devlog/_fin/260923_bundle_f1_provider_registry/000_overview.md similarity index 100% rename from devlog/_plan/260923_bundle_f1_provider_registry/000_overview.md rename to devlog/_fin/260923_bundle_f1_provider_registry/000_overview.md diff --git a/devlog/_plan/260923_bundle_f1_provider_registry/010_carry_plan.md b/devlog/_fin/260923_bundle_f1_provider_registry/010_carry_plan.md similarity index 100% rename from devlog/_plan/260923_bundle_f1_provider_registry/010_carry_plan.md rename to devlog/_fin/260923_bundle_f1_provider_registry/010_carry_plan.md diff --git a/devlog/_plan/260923_bundle_f1_provider_registry/020_delivery.md b/devlog/_fin/260923_bundle_f1_provider_registry/020_delivery.md similarity index 100% rename from devlog/_plan/260923_bundle_f1_provider_registry/020_delivery.md rename to devlog/_fin/260923_bundle_f1_provider_registry/020_delivery.md diff --git a/devlog/_plan/260923_bundle_lane_e/000_overview.md b/devlog/_fin/260923_bundle_lane_e/000_overview.md similarity index 100% rename from devlog/_plan/260923_bundle_lane_e/000_overview.md rename to devlog/_fin/260923_bundle_lane_e/000_overview.md diff --git a/devlog/_plan/260923_bundle_lane_e/010_decisions.md b/devlog/_fin/260923_bundle_lane_e/010_decisions.md similarity index 100% rename from devlog/_plan/260923_bundle_lane_e/010_decisions.md rename to devlog/_fin/260923_bundle_lane_e/010_decisions.md diff --git a/devlog/_plan/260923_bundle_lane_e/020_carry.md b/devlog/_fin/260923_bundle_lane_e/020_carry.md similarity index 100% rename from devlog/_plan/260923_bundle_lane_e/020_carry.md rename to devlog/_fin/260923_bundle_lane_e/020_carry.md diff --git a/devlog/_plan/260923_bundle_lane_e/030_verify.md b/devlog/_fin/260923_bundle_lane_e/030_verify.md similarity index 100% rename from devlog/_plan/260923_bundle_lane_e/030_verify.md rename to devlog/_fin/260923_bundle_lane_e/030_verify.md diff --git a/devlog/_plan/260923_claude_desktop_first_party_models/000_plan.md b/devlog/_fin/260923_claude_desktop_first_party_models/000_plan.md similarity index 100% rename from devlog/_plan/260923_claude_desktop_first_party_models/000_plan.md rename to devlog/_fin/260923_claude_desktop_first_party_models/000_plan.md diff --git a/devlog/_plan/260923_claude_desktop_first_party_models/001_probe_evidence.md b/devlog/_fin/260923_claude_desktop_first_party_models/001_probe_evidence.md similarity index 100% rename from devlog/_plan/260923_claude_desktop_first_party_models/001_probe_evidence.md rename to devlog/_fin/260923_claude_desktop_first_party_models/001_probe_evidence.md diff --git a/devlog/_plan/260923_claude_desktop_first_party_models/010_roadmap.md b/devlog/_fin/260923_claude_desktop_first_party_models/010_roadmap.md similarity index 100% rename from devlog/_plan/260923_claude_desktop_first_party_models/010_roadmap.md rename to devlog/_fin/260923_claude_desktop_first_party_models/010_roadmap.md diff --git a/devlog/_plan/260923_claude_desktop_first_party_models/020_wp2_first_party_bindings.md b/devlog/_fin/260923_claude_desktop_first_party_models/020_wp2_first_party_bindings.md similarity index 100% rename from devlog/_plan/260923_claude_desktop_first_party_models/020_wp2_first_party_bindings.md rename to devlog/_fin/260923_claude_desktop_first_party_models/020_wp2_first_party_bindings.md diff --git a/devlog/_plan/260923_claude_desktop_first_party_models/030_wp3_live_proof_and_pr.md b/devlog/_fin/260923_claude_desktop_first_party_models/030_wp3_live_proof_and_pr.md similarity index 100% rename from devlog/_plan/260923_claude_desktop_first_party_models/030_wp3_live_proof_and_pr.md rename to devlog/_fin/260923_claude_desktop_first_party_models/030_wp3_live_proof_and_pr.md diff --git a/devlog/_plan/260923_claude_reset_grants/010_plan.md b/devlog/_fin/260923_claude_reset_grants/010_plan.md similarity index 100% rename from devlog/_plan/260923_claude_reset_grants/010_plan.md rename to devlog/_fin/260923_claude_reset_grants/010_plan.md diff --git a/devlog/_plan/260923_configured_native_gpt_models/010_plan.md b/devlog/_fin/260923_configured_native_gpt_models/010_plan.md similarity index 100% rename from devlog/_plan/260923_configured_native_gpt_models/010_plan.md rename to devlog/_fin/260923_configured_native_gpt_models/010_plan.md diff --git a/devlog/_plan/260923_configured_native_gpt_models/020_audit.md b/devlog/_fin/260923_configured_native_gpt_models/020_audit.md similarity index 100% rename from devlog/_plan/260923_configured_native_gpt_models/020_audit.md rename to devlog/_fin/260923_configured_native_gpt_models/020_audit.md diff --git a/devlog/_plan/260923_docs_polish_404/000_plan.md b/devlog/_fin/260923_docs_polish_404/000_plan.md similarity index 100% rename from devlog/_plan/260923_docs_polish_404/000_plan.md rename to devlog/_fin/260923_docs_polish_404/000_plan.md diff --git a/devlog/_plan/260923_docs_polish_404/001_existing_link_failures.md b/devlog/_fin/260923_docs_polish_404/001_existing_link_failures.md similarity index 100% rename from devlog/_plan/260923_docs_polish_404/001_existing_link_failures.md rename to devlog/_fin/260923_docs_polish_404/001_existing_link_failures.md diff --git a/devlog/_plan/260923_docs_polish_404/010_wp2_link_integrity.md b/devlog/_fin/260923_docs_polish_404/010_wp2_link_integrity.md similarity index 100% rename from devlog/_plan/260923_docs_polish_404/010_wp2_link_integrity.md rename to devlog/_fin/260923_docs_polish_404/010_wp2_link_integrity.md diff --git a/devlog/_plan/260923_docs_polish_404/020_wp3_english_polish_readme_resync.md b/devlog/_fin/260923_docs_polish_404/020_wp3_english_polish_readme_resync.md similarity index 100% rename from devlog/_plan/260923_docs_polish_404/020_wp3_english_polish_readme_resync.md rename to devlog/_fin/260923_docs_polish_404/020_wp3_english_polish_readme_resync.md diff --git a/devlog/_plan/260923_docs_polish_404/021_wp3_macos_menu_bar_draft.md b/devlog/_fin/260923_docs_polish_404/021_wp3_macos_menu_bar_draft.md similarity index 100% rename from devlog/_plan/260923_docs_polish_404/021_wp3_macos_menu_bar_draft.md rename to devlog/_fin/260923_docs_polish_404/021_wp3_macos_menu_bar_draft.md diff --git a/devlog/_plan/260923_docs_polish_404/030_wp4_locale_coverage.md b/devlog/_fin/260923_docs_polish_404/030_wp4_locale_coverage.md similarity index 100% rename from devlog/_plan/260923_docs_polish_404/030_wp4_locale_coverage.md rename to devlog/_fin/260923_docs_polish_404/030_wp4_locale_coverage.md diff --git a/devlog/_plan/260923_docs_polish_404/040_wp5_delivery.md b/devlog/_fin/260923_docs_polish_404/040_wp5_delivery.md similarity index 100% rename from devlog/_plan/260923_docs_polish_404/040_wp5_delivery.md rename to devlog/_fin/260923_docs_polish_404/040_wp5_delivery.md diff --git a/devlog/_plan/260923_docs_retirement/000_plan.md b/devlog/_fin/260923_docs_retirement/000_plan.md similarity index 100% rename from devlog/_plan/260923_docs_retirement/000_plan.md rename to devlog/_fin/260923_docs_retirement/000_plan.md diff --git a/devlog/_plan/260923_docs_retirement/010_phase1_docs_retirement.md b/devlog/_fin/260923_docs_retirement/010_phase1_docs_retirement.md similarity index 100% rename from devlog/_plan/260923_docs_retirement/010_phase1_docs_retirement.md rename to devlog/_fin/260923_docs_retirement/010_phase1_docs_retirement.md diff --git a/devlog/_plan/260923_gpt6_catalog_lanes/000_plan.md b/devlog/_fin/260923_gpt6_catalog_lanes/000_plan.md similarity index 100% rename from devlog/_plan/260923_gpt6_catalog_lanes/000_plan.md rename to devlog/_fin/260923_gpt6_catalog_lanes/000_plan.md diff --git a/devlog/_plan/260923_gpt6_catalog_lanes/010_phase1_upstream_repin.md b/devlog/_fin/260923_gpt6_catalog_lanes/010_phase1_upstream_repin.md similarity index 100% rename from devlog/_plan/260923_gpt6_catalog_lanes/010_phase1_upstream_repin.md rename to devlog/_fin/260923_gpt6_catalog_lanes/010_phase1_upstream_repin.md diff --git a/devlog/_plan/260923_gpt6_catalog_lanes/020_phase2_roster_admission.md b/devlog/_fin/260923_gpt6_catalog_lanes/020_phase2_roster_admission.md similarity index 100% rename from devlog/_plan/260923_gpt6_catalog_lanes/020_phase2_roster_admission.md rename to devlog/_fin/260923_gpt6_catalog_lanes/020_phase2_roster_admission.md diff --git a/devlog/_plan/260923_gpt6_catalog_lanes/030_phase3_gpt6_rows.md b/devlog/_fin/260923_gpt6_catalog_lanes/030_phase3_gpt6_rows.md similarity index 100% rename from devlog/_plan/260923_gpt6_catalog_lanes/030_phase3_gpt6_rows.md rename to devlog/_fin/260923_gpt6_catalog_lanes/030_phase3_gpt6_rows.md diff --git a/devlog/_plan/260923_grok47_parity/000_plan.md b/devlog/_fin/260923_grok47_parity/000_plan.md similarity index 98% rename from devlog/_plan/260923_grok47_parity/000_plan.md rename to devlog/_fin/260923_grok47_parity/000_plan.md index 36e98e1cdba..d2dc1cf7bb2 100644 --- a/devlog/_plan/260923_grok47_parity/000_plan.md +++ b/devlog/_fin/260923_grok47_parity/000_plan.md @@ -57,7 +57,7 @@ Reflection: see "Reflection" below. 2. src/providers/registry/entries-core.ts, xai block: modelSupportsServiceTier, modelWireDefaults (oauth, responses inbound), modelInputModalities, preserveReasoningContentModels, modelReasoningEfforts [low..xhigh], modelDefaultReasoningEfforts high, modelContextWindows 500_000 — each with a grok-4.7 sibling of 4.6; comments cite - devlog/_plan/260923_grok47_parity/010_probe-evidence.md. Devin block: add "grok-4-7" after "grok-4-6" in models. + devlog/_fin/260923_grok47_parity/010_probe-evidence.md. Devin block: add "grok-4-7" after "grok-4-6" in models. OpenCode Go block: modelWireDefaults, modelReasoningEfforts, modelDefaultReasoningEfforts for grok-4.7. 3. src/adapters/devin/live-models.ts — DEVIN_MODEL_CONTEXT_WINDOWS "grok-4-7": 500_000; DEVIN_MODEL_EFFORTS (if it has per-model entries) "grok-4-7": low..max, default medium if a default map exists. diff --git a/devlog/_plan/260923_grok47_parity/010_probe-evidence.md b/devlog/_fin/260923_grok47_parity/010_probe-evidence.md similarity index 100% rename from devlog/_plan/260923_grok47_parity/010_probe-evidence.md rename to devlog/_fin/260923_grok47_parity/010_probe-evidence.md diff --git a/devlog/_plan/260923_luvs_l5_responses_usage/000_plan.md b/devlog/_fin/260923_luvs_l5_responses_usage/000_plan.md similarity index 100% rename from devlog/_plan/260923_luvs_l5_responses_usage/000_plan.md rename to devlog/_fin/260923_luvs_l5_responses_usage/000_plan.md diff --git a/devlog/_plan/260923_luvs_l5_responses_usage/010_phase1_small_units.md b/devlog/_fin/260923_luvs_l5_responses_usage/010_phase1_small_units.md similarity index 100% rename from devlog/_plan/260923_luvs_l5_responses_usage/010_phase1_small_units.md rename to devlog/_fin/260923_luvs_l5_responses_usage/010_phase1_small_units.md diff --git a/devlog/_plan/260923_luvs_l5_responses_usage/020_phase2_responses_sequence.md b/devlog/_fin/260923_luvs_l5_responses_usage/020_phase2_responses_sequence.md similarity index 100% rename from devlog/_plan/260923_luvs_l5_responses_usage/020_phase2_responses_sequence.md rename to devlog/_fin/260923_luvs_l5_responses_usage/020_phase2_responses_sequence.md diff --git a/devlog/_plan/260923_luvs_l5_responses_usage/030_phase3_search_usage.md b/devlog/_fin/260923_luvs_l5_responses_usage/030_phase3_search_usage.md similarity index 100% rename from devlog/_plan/260923_luvs_l5_responses_usage/030_phase3_search_usage.md rename to devlog/_fin/260923_luvs_l5_responses_usage/030_phase3_search_usage.md diff --git a/devlog/_plan/260923_luvs_l5_responses_usage/040_phase4_pr_ci_review.md b/devlog/_fin/260923_luvs_l5_responses_usage/040_phase4_pr_ci_review.md similarity index 100% rename from devlog/_plan/260923_luvs_l5_responses_usage/040_phase4_pr_ci_review.md rename to devlog/_fin/260923_luvs_l5_responses_usage/040_phase4_pr_ci_review.md diff --git a/devlog/_plan/260923_luvs_l5_responses_usage/050_phase5_close_originals.md b/devlog/_fin/260923_luvs_l5_responses_usage/050_phase5_close_originals.md similarity index 100% rename from devlog/_plan/260923_luvs_l5_responses_usage/050_phase5_close_originals.md rename to devlog/_fin/260923_luvs_l5_responses_usage/050_phase5_close_originals.md diff --git a/devlog/_plan/260923_models_catalog_delivery_disclosure/000_plan.md b/devlog/_fin/260923_models_catalog_delivery_disclosure/000_plan.md similarity index 100% rename from devlog/_plan/260923_models_catalog_delivery_disclosure/000_plan.md rename to devlog/_fin/260923_models_catalog_delivery_disclosure/000_plan.md diff --git a/devlog/_plan/260923_models_catalog_delivery_disclosure/010_architect.md b/devlog/_fin/260923_models_catalog_delivery_disclosure/010_architect.md similarity index 100% rename from devlog/_plan/260923_models_catalog_delivery_disclosure/010_architect.md rename to devlog/_fin/260923_models_catalog_delivery_disclosure/010_architect.md diff --git a/devlog/_plan/260923_models_catalog_delivery_disclosure/020_done.md b/devlog/_fin/260923_models_catalog_delivery_disclosure/020_done.md similarity index 100% rename from devlog/_plan/260923_models_catalog_delivery_disclosure/020_done.md rename to devlog/_fin/260923_models_catalog_delivery_disclosure/020_done.md diff --git a/devlog/_plan/260923_models_catalog_delivery_disclosure/evidence/ko-collapsed.png b/devlog/_fin/260923_models_catalog_delivery_disclosure/evidence/ko-collapsed.png similarity index 100% rename from devlog/_plan/260923_models_catalog_delivery_disclosure/evidence/ko-collapsed.png rename to devlog/_fin/260923_models_catalog_delivery_disclosure/evidence/ko-collapsed.png diff --git a/devlog/_plan/260923_models_catalog_delivery_disclosure/evidence/ko-expanded.png b/devlog/_fin/260923_models_catalog_delivery_disclosure/evidence/ko-expanded.png similarity index 100% rename from devlog/_plan/260923_models_catalog_delivery_disclosure/evidence/ko-expanded.png rename to devlog/_fin/260923_models_catalog_delivery_disclosure/evidence/ko-expanded.png diff --git a/devlog/_plan/260923_opus_5_5_catalog/010_plan.md b/devlog/_fin/260923_opus_5_5_catalog/010_plan.md similarity index 100% rename from devlog/_plan/260923_opus_5_5_catalog/010_plan.md rename to devlog/_fin/260923_opus_5_5_catalog/010_plan.md diff --git a/devlog/_plan/260923_opus_5_5_catalog/020_audit.md b/devlog/_fin/260923_opus_5_5_catalog/020_audit.md similarity index 100% rename from devlog/_plan/260923_opus_5_5_catalog/020_audit.md rename to devlog/_fin/260923_opus_5_5_catalog/020_audit.md diff --git a/devlog/_plan/260923_opus_5_5_catalog/030_done.md b/devlog/_fin/260923_opus_5_5_catalog/030_done.md similarity index 100% rename from devlog/_plan/260923_opus_5_5_catalog/030_done.md rename to devlog/_fin/260923_opus_5_5_catalog/030_done.md diff --git a/devlog/_plan/260923_opus_5_5_catalog/040_plan_providers.md b/devlog/_fin/260923_opus_5_5_catalog/040_plan_providers.md similarity index 100% rename from devlog/_plan/260923_opus_5_5_catalog/040_plan_providers.md rename to devlog/_fin/260923_opus_5_5_catalog/040_plan_providers.md diff --git a/devlog/_plan/260923_opus_5_5_catalog/050_done_providers.md b/devlog/_fin/260923_opus_5_5_catalog/050_done_providers.md similarity index 100% rename from devlog/_plan/260923_opus_5_5_catalog/050_done_providers.md rename to devlog/_fin/260923_opus_5_5_catalog/050_done_providers.md diff --git a/devlog/_plan/260923_opus_5_5_catalog/060_plan_preemptive.md b/devlog/_fin/260923_opus_5_5_catalog/060_plan_preemptive.md similarity index 100% rename from devlog/_plan/260923_opus_5_5_catalog/060_plan_preemptive.md rename to devlog/_fin/260923_opus_5_5_catalog/060_plan_preemptive.md diff --git a/devlog/_plan/260923_p1_provider_state_continuity/000_overview.md b/devlog/_fin/260923_p1_provider_state_continuity/000_overview.md similarity index 100% rename from devlog/_plan/260923_p1_provider_state_continuity/000_overview.md rename to devlog/_fin/260923_p1_provider_state_continuity/000_overview.md diff --git a/devlog/_plan/260923_p1_provider_state_continuity/010_part1_compat_contract.md b/devlog/_fin/260923_p1_provider_state_continuity/010_part1_compat_contract.md similarity index 100% rename from devlog/_plan/260923_p1_provider_state_continuity/010_part1_compat_contract.md rename to devlog/_fin/260923_p1_provider_state_continuity/010_part1_compat_contract.md diff --git a/devlog/_plan/260923_p1_provider_state_continuity/020_part2_shadow_target_lifecycle.md b/devlog/_fin/260923_p1_provider_state_continuity/020_part2_shadow_target_lifecycle.md similarity index 100% rename from devlog/_plan/260923_p1_provider_state_continuity/020_part2_shadow_target_lifecycle.md rename to devlog/_fin/260923_p1_provider_state_continuity/020_part2_shadow_target_lifecycle.md diff --git a/devlog/_plan/260923_p1_provider_state_continuity/030_delivery.md b/devlog/_fin/260923_p1_provider_state_continuity/030_delivery.md similarity index 100% rename from devlog/_plan/260923_p1_provider_state_continuity/030_delivery.md rename to devlog/_fin/260923_p1_provider_state_continuity/030_delivery.md diff --git a/devlog/_plan/260923_p2_update_continuity/000_roadmap.md b/devlog/_fin/260923_p2_update_continuity/000_roadmap.md similarity index 100% rename from devlog/_plan/260923_p2_update_continuity/000_roadmap.md rename to devlog/_fin/260923_p2_update_continuity/000_roadmap.md diff --git a/devlog/_plan/260923_p2_update_continuity/010_fenced_proxy_identity.md b/devlog/_fin/260923_p2_update_continuity/010_fenced_proxy_identity.md similarity index 100% rename from devlog/_plan/260923_p2_update_continuity/010_fenced_proxy_identity.md rename to devlog/_fin/260923_p2_update_continuity/010_fenced_proxy_identity.md diff --git a/devlog/_plan/260923_p2_update_continuity/020_updater_leftovers_and_guidance.md b/devlog/_fin/260923_p2_update_continuity/020_updater_leftovers_and_guidance.md similarity index 100% rename from devlog/_plan/260923_p2_update_continuity/020_updater_leftovers_and_guidance.md rename to devlog/_fin/260923_p2_update_continuity/020_updater_leftovers_and_guidance.md diff --git a/devlog/_plan/260923_p3_azure_opaque_recovery/000_roadmap.md b/devlog/_fin/260923_p3_azure_opaque_recovery/000_roadmap.md similarity index 100% rename from devlog/_plan/260923_p3_azure_opaque_recovery/000_roadmap.md rename to devlog/_fin/260923_p3_azure_opaque_recovery/000_roadmap.md diff --git a/devlog/_plan/260923_p3_azure_opaque_recovery/010_source.md b/devlog/_fin/260923_p3_azure_opaque_recovery/010_source.md similarity index 100% rename from devlog/_plan/260923_p3_azure_opaque_recovery/010_source.md rename to devlog/_fin/260923_p3_azure_opaque_recovery/010_source.md diff --git a/devlog/_plan/260923_p3_azure_opaque_recovery/020_tests.md b/devlog/_fin/260923_p3_azure_opaque_recovery/020_tests.md similarity index 100% rename from devlog/_plan/260923_p3_azure_opaque_recovery/020_tests.md rename to devlog/_fin/260923_p3_azure_opaque_recovery/020_tests.md diff --git a/devlog/_plan/260923_p3_azure_opaque_recovery/030_docs.md b/devlog/_fin/260923_p3_azure_opaque_recovery/030_docs.md similarity index 100% rename from devlog/_plan/260923_p3_azure_opaque_recovery/030_docs.md rename to devlog/_fin/260923_p3_azure_opaque_recovery/030_docs.md diff --git a/devlog/_plan/260923_p3_azure_opaque_recovery/040_delivery.md b/devlog/_fin/260923_p3_azure_opaque_recovery/040_delivery.md similarity index 100% rename from devlog/_plan/260923_p3_azure_opaque_recovery/040_delivery.md rename to devlog/_fin/260923_p3_azure_opaque_recovery/040_delivery.md diff --git a/devlog/_plan/260923_p3_azure_opaque_recovery/050_review_followup.md b/devlog/_fin/260923_p3_azure_opaque_recovery/050_review_followup.md similarity index 100% rename from devlog/_plan/260923_p3_azure_opaque_recovery/050_review_followup.md rename to devlog/_fin/260923_p3_azure_opaque_recovery/050_review_followup.md diff --git a/devlog/_plan/260923_p4_ci_pr_finish/000_plan.md b/devlog/_fin/260923_p4_ci_pr_finish/000_plan.md similarity index 100% rename from devlog/_plan/260923_p4_ci_pr_finish/000_plan.md rename to devlog/_fin/260923_p4_ci_pr_finish/000_plan.md diff --git a/devlog/_plan/260923_p4_ci_pr_finish/010_pr5469_privacy_gate.md b/devlog/_fin/260923_p4_ci_pr_finish/010_pr5469_privacy_gate.md similarity index 100% rename from devlog/_plan/260923_p4_ci_pr_finish/010_pr5469_privacy_gate.md rename to devlog/_fin/260923_p4_ci_pr_finish/010_pr5469_privacy_gate.md diff --git a/devlog/_plan/260923_p4_ci_pr_finish/020_pr5456_batch_deadline.md b/devlog/_fin/260923_p4_ci_pr_finish/020_pr5456_batch_deadline.md similarity index 100% rename from devlog/_plan/260923_p4_ci_pr_finish/020_pr5456_batch_deadline.md rename to devlog/_fin/260923_p4_ci_pr_finish/020_pr5456_batch_deadline.md diff --git a/devlog/_plan/260923_p4_ci_pr_finish/030_pr5471_latest_dev_wording.md b/devlog/_fin/260923_p4_ci_pr_finish/030_pr5471_latest_dev_wording.md similarity index 100% rename from devlog/_plan/260923_p4_ci_pr_finish/030_pr5471_latest_dev_wording.md rename to devlog/_fin/260923_p4_ci_pr_finish/030_pr5471_latest_dev_wording.md diff --git a/devlog/_plan/260923_p5_ci_release_gaps/000_plan.md b/devlog/_fin/260923_p5_ci_release_gaps/000_plan.md similarity index 100% rename from devlog/_plan/260923_p5_ci_release_gaps/000_plan.md rename to devlog/_fin/260923_p5_ci_release_gaps/000_plan.md diff --git a/devlog/_plan/260923_p5_ci_release_gaps/010_release_preflight.md b/devlog/_fin/260923_p5_ci_release_gaps/010_release_preflight.md similarity index 100% rename from devlog/_plan/260923_p5_ci_release_gaps/010_release_preflight.md rename to devlog/_fin/260923_p5_ci_release_gaps/010_release_preflight.md diff --git a/devlog/_plan/260923_p5_ci_release_gaps/020_release_outcome_report.md b/devlog/_fin/260923_p5_ci_release_gaps/020_release_outcome_report.md similarity index 100% rename from devlog/_plan/260923_p5_ci_release_gaps/020_release_outcome_report.md rename to devlog/_fin/260923_p5_ci_release_gaps/020_release_outcome_report.md diff --git a/devlog/_plan/260923_p5_ci_release_gaps/030_shard_balance.md b/devlog/_fin/260923_p5_ci_release_gaps/030_shard_balance.md similarity index 100% rename from devlog/_plan/260923_p5_ci_release_gaps/030_shard_balance.md rename to devlog/_fin/260923_p5_ci_release_gaps/030_shard_balance.md diff --git a/devlog/_plan/260923_p5_ci_release_gaps/040_scope_gap_checks.md b/devlog/_fin/260923_p5_ci_release_gaps/040_scope_gap_checks.md similarity index 100% rename from devlog/_plan/260923_p5_ci_release_gaps/040_scope_gap_checks.md rename to devlog/_fin/260923_p5_ci_release_gaps/040_scope_gap_checks.md diff --git a/devlog/_plan/260923_p5_ci_release_gaps/050_delivery.md b/devlog/_fin/260923_p5_ci_release_gaps/050_delivery.md similarity index 100% rename from devlog/_plan/260923_p5_ci_release_gaps/050_delivery.md rename to devlog/_fin/260923_p5_ci_release_gaps/050_delivery.md diff --git a/devlog/_plan/260923_subagent_roster_defaults_autosave/000_README.md b/devlog/_fin/260923_subagent_roster_defaults_autosave/000_README.md similarity index 100% rename from devlog/_plan/260923_subagent_roster_defaults_autosave/000_README.md rename to devlog/_fin/260923_subagent_roster_defaults_autosave/000_README.md diff --git a/devlog/_plan/260923_subagent_roster_defaults_autosave/010_gpt6_default_roster.md b/devlog/_fin/260923_subagent_roster_defaults_autosave/010_gpt6_default_roster.md similarity index 100% rename from devlog/_plan/260923_subagent_roster_defaults_autosave/010_gpt6_default_roster.md rename to devlog/_fin/260923_subagent_roster_defaults_autosave/010_gpt6_default_roster.md diff --git a/devlog/_plan/260923_subagent_roster_defaults_autosave/020_roster_autosave.md b/devlog/_fin/260923_subagent_roster_defaults_autosave/020_roster_autosave.md similarity index 100% rename from devlog/_plan/260923_subagent_roster_defaults_autosave/020_roster_autosave.md rename to devlog/_fin/260923_subagent_roster_defaults_autosave/020_roster_autosave.md diff --git a/devlog/_plan/260923_subagent_roster_defaults_autosave/030_delivery.md b/devlog/_fin/260923_subagent_roster_defaults_autosave/030_delivery.md similarity index 100% rename from devlog/_plan/260923_subagent_roster_defaults_autosave/030_delivery.md rename to devlog/_fin/260923_subagent_roster_defaults_autosave/030_delivery.md diff --git a/devlog/_plan/260923_subagent_roster_defaults_autosave/040_legacy_roster_cleanup.md b/devlog/_fin/260923_subagent_roster_defaults_autosave/040_legacy_roster_cleanup.md similarity index 100% rename from devlog/_plan/260923_subagent_roster_defaults_autosave/040_legacy_roster_cleanup.md rename to devlog/_fin/260923_subagent_roster_defaults_autosave/040_legacy_roster_cleanup.md diff --git a/devlog/_plan/260923_usage_timeline_pool_merge/000_plan.md b/devlog/_fin/260923_usage_timeline_pool_merge/000_plan.md similarity index 100% rename from devlog/_plan/260923_usage_timeline_pool_merge/000_plan.md rename to devlog/_fin/260923_usage_timeline_pool_merge/000_plan.md diff --git a/devlog/_plan/260923_usage_timeline_pool_merge/010_phase1.md b/devlog/_fin/260923_usage_timeline_pool_merge/010_phase1.md similarity index 100% rename from devlog/_plan/260923_usage_timeline_pool_merge/010_phase1.md rename to devlog/_fin/260923_usage_timeline_pool_merge/010_phase1.md diff --git a/devlog/_plan/260924_anthropic_fast_opt_in/010_plan.md b/devlog/_fin/260924_anthropic_fast_opt_in/010_plan.md similarity index 97% rename from devlog/_plan/260924_anthropic_fast_opt_in/010_plan.md rename to devlog/_fin/260924_anthropic_fast_opt_in/010_plan.md index 58a8a63a87e..511c2dbc3c7 100644 --- a/devlog/_plan/260924_anthropic_fast_opt_in/010_plan.md +++ b/devlog/_fin/260924_anthropic_fast_opt_in/010_plan.md @@ -5,7 +5,7 @@ - Request (2026-09-24): Anthropic fast mode spends usage credits, so keep it off by default; give the Anthropic provider card on the dashboard Models page one row that turns it on and off; open a PR and merge it. Push, PR, and merge are authorized for this change. -- Previous unit: devlog/_plan/260923_anthropic_fast_speed (#5604) made `claude-opus-5-5`, `claude-opus-5`, +- Previous unit: devlog/_fin/260923_anthropic_fast_speed (#5604) made `claude-opus-5-5`, `claude-opus-5`, `claude-opus-4-8` Fast-eligible on `anthropic` and `anthropic-apikey` with no switch other than the global `fastMode`. Its residual already named the cost: every turn on an account without credits pays a refused round trip, and an account with credits is billed 2x without a per-provider choice. diff --git a/devlog/_plan/260924_anthropic_forced_tool_choice/010_plan.md b/devlog/_fin/260924_anthropic_forced_tool_choice/010_plan.md similarity index 100% rename from devlog/_plan/260924_anthropic_forced_tool_choice/010_plan.md rename to devlog/_fin/260924_anthropic_forced_tool_choice/010_plan.md diff --git a/devlog/_plan/260924_claude_desktop_picker_mode/000_plan.md b/devlog/_fin/260924_claude_desktop_picker_mode/000_plan.md similarity index 100% rename from devlog/_plan/260924_claude_desktop_picker_mode/000_plan.md rename to devlog/_fin/260924_claude_desktop_picker_mode/000_plan.md diff --git a/devlog/_plan/260924_claude_desktop_picker_mode/001_research.md b/devlog/_fin/260924_claude_desktop_picker_mode/001_research.md similarity index 100% rename from devlog/_plan/260924_claude_desktop_picker_mode/001_research.md rename to devlog/_fin/260924_claude_desktop_picker_mode/001_research.md diff --git a/devlog/_plan/260924_claude_desktop_picker_mode/010_wp2_gateway_default_and_warning.md b/devlog/_fin/260924_claude_desktop_picker_mode/010_wp2_gateway_default_and_warning.md similarity index 100% rename from devlog/_plan/260924_claude_desktop_picker_mode/010_wp2_gateway_default_and_warning.md rename to devlog/_fin/260924_claude_desktop_picker_mode/010_wp2_gateway_default_and_warning.md diff --git a/devlog/_plan/260924_claude_desktop_picker_mode/020_wp3_picker_core.md b/devlog/_fin/260924_claude_desktop_picker_mode/020_wp3_picker_core.md similarity index 100% rename from devlog/_plan/260924_claude_desktop_picker_mode/020_wp3_picker_core.md rename to devlog/_fin/260924_claude_desktop_picker_mode/020_wp3_picker_core.md diff --git a/devlog/_plan/260924_claude_desktop_picker_mode/030_wp4_picker_activation.md b/devlog/_fin/260924_claude_desktop_picker_mode/030_wp4_picker_activation.md similarity index 100% rename from devlog/_plan/260924_claude_desktop_picker_mode/030_wp4_picker_activation.md rename to devlog/_fin/260924_claude_desktop_picker_mode/030_wp4_picker_activation.md diff --git a/devlog/_plan/260924_claude_desktop_picker_mode/040_wp5_live_proof_pr_merge.md b/devlog/_fin/260924_claude_desktop_picker_mode/040_wp5_live_proof_pr_merge.md similarity index 100% rename from devlog/_plan/260924_claude_desktop_picker_mode/040_wp5_live_proof_pr_merge.md rename to devlog/_fin/260924_claude_desktop_picker_mode/040_wp5_live_proof_pr_merge.md diff --git a/devlog/_plan/260924_cursor_fast_pricing/000_plan.md b/devlog/_fin/260924_cursor_fast_pricing/000_plan.md similarity index 100% rename from devlog/_plan/260924_cursor_fast_pricing/000_plan.md rename to devlog/_fin/260924_cursor_fast_pricing/000_plan.md diff --git a/devlog/_plan/260924_cursor_fast_pricing/010_implementation.md b/devlog/_fin/260924_cursor_fast_pricing/010_implementation.md similarity index 100% rename from devlog/_plan/260924_cursor_fast_pricing/010_implementation.md rename to devlog/_fin/260924_cursor_fast_pricing/010_implementation.md diff --git a/devlog/_plan/260924_cursor_fast_pricing/020_verification.md b/devlog/_fin/260924_cursor_fast_pricing/020_verification.md similarity index 100% rename from devlog/_plan/260924_cursor_fast_pricing/020_verification.md rename to devlog/_fin/260924_cursor_fast_pricing/020_verification.md diff --git a/devlog/_plan/260924_l3_provider_adapters/010_plan.md b/devlog/_fin/260924_l3_provider_adapters/010_plan.md similarity index 100% rename from devlog/_plan/260924_l3_provider_adapters/010_plan.md rename to devlog/_fin/260924_l3_provider_adapters/010_plan.md diff --git a/devlog/_plan/260924_l4_codex_cli_service/000_roadmap.md b/devlog/_fin/260924_l4_codex_cli_service/000_roadmap.md similarity index 100% rename from devlog/_plan/260924_l4_codex_cli_service/000_roadmap.md rename to devlog/_fin/260924_l4_codex_cli_service/000_roadmap.md diff --git a/devlog/_plan/260924_l4_codex_cli_service/010_carry_ready_prs.md b/devlog/_fin/260924_l4_codex_cli_service/010_carry_ready_prs.md similarity index 100% rename from devlog/_plan/260924_l4_codex_cli_service/010_carry_ready_prs.md rename to devlog/_fin/260924_l4_codex_cli_service/010_carry_ready_prs.md diff --git a/devlog/_plan/260924_l4_codex_cli_service/020_subagent_identity_5221.md b/devlog/_fin/260924_l4_codex_cli_service/020_subagent_identity_5221.md similarity index 100% rename from devlog/_plan/260924_l4_codex_cli_service/020_subagent_identity_5221.md rename to devlog/_fin/260924_l4_codex_cli_service/020_subagent_identity_5221.md diff --git a/devlog/_plan/260924_l4_codex_cli_service/030_agent_message_recovery_5009.md b/devlog/_fin/260924_l4_codex_cli_service/030_agent_message_recovery_5009.md similarity index 100% rename from devlog/_plan/260924_l4_codex_cli_service/030_agent_message_recovery_5009.md rename to devlog/_fin/260924_l4_codex_cli_service/030_agent_message_recovery_5009.md diff --git a/devlog/_plan/260924_l4_codex_cli_service/040_main_hard_lock_default_5694.md b/devlog/_fin/260924_l4_codex_cli_service/040_main_hard_lock_default_5694.md similarity index 100% rename from devlog/_plan/260924_l4_codex_cli_service/040_main_hard_lock_default_5694.md rename to devlog/_fin/260924_l4_codex_cli_service/040_main_hard_lock_default_5694.md diff --git a/devlog/_plan/260924_l4_codex_cli_service/050_publish.md b/devlog/_fin/260924_l4_codex_cli_service/050_publish.md similarity index 90% rename from devlog/_plan/260924_l4_codex_cli_service/050_publish.md rename to devlog/_fin/260924_l4_codex_cli_service/050_publish.md index 89e1484903c..64ef6196de6 100644 --- a/devlog/_plan/260924_l4_codex_cli_service/050_publish.md +++ b/devlog/_fin/260924_l4_codex_cli_service/050_publish.md @@ -3,7 +3,7 @@ Rebase on origin/dev; bun run typecheck; focused tests for every item; bun run t ## wp5 P (executable) - origin/dev moved to df61bcecd5 (#5737, #5738). Overlapping files: docs-site reference/configuration/providers.md, scripts/test-layout/layout.json, structure/config.md, structure/subagents.md, tests/fixtures/test-layout-expected.json. Resolve by keeping both sides' entries. -- Before rebase: git mv devlog/_plan/260924_l4_codex_cli_service -> devlog/_fin/ is deferred until after merge (unit stays open while the PR is open). +- Before rebase: git mv devlog/_fin/260924_l4_codex_cli_service -> devlog/_fin/ is deferred until after merge (unit stays open while the PR is open). - Validation after rebase: bun run typecheck; focused union of all item tests; bun run test:changed (worktree under /Users/jun/.codex trips the test-home guard for some temp-dir tests — compare any failure with a pristine git archive copy); bun run privacy:scan; bun run structure:check; bun run lint:gui. - GUI screenshot: run the dashboard (bun run src/cli/index.ts start on a spare port with a throwaway OPENCODEX_HOME), open Codex settings > Multi-auth > Advanced, capture the 98% card to .tmp/. Hosting: pr-assets push only if the user authorizes; otherwise the coordinator uploads it. - PR body: Summary per item with Carries/Closes lines, Security review for #5713, Verification with commands, Checklist, coordinator decisions (Reserve trade-off, previous opt-outs re-enabled, stale connect marker retention, 64 MiB indeterminate). diff --git a/devlog/_plan/260924_regression_risk_fixes/000_overview.md b/devlog/_fin/260924_regression_risk_fixes/000_overview.md similarity index 100% rename from devlog/_plan/260924_regression_risk_fixes/000_overview.md rename to devlog/_fin/260924_regression_risk_fixes/000_overview.md diff --git a/devlog/_plan/260924_regression_risk_fixes/010_wsl_home.md b/devlog/_fin/260924_regression_risk_fixes/010_wsl_home.md similarity index 100% rename from devlog/_plan/260924_regression_risk_fixes/010_wsl_home.md rename to devlog/_fin/260924_regression_risk_fixes/010_wsl_home.md diff --git a/devlog/_plan/260924_regression_risk_fixes/020_windows_mise_node.md b/devlog/_fin/260924_regression_risk_fixes/020_windows_mise_node.md similarity index 100% rename from devlog/_plan/260924_regression_risk_fixes/020_windows_mise_node.md rename to devlog/_fin/260924_regression_risk_fixes/020_windows_mise_node.md diff --git a/devlog/_plan/260924_regression_risk_fixes/030_echo_filter.md b/devlog/_fin/260924_regression_risk_fixes/030_echo_filter.md similarity index 100% rename from devlog/_plan/260924_regression_risk_fixes/030_echo_filter.md rename to devlog/_fin/260924_regression_risk_fixes/030_echo_filter.md diff --git a/devlog/_plan/260924_regression_risk_fixes/040_tool_call_hold.md b/devlog/_fin/260924_regression_risk_fixes/040_tool_call_hold.md similarity index 100% rename from devlog/_plan/260924_regression_risk_fixes/040_tool_call_hold.md rename to devlog/_fin/260924_regression_risk_fixes/040_tool_call_hold.md diff --git a/devlog/_plan/260924_regression_risk_fixes/050_delivery.md b/devlog/_fin/260924_regression_risk_fixes/050_delivery.md similarity index 100% rename from devlog/_plan/260924_regression_risk_fixes/050_delivery.md rename to devlog/_fin/260924_regression_risk_fixes/050_delivery.md diff --git a/devlog/_plan/260924_update_indicator/000_plan.md b/devlog/_fin/260924_update_indicator/000_plan.md similarity index 100% rename from devlog/_plan/260924_update_indicator/000_plan.md rename to devlog/_fin/260924_update_indicator/000_plan.md diff --git a/devlog/_plan/260924_update_indicator/001_sol_plan_draft.md b/devlog/_fin/260924_update_indicator/001_sol_plan_draft.md similarity index 100% rename from devlog/_plan/260924_update_indicator/001_sol_plan_draft.md rename to devlog/_fin/260924_update_indicator/001_sol_plan_draft.md diff --git a/devlog/_plan/260924_update_indicator/002_architect_proposal.md b/devlog/_fin/260924_update_indicator/002_architect_proposal.md similarity index 100% rename from devlog/_plan/260924_update_indicator/002_architect_proposal.md rename to devlog/_fin/260924_update_indicator/002_architect_proposal.md diff --git a/devlog/_plan/260924_update_indicator/010_phase1_package_cache.md b/devlog/_fin/260924_update_indicator/010_phase1_package_cache.md similarity index 100% rename from devlog/_plan/260924_update_indicator/010_phase1_package_cache.md rename to devlog/_fin/260924_update_indicator/010_phase1_package_cache.md diff --git a/devlog/_plan/260924_update_indicator/020_phase2_desktop_state_icons.md b/devlog/_fin/260924_update_indicator/020_phase2_desktop_state_icons.md similarity index 99% rename from devlog/_plan/260924_update_indicator/020_phase2_desktop_state_icons.md rename to devlog/_fin/260924_update_indicator/020_phase2_desktop_state_icons.md index be8a608e57b..9e4eae2e4d6 100644 --- a/devlog/_plan/260924_update_indicator/020_phase2_desktop_state_icons.md +++ b/devlog/_fin/260924_update_indicator/020_phase2_desktop_state_icons.md @@ -1265,7 +1265,7 @@ The commands below record the earlier *pre-B* runs on 2026-09-24 after root and | bun test tests/server/sidebar-routes.test.ts tests/server/management-route-registry.test.ts tests/ci-workflows/build-desktop-icon-set.test.ts tests/cli/cli-capabilities.test.ts (repository root) | 0 | 52 pass, 0 fail across four files; existing source only, no plan read. | | bun test tests/test-layout-tooling.test.ts (repository root) | 0 | 16 pass, 0 fail; reads existing layout JSON and fixture, not the plan. | | bun test tests/desktop-shell.test.ts (gui/) | 0 | 3 pass, 0 fail; reads existing GUI helper, not the plan. | -| bun -e 'const text = require("node:fs").readFileSync("devlog/_plan/260924_update_indicator/020_phase2_desktop_state_icons.md", "utf8"); const transpiler = new Bun.Transpiler({ loader: "ts" }); for (const marker of ["### New src/update/desktop-badge.ts", "NEW tests/update/update-desktop-badge.test.ts"]) { const part = text.slice(text.indexOf(marker)); const match = part.match(/~~~ts\n([\s\S]*?)\n~~~/); if (!match) throw new Error("missing " + marker); transpiler.transformSync(match[1]); } console.log("2 complete new TypeScript blocks parse");' (repository root) | 0 | Both complete new TypeScript blocks parsed; this command reads this plan directly. It is syntax evidence, not typechecking or behavior. | +| bun -e 'const text = require("node:fs").readFileSync("devlog/_fin/260924_update_indicator/020_phase2_desktop_state_icons.md", "utf8"); const transpiler = new Bun.Transpiler({ loader: "ts" }); for (const marker of ["### New src/update/desktop-badge.ts", "NEW tests/update/update-desktop-badge.test.ts"]) { const part = text.slice(text.indexOf(marker)); const match = part.match(/~~~ts\n([\s\S]*?)\n~~~/); if (!match) throw new Error("missing " + marker); transpiler.transformSync(match[1]); } console.log("2 complete new TypeScript blocks parse");' (repository root) | 0 | Both complete new TypeScript blocks parsed; this command reads this plan directly. It is syntax evidence, not typechecking or behavior. | | bun run icons:check (desktop/) | 0 | 18 generated icons match existing source; reads icon generator/assets, not the plan. The earlier trial spelling bun --cwd desktop run icons:check printed Bun usage with exit 0 and was not treated as a verifier. | | cargo test --manifest-path desktop/src-tauri/Cargo.toml (repository root) | 101 | The earlier run stopped before Rust tests because binaries/ocx-aarch64-apple-darwin was absent. This is environment setup, not a Rust test result. CI prepares an empty host-triple placeholder; B must do the same locally before retesting. | | swift -e 'import AppKit; let b = NSStatusBarButton(); print(b.cell?.imageRect(forBounds: b.bounds) as Any)' (repository root) | 0 | Confirmed the existing AppKit imageRect API resolves; this is not an overlay visual test and does not read plan. | diff --git a/devlog/_plan/260924_update_indicator/030_phase3_desktop_update_page.md b/devlog/_fin/260924_update_indicator/030_phase3_desktop_update_page.md similarity index 98% rename from devlog/_plan/260924_update_indicator/030_phase3_desktop_update_page.md rename to devlog/_fin/260924_update_indicator/030_phase3_desktop_update_page.md index 2e555612b60..9fd83af2870 100644 --- a/devlog/_plan/260924_update_indicator/030_phase3_desktop_update_page.md +++ b/devlog/_fin/260924_update_indicator/030_phase3_desktop_update_page.md @@ -967,9 +967,9 @@ After B, run `bun test ./gui/tests/desktop-shell.test.ts ./tests/clients/desktop The focused baseline tests do not read this document or the proposed page, so their result establishes only current conventions. -The docs-only target was checked directly with `bun -e 'import { readFileSync } from "node:fs"; import { scanText } from "./scripts/privacy-scan.ts"; const path = "devlog/_plan/260924_update_indicator/030_phase3_desktop_update_page.md"; const findings = scanText(path, readFileSync(path, "utf8")); console.log(`target privacy findings: ${findings.length}`); if (findings.length) process.exit(1)'`: exit 0, zero findings. This command reads this file. Repeat `bun run privacy:scan` after main stages the plan so the tracked-file walk includes it. +The docs-only target was checked directly with `bun -e 'import { readFileSync } from "node:fs"; import { scanText } from "./scripts/privacy-scan.ts"; const path = "devlog/_fin/260924_update_indicator/030_phase3_desktop_update_page.md"; const findings = scanText(path, readFileSync(path, "utf8")); console.log(`target privacy findings: ${findings.length}`); if (findings.length) process.exit(1)'`: exit 0, zero findings. This command reads this file. Repeat `bun run privacy:scan` after main stages the plan so the tracked-file walk includes it. -The proposed page script was parsed directly from this document with `bun -e 'import { readFileSync } from "node:fs"; import { Script } from "node:vm"; const text = readFileSync("devlog/_plan/260924_update_indicator/030_phase3_desktop_update_page.md", "utf8"); const html = text.match(/### NEW `desktop\/ui\/update\.html`[^]*?```html\n([^]*?)\n```/)?.[1]; if (!html) throw new Error("page block missing"); const script = html.match(/