Skip to content

feat(cli): Introduce CLI for local dev, API queries, and reports#66

Closed
caiocollete wants to merge 4 commits intoWorld-Open-Graph:mainfrom
caiocollete:cli
Closed

feat(cli): Introduce CLI for local dev, API queries, and reports#66
caiocollete wants to merge 4 commits intoWorld-Open-Graph:mainfrom
caiocollete:cli

Conversation

@caiocollete
Copy link

@caiocollete caiocollete commented Mar 7, 2026

Summary

Add BR-ACC CLI for local development, API queries, ETL workflows, and report viewing. Centralizes commands that were previously run via docker compose, shell scripts, and manual API calls.

Release metadata

Release note (PT-BR):
CLI oficial do BR-ACC para operar o ambiente local, consultar a API pública, executar ETLs e acessar relatórios.

Release note (EN):
Official BR-ACC CLI for local operations, public API queries, ETL pipelines, and report access.

Release highlights (PT-BR, bullets with |):
| Comandos dev (up, down, restart, seed) para ambiente local |
| Healthcheck da API e Neo4j |
| Consultas à API pública (meta, company, patterns) |
| Execução de ETLs (list, run, run-all, status) |
| Leitura de relatórios em audit-results/ |

Release highlights (EN, bullets with |):
| dev commands (up, down, restart, seed) for local environment |
| API and Neo4j healthcheck |
| Public API queries (meta, company, patterns) |
| ETL execution (list, run, run-all, status) |
| Report reading from audit-results/ |

Included pattern IDs (comma-separated, or none):
none

Technical changes (PT-BR, bullets with |):
| Novo pacote bracc-cli em cli/ com Typer e Rich |
| Integração com bracc-etl via uv run ou binário |
| Configuração via .env (BRACC_API_URL, NEO4J_PASSWORD) |

Technical changes (EN, bullets with |):
| New bracc-cli package in cli/ using Typer and Rich |
| Integration with bracc-etl via uv run or binary |
| Configuration via .env (BRACC_API_URL, NEO4J_PASSWORD) |

Change type (choose one release label from taxonomy):

  • release:major
  • release:feature
  • release:patterns
  • release:api
  • release:data
  • release:privacy
  • release:fix
  • release:docs
  • release:infra
  • release:security

Breaking change?

  • No
  • Yes (describe migration/impact in summary)

Validation

  • Local tests/checks passed for impacted scope
  • CI and Security checks are green
  • Exactly one release label is set on this PR

Public safety and compliance checklist

  • No personal identifier exposure was introduced
  • PUBLIC_MODE behavior was reviewed (if relevant)
  • Public boundary gate is green
  • Public endpoints and demo data contain no personal data fields
  • Legal/policy docs were reviewed for scope-impacting changes
  • Snapshot boundary remains compliant with docs/release/public_boundary_matrix.csv

Risk and rollback

Risk: Low. The CLI is additive and does not change API, ETL, or frontend. It only adds a new tool for developers.

Rollback: Remove the cli/ directory and the bracc-cli package. No impact on existing services.

- Added pyproject.toml for project configuration and dependencies.
- Created main CLI entry point in main.py using Typer.
- Implemented command groups for API queries, development management, ETL processes, health checks, and report generation.
- Introduced configuration management with settings loaded from environment variables.
- Established command structure for querying the public BR-ACC API and managing local development environments.
…tions and command structure

- Introduced a detailed README.md for the BR-ACC CLI, outlining its functionalities, installation steps, configuration options, command structure, and usage examples.
- Documented requirements and environment variable configurations necessary for operation.
- Included sections for local environment management, health checks, API queries, ETL processes, and report generation.
- Introduced DEV_NOTES.md to provide guidance for developers on using `cypher-shell` with `bracc dev seed`.
- Added uv.lock file to manage project dependencies, specifying versions and sources for required packages.
@caiocollete caiocollete changed the title Initialize BR-ACC CLI with core functionality and documentation feat(cli): Introduce CLI for local dev, API queries, and reports Mar 7, 2026
@brunoclz
Copy link
Collaborator

brunoclz commented Mar 8, 2026

Maintainer triage on March 8, 2026: refused for merge in this cycle and kept open.

Blockers:

  • This is a new 13-file CLI surface with about 962 additions, outside the conservative envelope.
  • The PR needs a deeper product and maintenance review than this cycle allows.
  • No release label is currently applied on the PR.

Required next step: split the CLI into narrower pieces or bring it back in a dedicated full-manual-review cycle.

@brunoclz brunoclz added status:denied-cycle PR denied in current governor cycle needs-author-action Author action required labels Mar 8, 2026
@github-actions github-actions bot added the release:feature New user-facing capability label Mar 8, 2026
@caiocollete
Copy link
Author

caiocollete commented Mar 8, 2026

Hi Bruno, what should be the maximum number of lines per PR?

This has 962 modified lines, but 483 are about documentation and uv.lock.

@brunoclz

@caiocollete caiocollete deleted the cli branch March 16, 2026 02:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-author-action Author action required release:feature New user-facing capability status:denied-cycle PR denied in current governor cycle

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants