Commit Graph

6 Commits

Author SHA1 Message Date
can1357 a8e1f636f6 refactor(minimizer): applied #[must_use] annotations and simplified minimizer parsing internals
- Applied #[must_use] annotations across minimizer and process APIs to flag ignored return values.
- Replaced direct serde_json field reads with typed Value helper calls in several filters.
- Simplified filter parsing with chained if-let guards, rfind checks, and related cleanup.
- Updated minimizer tests and fixtures to build outputs via write! and fmt::Write.
2026-06-12 12:16:18 +02:00
metaphorics b3ceaa44ee test(pi-shell): engine-level regression tests for rails defs and bundle exec re-dispatch
Guards that rails-migrate/rails-routes defs run standalone (not as
overlays) and that bundle exec correctly re-dispatches to wrapped
filters.

Op: extend
2026-06-12 02:34:04 +09:00
metaphorics f15333c472 feat(pi-shell): add npx unknown-tool fallback def
defs/npx.toml strips the first-run install prompt, npm warn/notice
lines, and blanks for 'npx <tool>' invocations of tools without a
dedicated Rust filter, capping output. Routed tools are claimed first
by dispatch, so the def only fires for unknown tools.

Op: extend
2026-06-12 02:34:04 +09:00
metaphorics d63bacf93b feat(pi-shell): route mvn/gradle output through jvm filter module
Adds filters/jvm.rs porting rtk's Maven (Surefire/Failsafe state
machine, compile warning-dedup with continuation tracking, package
reactor-summary keeper, quiet mode) and Gradle (build/test/connected/
lint/dependencies, Spring Boot run) filters — cross-line state the TOML
DSL cannot express. Phase and task are decided by re-tokenizing the
command (last goal / last non-clean task), not the first-arg subcommand.

Deletes defs/maven.toml, defs/gradle.toml, defs/mvn-build.toml in the
same change: the engine re-applies builtin pipelines as overlays on
Rust output, so leaving them would strip the module banners and reactor
summaries jvm.rs preserves. mvn-build.toml was already dead config —
maven.toml sorts ahead of it and claimed every mvn invocation first.

The ported rtk Surefire/compile/reactor unit tests load their input via
include_str! from filters/fixtures/jvm/ (real paths scrubbed); those
fixtures ship with the module since they are compile-time inputs.

Op: compress
2026-06-12 02:34:03 +09:00
David Andrews (LexGenius.ai) ce7ec45d42 feat(minimizer): deterministic shell-output minimizer on 15.10.8 2026-06-10 08:31:30 +02:00
can1357 41710a0a5f feat(cross-cutting): added pi-ast/pi-shell crates and rewired pi-natives
- Added `pi-ast` as a new crate with public `language`, `ops`, and `summary` modules and exported `SupportLang`.
- Added AST summary and rewrite APIs in `pi-ast`, including language inference, overlap-safe edits, and span normalization.
- Added `pi-shell` crate with new `Shell` and cross-platform `Process` APIs, session execution, and cancellation-aware runs.
- Updated `pi-natives` to use shared `pi_ast`/`pi_shell` APIs, switched to local path deps, and moved minimizer assets to `pi-shell`.
2026-05-11 03:43:58 +02:00