Skip to content

feat(plugin): sem Python; ferramentas em binários Rust estáticos - #38

Merged
h0ffmann merged 2 commits into
mainfrom
feat/sem-python-rust
Oct 21, 2026
Merged

h0ffmann merged 2 commits into
mainfrom
feat/sem-python-rust

Conversation

@h0ffmann

@h0ffmann h0ffmann commented Oct 21, 2026 •

Copy link
Copy Markdown
Owner

O que muda

  • Nenhum arquivo Python no repositório (git ls-files '*.py' vazio); os python3 restantes do justfile, do pdf-bench.sh e do flake.nix viraram jq, perl, awk e caddy.
  • ask_levels.py, reading_time.py e route.py viram um único binário estático multi-call, ptbr, construído por labs/ptbr-tools do picasso: picasso#132, pinado em fab3380 (o merge do picasso #132). O pin passa para o merge commit do picasso depois que o #132 entrar (just tools-fetch <rev>).
  • plugins/ptbr-writer/bin/<os>-<arch>/ptbr + bin/run.sh <ask-levels|reading-time>; skills/ptbr-routing/bin/<os>-<arch>/ptbr + bin/run.sh (roda como scripts/ptbr-route, de onde o binário acha o routes.tsv).
  • bin/tools.lock: rev, laboratório, sha256 e tamanho de cada binário. just tools-fetch REV os gera; just tools-check (dentro de just pins, logo de just quality) os confere. O rev do tools.lock é a fonte da verdade.
  • AGENTS.md: regra "No Python"; README: tempo de execução do plugin sem python3 nem node.

Tamanhos

x86_64 musl 570112 B (0,54 MiB), aarch64 528696 B (0,50 MiB); duas cópias de cada (plugin e skill de roteamento).

Verificado

--self-test dos três comandos pelo wrapper; hook em pasta vazia e com ptbr-writer.toml; just reading-time (só o badge muda, porque o texto do README mudou); just quality; just site; scripts/plugin-smoke.sh; claude plugin validate .; instalação em CLAUDE_CONFIG_DIR vazio com os binários executáveis na cópia instalada.

⚠

  • macOS e Windows não têm binário ainda: o wrapper imprime uma linha no stderr e, no hook, devolve additionalContext avisando a pessoa (sai com 0).
  • O binário aarch64 foi construído, mas nunca executado.
  • site-serve agora usa nix run nixpkgs#caddy (não testado).

🤖 Generated with Claude Code

h0ffmann and others added 2 commits October 21, 2026 02:14
…do picasso (labs/ptbr-tools)

Tested: just quality, just site, scripts/plugin-smoke.sh, claude plugin validate ., instalação em CLAUDE_CONFIG_DIR vazio

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
just tools-fetch at picasso main fab3380: the binaries are byte-identical to the ones from the PR head f5c5880 (same sha256 for linux-x86_64 and linux-aarch64), so only the rev line of tools.lock moves. The build is deterministic.

Tested: just tools-fetch fab3380; just quality (tools-check: 4 binaries match)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@h0ffmann
h0ffmann merged commit d88690e into main Oct 21, 2026
5 checks passed
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