Skip to content

chore(taskfile): trim to ≤100 lines (90), drop pure CLI wrappers#29

Merged
Doctacon merged 1 commit into
mainfrom
trim-taskfile
Apr 21, 2026
Merged

chore(taskfile): trim to ≤100 lines (90), drop pure CLI wrappers#29
Doctacon merged 1 commit into
mainfrom
trim-taskfile

Conversation

@Doctacon
Copy link
Copy Markdown
Owner

Summary

  • Taskfile.yaml 163 → 90 lines (target ≤100 per ticket:taskfile-trim)
  • Drops pure CLI wrappers: setup (folded into install), staging:generate, staging:check, check:layout, default
  • Remaining 16 targets are all compose / env-setting / forker-facing defaults, each with a desc:
  • docs/commands.md gains a Source layout + staging codegen section for the dropped wrappers
  • CLAUDE.md Task block reflects the new shape

Closes ticket:taskfile-trim — final ticket of initiative:scaffold-polish.

Task list after trim

* ci:                 Every CI gate: ruff + mypy + pytest + secret scan + staging drift
* clean:              Remove build + test + cache artifacts
* clean-all:          Clean + drop .venv, data/, .dlt_state/
* full-refresh:       Every dlt source + SQLMesh + Soda via Dagster
* init:               Rebrand a fresh fork from scaffold.yaml
* install:            Bootstrap .venv, copy .env, uv sync, install pre-commit hook
* new-source:         Scaffold a new dlt source
* promote:            Auto-apply dev → prod promotion
* streamlit:          Launch Databox Explorer
* verify:             Smoke full-refresh — DATABOX_SMOKE=1
* dagster:dev:        Launch Dagster UI
* db:reset:           Delete local DuckDB files
* docs:build:         Render notebooks, generate dictionary + cost page, build MkDocs
* plan:dev:           SQLMesh plan against the dev virtual env
* plan:prod:          SQLMesh plan against prod
* verify:dev:         Run every Soda contract against __dev schemas

Test plan

  • wc -l Taskfile.yaml ≤ 100 (got 90)
  • task --list renders all 16 targets with descs
  • task ci invokes cleanly through install → ruff → format → pytest → secret scan → staging drift (mypy pre-existing errors unchanged; continue-on-error in CI)
  • README Quickstart commands still resolve (install, full-refresh, dagster:dev, plan:dev, verify:dev, plan:prod, streamlit, init, verify, ci)
  • CI green on this PR

🤖 Generated with Claude Code

Taskfile.yaml: 163 → 90 lines. Target (≤100 per ticket:taskfile-trim) met.

Dropped pure wrappers:
- `setup` (folded into `install`)
- `staging:generate`, `staging:check` (now in task ci; docs/commands.md has the
  standalone invocation)
- `check:layout` (`python scripts/check_source_layout.py` documented in
  docs/commands.md and CLAUDE.md)
- `default` (task --list is trivial)

Kept 16 targets, all with desc: and compose / env-setting / forker-facing
defaults. README Quickstart commands all still resolve.

docs/commands.md gains Source layout + staging codegen section.
CLAUDE.md Task block updated to reflect the new `task install` (absorbed
`setup`) and direct-script references.

Smoke: `task --list` clean, `task ci` invokes install → ruff → ruff format →
mypy → pytest → secret scan → staging drift (mypy's 7 pre-existing errors
are out of scope; CI treats typecheck as continue-on-error per
ticket:ci-github-actions residual).

Closes ticket:taskfile-trim.
@Doctacon Doctacon merged commit c3c49d8 into main Apr 21, 2026
15 checks passed
@Doctacon Doctacon deleted the trim-taskfile branch April 21, 2026 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant