feat: add click-based colorized output with progress events and build timer

- Add click as explicit dependency (already bundled with typer)
- Replace typer.echo calls with click.echo + click.style for colorized output
- Add BuildEvent enum and ProgressCallback to builder for decoupled progress reporting
- Remove direct typer dependency from builder module
- Show per-target status with colored labels (skip/ok/fail/...)
- Display elapsed build time in summary
- Colorize graph and clean command output
- Update CLI tests to match new output format
This commit is contained in:
Konstantin Fickel 2026-02-14 21:25:38 +01:00
parent 6a9d7efd5d
commit ee6c411f3c
Signed by: kfickel
GPG key ID: A793722F9933C1A5
5 changed files with 141 additions and 26 deletions

2
uv.lock generated
View file

@ -49,6 +49,7 @@ name = "bulkgen"
version = "0.1.0"
source = { editable = "." }
dependencies = [
{ name = "click" },
{ name = "httpx" },
{ name = "mistralai" },
{ name = "networkx" },
@ -67,6 +68,7 @@ dev = [
[package.metadata]
requires-dist = [
{ name = "click", specifier = ">=8.0.0" },
{ name = "httpx", specifier = ">=0.27.0" },
{ name = "mistralai", specifier = ">=1.0.0" },
{ name = "networkx", specifier = ">=3.6.1" },