Skip to content

T-FC8W-task-work-graceful-no-justfile-fallback

Status: closed/superseded · Impact: medium · Complexity: medium

The /sdlc:task-work skill assumes every project has a justfile exposing setup-worktree, full-check, and ci targets. When a project doesn’t (e.g. a docs/plugin repo without project-level meta-CI), the mandated commands fail noisily and the implementer is left guessing whether the failures matter. The skill should detect missing tooling and degrade gracefully instead of leaning on the operator to fudge it.

/Users/sksizer2/.claude/plugins/sdlc/skills/task-work/SKILL.md Step 4 contains the unconditional sequence:

mise trust && just setup-worktree

with the note “Do this once per worktree … before any other commit attempt.” Step 7 contains the unconditional sequence:

just full-check
just ci

These break in projects that have no justfile (e.g. this repo — /Users/sksizer2/Developer/dev — has no justfile at the root). The fallback today is “the operator absorbs the error and decides whether to proceed”, which is exactly the kind of human judgment the skill is supposed to remove.

/sdlc:task-work detects missing tooling up front and either skips those steps cleanly or surfaces a single explicit decision to the user (“no quality gate detected — proceed without one? [y/N]”) rather than firing a command that will fail. Project-specific quality gates (e.g. python3 plugin/skills/entities-audit/tests/run_evals.py) can be declared in a per-project config the skill consults.

  1. Add a project-level config the skill reads early (likely docs/planning/.task-work.toml or a section in CLAUDE.md) that declares: setup_command, quality_check_command, ci_command. All optional; absence means “no command for this phase”.
  2. Replace the hardcoded just … calls in Step 4 and Step 7 with “run the configured command if any, otherwise note no <phase> command configured and continue”.
  3. Document the config in the skill’s reference docs and add a migration note to the project CLAUDE.md template.
  • /Users/sksizer2/.claude/plugins/sdlc/skills/task-work/SKILL.md — replace hardcoded just invocations in Step 4 and Step 7 with config-driven commands.
  • /Users/sksizer2/.claude/plugins/sdlc/skills/task-work/ — possibly a helper script that reads the config and prints the command for a given phase.
  • Per-project config file path (new, exact location TBD).
  • AC-1: Running /sdlc:task-work in a project without a justfile no longer errors at Step 4 or Step 7.
  • AC-2: A project with project-level CI continues to invoke its configured commands (via the new config) and behaves identically to today.
  • AC-3: The skill emits a single clear log line for each skipped phase (e.g. Step 7: no quality_check_command configured — skipping).
  • Auto-detecting common build systems (pnpm, cargo, etc.) — explicit config first; auto-detection can come later.
  • Migrating other skills that also hardcode just ….
  • none

Spawned by /sdlc:task-work post-mortem of T-QIBD-audit-memoizes-parsed-frontmatter on 2026-05-19, which ran in a repo with no justfile.


← Back to Tasks