invar-tools 1.17.12__py3-none-any.whl → 1.17.13__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -190,12 +190,28 @@ def guard(
190
190
  ts_result = run_typescript_guard(path if path.is_dir() else find_project_root(path))
191
191
  match ts_result:
192
192
  case Success(result):
193
- import json as json_mod
193
+ if human:
194
+ # Human-readable Rich output
195
+ from invar.shell.prove.guard_ts import format_typescript_guard_v2
196
+
197
+ output = format_typescript_guard_v2(result)
198
+ console.print(f"[bold]TypeScript Guard[/bold] ({project_language})")
199
+ if result.status == "passed":
200
+ console.print("[green]✓ PASSED[/green]")
201
+ elif result.status == "skipped":
202
+ console.print("[yellow]⚠ SKIPPED[/yellow] (no TypeScript tools available)")
203
+ else:
204
+ console.print(f"[red]✗ FAILED[/red] ({result.error_count} errors)")
205
+ for v in result.violations[:10]: # Show first 10
206
+ console.print(f" {v.file}:{v.line}: [{v.severity}] {v.message}")
207
+ else:
208
+ # JSON output for agents
209
+ import json as json_mod
194
210
 
195
- from invar.shell.prove.guard_ts import format_typescript_guard_v2
211
+ from invar.shell.prove.guard_ts import format_typescript_guard_v2
196
212
 
197
- output = format_typescript_guard_v2(result)
198
- console.print(json_mod.dumps(output, indent=2))
213
+ output = format_typescript_guard_v2(result)
214
+ console.print(json_mod.dumps(output, indent=2))
199
215
  raise typer.Exit(0 if result.status == "passed" else 1)
200
216
  case Failure(err):
201
217
  console.print(f"[red]Error:[/red] {err}")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: invar-tools
3
- Version: 1.17.12
3
+ Version: 1.17.13
4
4
  Summary: AI-native software engineering tools with design-by-contract verification
5
5
  Project-URL: Homepage, https://github.com/tefx/invar
6
6
  Project-URL: Documentation, https://github.com/tefx/invar#readme
@@ -2681,7 +2681,7 @@ invar/shell/ts_compiler.py,sha256=nA8brnOhThj9J_J3vAEGjDsM4NjbWQ_eX8Yf4pHPOgk,66
2681
2681
  invar/shell/commands/__init__.py,sha256=MEkKwVyjI9DmkvBpJcuumXo2Pg_FFkfEr-Rr3nrAt7A,284
2682
2682
  invar/shell/commands/doc.py,sha256=SOLDoCXXGxx_JU0PKXlAIGEF36PzconHmmAtL-rM6D4,13819
2683
2683
  invar/shell/commands/feedback.py,sha256=lLxEeWW_71US_vlmorFrGXS8IARB9nbV6D0zruLs660,7640
2684
- invar/shell/commands/guard.py,sha256=jlAExTLnOVUI_FCIViLHlqo1B_hVVC91h-Ac6xfv6HA,24433
2684
+ invar/shell/commands/guard.py,sha256=I1BDqthsAVmz8FnUgwkbhvy2cozmOfjs3rxQwwqFemo,25391
2685
2685
  invar/shell/commands/hooks.py,sha256=W-SOnT4VQyUvXwipozkJwgEYfiOJGz7wksrbcdWegUg,2356
2686
2686
  invar/shell/commands/init.py,sha256=rtoPFsfq7xRZ6lfTipWT1OejNK5wfzqu1ncXi1kizU0,23634
2687
2687
  invar/shell/commands/merge.py,sha256=nuvKo8m32-OL-SCQlS4SLKmOZxQ3qj-1nGCx1Pgzifw,8183
@@ -2778,10 +2778,10 @@ invar/templates/skills/invar-reflect/template.md,sha256=Rr5hvbllvmd8jSLf_0ZjyKt6
2778
2778
  invar/templates/skills/investigate/SKILL.md.jinja,sha256=cp6TBEixBYh1rLeeHOR1yqEnFqv1NZYePORMnavLkQI,3231
2779
2779
  invar/templates/skills/propose/SKILL.md.jinja,sha256=6BuKiCqO1AEu3VtzMHy1QWGqr_xqG9eJlhbsKT4jev4,3463
2780
2780
  invar/templates/skills/review/SKILL.md.jinja,sha256=ET5mbdSe_eKgJbi2LbgFC-z1aviKcHOBw7J5Q28fr4U,14105
2781
- invar_tools-1.17.12.dist-info/METADATA,sha256=yPbRFLkoRTEBUOo-aLsAq9rf0UC3OzdMYWjdxXR-RFM,28596
2782
- invar_tools-1.17.12.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
2783
- invar_tools-1.17.12.dist-info/entry_points.txt,sha256=RwH_EhqgtFPsnO6RcrwrAb70Zyfb8Mh6uUtztWnUxGk,102
2784
- invar_tools-1.17.12.dist-info/licenses/LICENSE,sha256=qeFksp4H4kfTgQxPCIu3OdagXyiZcgBlVfsQ6M5oFyk,10767
2785
- invar_tools-1.17.12.dist-info/licenses/LICENSE-GPL,sha256=IvZfC6ZbP7CLjytoHVzvpDZpD-Z3R_qa1GdMdWlWQ6Q,35157
2786
- invar_tools-1.17.12.dist-info/licenses/NOTICE,sha256=joEyMyFhFY8Vd8tTJ-a3SirI0m2Sd0WjzqYt3sdcglc,2561
2787
- invar_tools-1.17.12.dist-info/RECORD,,
2781
+ invar_tools-1.17.13.dist-info/METADATA,sha256=o7GKebTKZWJJJj3bYPMllH1YTrqhDqlbY5JUdngK6XA,28596
2782
+ invar_tools-1.17.13.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
2783
+ invar_tools-1.17.13.dist-info/entry_points.txt,sha256=RwH_EhqgtFPsnO6RcrwrAb70Zyfb8Mh6uUtztWnUxGk,102
2784
+ invar_tools-1.17.13.dist-info/licenses/LICENSE,sha256=qeFksp4H4kfTgQxPCIu3OdagXyiZcgBlVfsQ6M5oFyk,10767
2785
+ invar_tools-1.17.13.dist-info/licenses/LICENSE-GPL,sha256=IvZfC6ZbP7CLjytoHVzvpDZpD-Z3R_qa1GdMdWlWQ6Q,35157
2786
+ invar_tools-1.17.13.dist-info/licenses/NOTICE,sha256=joEyMyFhFY8Vd8tTJ-a3SirI0m2Sd0WjzqYt3sdcglc,2561
2787
+ invar_tools-1.17.13.dist-info/RECORD,,