Program: implement OSDInspector offline tool #85

Closed
opened 2026-08-08 08:24:31 +00:00 by hugo · 1 comment
Owner

Objective

Port OSDInspector as the first fully functional Rust tool over StructuredData.

Deliverables

  • Implement inspect, convert, validate, sample primitive-to-OSD, and OSD-to-primitive commands with JSON/XML/Binary/Notation formats and documented aliases.
  • Use streaming/bounded file IO, stdout/stderr conventions, stable exit codes, and clap-based help.
  • Preserve representative output structure and conversion behavior from the C# program.

Validation

  • CLI integration tests cover every command/format and malformed input.
  • Golden conversions match library fixtures.
  • The binary requires no grid, credentials, native codec, or .NET dependency.

Prerequisite

The library behavior required by the program is implemented and its translated parity tests pass.

Project constraints

  • Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback.
  • Provide deterministic offline/fake validation before opt-in live or device tests.
  • Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in.
  • Update program/source completeness, docs, and workspace validation evidence.
## Objective Port OSDInspector as the first fully functional Rust tool over StructuredData. ## Deliverables - Implement inspect, convert, validate, sample primitive-to-OSD, and OSD-to-primitive commands with JSON/XML/Binary/Notation formats and documented aliases. - Use streaming/bounded file IO, stdout/stderr conventions, stable exit codes, and clap-based help. - Preserve representative output structure and conversion behavior from the C# program. ## Validation - CLI integration tests cover every command/format and malformed input. - Golden conversions match library fixtures. - The binary requires no grid, credentials, native codec, or .NET dependency. ## Prerequisite The library behavior required by the program is implemented and its translated parity tests pass. ## Project constraints - Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback. - Provide deterministic offline/fake validation before opt-in live or device tests. - Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in. - Update program/source completeness, docs, and workspace validation evidence.
hugo added this to the 11 - Programs and live-grid validation milestone 2026-08-08 08:24:31 +00:00
hugo added the enhancement label 2026-08-08 08:24:31 +00:00
Author
Owner

Implemented in f93a27f. Replaced the OSDInspector placeholder with a bounded cross-platform clap CLI implementing inspect/i, convert/c, validate/v, prim-to-osd, and osd-to-prim over the native StructuredData and Primitive APIs. JSON, XML, binary LLSD, and notation LLSD support binary-safe file and standard-stream I/O; input size and parser resource limits are enforced; stable stdout/stderr and exit-code behavior is documented. Added deterministic program status/usage documentation and process-level coverage for all commands, all formats and aliases, golden conversions, format detection, primitive round-trip, malformed/empty/oversized input, and I/O failures. Validation: 9/9 osd_inspector_cli tests passed; 78/78 related translated StructuredData compatibility tests passed; focused clippy and fmt passed; locked workspace all-target check, API compile, workspace test no-run, generation/API coverage, and workspace docs passed.

Implemented in f93a27f. Replaced the OSDInspector placeholder with a bounded cross-platform clap CLI implementing inspect/i, convert/c, validate/v, prim-to-osd, and osd-to-prim over the native StructuredData and Primitive APIs. JSON, XML, binary LLSD, and notation LLSD support binary-safe file and standard-stream I/O; input size and parser resource limits are enforced; stable stdout/stderr and exit-code behavior is documented. Added deterministic program status/usage documentation and process-level coverage for all commands, all formats and aliases, golden conversions, format detection, primitive round-trip, malformed/empty/oversized input, and I/O failures. Validation: 9/9 osd_inspector_cli tests passed; 78/78 related translated StructuredData compatibility tests passed; focused clippy and fmt passed; locked workspace all-target check, API compile, workspace test no-run, generation/API coverage, and workspace docs passed.
hugo closed this issue 2026-08-11 06:46:12 +00:00
Sign in to join this conversation.