Skip to content

feat(cli): add demo and pingnode commands - #99

Open
Mouzayan wants to merge 15 commits into
etheorem:hackathon26from
Mouzayan:feat/cli-demo-ping-integration
Open

Mouzayan wants to merge 15 commits into
etheorem:hackathon26from
Mouzayan:feat/cli-demo-ping-integration

Conversation

@Mouzayan

@Mouzayan Mouzayan commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Add runnable demo and pingnode commands using the existing TCP, Noise, and muxer stack. The demo runs ping, identify, and echo between two loopback hosts. The ping node serves until stdin EOF or authenticates a peer and pings once.

Closes #22.

What changed

  • Add the pinned CLI parser and validate arguments before creating hosts, with single-line usage errors.
  • Add command deadlines, stream cleanup, and shutdown of every owned host.
  • Add echo test support, live CLI tests, and bidirectional Go ping checks.

Test plan

  • Final-head Linux CI: lake build, lake test, and lake test -- +RTS -N1 -RTS. Both suites passed 28,107 checks, with zero failures and four documented skips.
  • Import lint (190 modules), vector provenance, native hardening, and repository guards.
  • Recorded live checks passed for the loopback demo and ping in both Go-to-Lean and Lean-to-Go directions.

Risk / trust footprint

Adds the pinned lean4-cli parser. The Go helper is test-only. No new axioms, sorry, partial definitions, native_decide, unsafe code, or FFI declarations.

Notes for reviewers

The unchanged local macOS Streams reset test still fails (Tests/Streams.lean:985). Required Linux gates pass.
Callback handling and cleanup order were checked by inspection; exit-status examples are kernel-checked. Direct callback fault injection is not covered.
Echo handles one chunk. W5.9 is separate. Contributor-selected decisions and detailed contracts are in the CLI architecture.

LICENSE (LGPL version 3)

  • I have read and accepted LICENSE (LGPL version 3), NOTICE and CLA in the root of this project.

@Mouzayan Mouzayan changed the title feat(cli): scaffold demo and pingnode binaries feat(cli): W5.8 the demo and ping binaries Nov 11, 2026
@Mouzayan Mouzayan changed the title feat(cli): W5.8 the demo and ping binaries feat(cli): add demo and pingnode commands Nov 12, 2026
@Mouzayan
Mouzayan marked this pull request as ready for review November 12, 2026 04:09
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.

[W5.8] cli: the demo and ping binaries

1 participant