Hmbown/CodeWhale · error
owned skill anchor {} does not exist
Error message
owned skill anchor {} does not exist What it means
In validate_owned_target_chain the workspace/home anchor itself does not exist as a real directory while require_existing is true. This fires for mutations (update/remove/trust) that presuppose an already-initialized skills root: if the anchor directory is gone, the audited state is stale and the mutation cannot proceed safely. The missing anchor path is the input at fault; with require_existing=false this same condition is tolerated.
Source
Thrown at crates/tui/src/skills/mutation.rs:182
/// Validate the complete owned-root chain without following a symlink in the
/// workspace/home anchor, `.codewhale`, or `skills` component.
fn validate_owned_target_chain(
anchor: &Path,
skills_dir: &Path,
require_existing: bool,
) -> Result<()> {
let expected = anchor.join(".codewhale").join("skills");
if skills_dir != expected {
bail!(
"refusing to mutate non-canonical CodeWhale skills root {}",
skills_dir.display()
);
}
let anchor_exists = checked_real_directory(anchor)?;
if !anchor_exists {
if require_existing {
bail!("owned skill anchor {} does not exist", anchor.display());
}
return Ok(());
}
let codewhale_dir = anchor.join(".codewhale");
let codewhale_exists = checked_real_directory(&codewhale_dir)?;
if !codewhale_exists {
if require_existing {
bail!(
"owned skill parent {} does not exist",
codewhale_dir.display()
);
}
return Ok(());
}
let skills_exists = checked_real_directory(skills_dir)?;
if !skills_exists {View on GitHub (pinned to 0c42157ee5)
Solutions
- Recreate the workspace or home directory expected as the anchor
- Re-run a skills scan/audit so descriptors reflect the missing root
- Install the skill first if the owned roots were never initialized
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/tui/src/skills/mutation.rs:182 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Hmbown/CodeWhale@0c42157ee5 (2026-08-20).
Data as JSON: /api/errors/443430687154bdbc.
Report an issue: GitHub.