Skip to content

Let unsafe-relaxed JSON audits express scoped private trust boundaries #4913

Description

@Widthdom

Summary

The unsafe-relaxed JSON audit reports a private local JSONL writer without distinguishing its controlled local trust boundary from external/untrusted parsing.

Audit IDs: R-20. Reproduced with locally built cdidx v1.40.3 at 404db09489c305f17d94f37026e00564d3ac527a.

Existing issue relationship

Closed #3965 is adjacent trust-boundary/audit recipe work; no exact issue covers this current writer context.

Expected behavior and PR scope

Allow an explicit, reviewable local/private trust scope in recipe evidence without making unsafe-relaxed parsing broadly disappear. Keep this to trust-origin/direction metadata and the recipe.

Implementation guide for Codex 5.6 sol xhigh

  • Distinguish serialization/writing from deserialization/parsing and local/private sinks from external inputs.
  • Prefer structured origin/sensitivity/trust annotations or configuration over path/name allowlists.
  • Require explicit evidence for suppression and surface that reason in results.
  • Add positive controls for external input parsing, public APIs, network/files, and ambiguous trust.
  • Add focused positive/negative regression tests, run the full net8.0 and net9.0 suite, and add the required bilingual changelog.d/unreleased/ fragment.

Acceptance criteria

  • The controlled private writer is classified with its trust rationale rather than generic high risk.
  • Untrusted parsing remains a finding.
  • Users can audit/override the trust decision explicitly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    .NETPull requests that update .NET codeenhancementNew feature or requestsecurity

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions