Real deep-merge for org program-ruleset overrides (doc03 §9 Phase 0)

Featurekamo-shared-library
Shipped
July 5, 2026 at 2:25 PM UTC
Author
Kamo
Commit
3726482

Replaces the M2 last-write-wins mergeOverlay placeholder (which silently discarded the authoritative baseline on any org override) with a recursive JSON deep-merge: org overrides supply only the keys they change, nested objects recurse, arrays replace wholesale, and a malformed override fails safe to the baseline. Locks the ProgramRuleset contract ahead of the server-authoritative scorer (§9 Phase 2) that will delete the client scorer. Program/ProgramService javadoc repointed. 3 tests green.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing