{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://neon-sprawl.local/schemas/quest-reward-bundle.json", "title": "QuestRewardBundle", "description": "Composite completion rewards on QuestDef.completionRewardBundle. Grant kinds: itemGrants, skillXpGrants, reputationGrants. See docs/decomposition/modules/E7_M2_RewardAndUnlockRouter.md and E7_M3_FactionReputationLedger.md.", "type": "object", "additionalProperties": false, "properties": { "itemGrants": { "type": "array", "items": { "$ref": "https://neon-sprawl.local/schemas/reward-grant-row.json" }, "description": "Item payout rows; omit when empty (XP-only bundles)." }, "skillXpGrants": { "type": "array", "items": { "$ref": "https://neon-sprawl.local/schemas/quest-skill-xp-grant.json" }, "description": "Skill XP rows applied via mission_reward on first-time completion." }, "reputationGrants": { "type": "array", "items": { "$ref": "https://neon-sprawl.local/schemas/reputation-grant-row.json" }, "description": "Faction reputation rows applied on first-time completion (E7.M3)." } }, "anyOf": [ { "required": ["itemGrants"], "properties": { "itemGrants": { "minItems": 1 } } }, { "required": ["skillXpGrants"], "properties": { "skillXpGrants": { "minItems": 1 } } }, { "required": ["reputationGrants"], "properties": { "reputationGrants": { "minItems": 1 } } } ] }