Todo or else, a CLI for enforcing Todo deadlines
Fails CI builds when TODO deadlines expire, using Tree-sitter instead of fragile regex patterns.

Tech debt tracking in-repo beats scattered tickets, but YAML storage may scale poorly.
Backend developers and engineering teams managing technical debt
GitHub Issues · Linear · Conventional Comments
- TODOs are scattered across files/apps/messages - “Critical” fixes don’t actually block people from collecting debt - PR comments or tickets aren’t enough actionable
So I built codereport, a CLI that stores structured follow-ups in the repo itself (.codereports/). Each report tracks:
- file + line range (src/foo.rs:42-88) - tag (todo, refactor, buggy, critical) - severity (you can configure it to be blocking in CI) - optional expiration date - owner (CODEOWNERS → git blame fallback)
You can list, resolve, or delete reports, generate a minimal HTML dashboard with heatmaps and KPIs, and run codereport check in CI to fail merges if anything blocking or expired is still open.
It’s repo-first, and doesn’t rely on any external services.
I’m curious:
Would a tool like this fit in your workflow? Is storing reports in YAML in the repo reasonable? Would CI enforcement feel useful or annoying?
CLI: https://crates.io/crates/codereport + codereport.pulko-app.com
Fails CI builds when TODO deadlines expire, using Tree-sitter instead of fragile regex patterns.
Yet another prompt optimizer when PromptPerfect and built-in model tools already exist.
Fetches live App Store metadata by Bundle ID for indie dev project tracking.
Keyboard-obsessed todo app that integrates Claude Code agents via MCP.
Yet another feed aggregator, but HN + GitHub combo is actually useful.
Code linter meets ChatGPT, but Sonarqube and GitHub Copilot already do this better.