chore: Keep RPC boolean metadata validation strict
Merged
HA
3mo ago+215+215+012345678901234567890123456789-29-29-01234567890123456789
Summary
- Keep malformed boolean metadata from being treated as enabled flags across JSON-RPC request paths.
- Share the strict boolean reader used by envelope feature flags with compile request metadata parsing.
User Impact
- Requests that send strings such as "true" or "false" for boolean metadata continue to fail closed instead of changing request behavior.
- Boolean metadata handling is now less likely to drift between request paths.
Changes
- Added a shared strict JSON boolean metadata reader.
- Reused it for envelope feature flags and compile reload-wait metadata.
- Added focused EditMode tests for strict boolean parsing and case-sensitive/case-insensitive lookup behavior.
Verification
- dist/darwin-arm64/uloop clear-console --project-path "$(git rev-parse --show-toplevel)"
- dist/darwin-arm64/uloop compile --project-path "$(git rev-parse --show-toplevel)"
- dist/darwin-arm64/uloop run-tests --project-path "$(git rev-parse --show-toplevel)" --test-mode EditMode --filter-type regex --filter-value "(StrictJsonBooleanMetadataReaderTests|JsonRpcRequestProcessorCliVersionGateTests)"