Skip to content

T-55H8-task-start-finds-nested-planning-root-tasks

State: planning/draft · Impact: high · Complexity: small

Starting a determined task fails with “task file not found on origin/main” unless --main-repo happens to point at the subproject. task start must find the task wherever it lives while still placing the worktree under the git root.

lib/model/entities/task/ops/start.ts sets mainRepo = resolveMainRepo(worktree, opts.mainRepoOverride, runner) (L188; the helper calls mainCheckoutFrom at L92, and --main-repo overrides it), the git primary checkout, then reads the task with readTask(basename, { projectRoot: mainRepo, at: 'origin/main' }) (L210-217), which only looks in the root docs/planning/tasks. Its flags (L298-326) have no --project-root. The old skills/task-work/start_task.ts is gone; this op replaced it.

task start keeps the git primary checkout for worktree placement and finds the task file at origin/main through the multi-root lookup from T-9WPJ-resolve-searches-every-planning-root.

  1. Reuse T-9WPJ’s root discovery to find which root holds the task at origin/main.
  2. Read the task from that root; keep mainRepo for the worktree and lease.
  3. Add a test with a nested-root task started from the repo root.
AreaNote
solutions/ontological/lib/model/entities/task/ops/start.tsTask read and worktree placement
  • AC-1: sdlc task start on a determined task succeeds from the repo root without --main-repo.
  • AC-2: The worktree lands under the git root’s worktree directory (see T-8CK0).
  • AC-3: A test covers a nested-root task.
  • Moving worktree-root logic into one helper (T-8CK0).

T-9WPJ-resolve-searches-every-planning-root


← Back to Tasks