feat(ls-remote): agent-ready supercharge — envelope, OID normalization, _emit_error
- Add _LsRemoteJson / _LsRemoteErrorJson TypedDicts for stable wire format - Add _emit_error() helper: JSON errors to stdout in --json mode, prose to stderr in text mode - Add status, error, remote, url, duration_ms, exit_code to JSON envelope - Track remote name (null when URL passed directly) and resolved url always - Add _normalize_oid(): defense-in-depth sha256: prefix on all remote-provided OIDs - Update docstring with full JSON schema and error schema - Update test_cmd_ls_remote.py: sha256:-prefix _FAKE_OID, fix format-error assertion - Add test_ls_remote_supercharge.py: 39 tests across envelope/error/OID/TypedDict/docstring/prose-pollution
sha256:206b7321d9d49434569eb1890ee37e923fe109f998dd60b9c7412ff4b1bccf12
sha
+72
~5
symbols
sha256:fcb459a41eb85b79260c4745f35154bc6206060f87f752416cdfef92dee92e35
snapshot
+72
symbols added
~5
symbols modified
0
dead code introduced
Semantic Changes
77 symbols
+
test_multiple_branches_all_normalized
method
method test_multiple_branches_all_normalized L244–251
+
test_docstring_documents_error_schema
method
method test_docstring_documents_error_schema L346–347
+
test_error_payload_has_exactly_three_keys
method
method test_error_payload_has_exactly_three_keys L172–175
+
test_transport_error_is_json_in_json_mode
method
method test_transport_error_is_json_in_json_mode L206–211
+
test_unknown_remote_error_is_json_in_json_mode
method
method test_unknown_remote_error_is_json_in_json_mode L191–204
+
test_remote_null_when_url_passed_directly
method
method test_remote_null_when_url_passed_directly L138–142
+
test_url_present_when_url_passed_directly
method
method test_url_present_when_url_passed_directly L144–147
+
test_stdout_is_valid_json_in_json_mode
method
method test_stdout_is_valid_json_in_json_mode L265–267
+
test_ls_remote_error_json_typeddict_exists
method
method test_ls_remote_error_json_typeddict_exists L303–305
+
test_ls_remote_json_has_all_new_fields
method
method test_ls_remote_json_has_all_new_fields L312–316
+
test_ls_remote_json_has_status_annotation
method
method test_ls_remote_json_has_status_annotation L307–310
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:206b7321d9d49434569eb1890ee37e923fe109f998dd60b9c7412ff4b1bccf12 --body "your comment"
No comments yet. Be the first to start the discussion.