diff --git a/bruno/neon-sprawl-server/quest-progress/Accept grid contract faction gate deny.bru b/bruno/neon-sprawl-server/quest-progress/Accept grid contract faction gate deny.bru index a746280..5e623e7 100644 --- a/bruno/neon-sprawl-server/quest-progress/Accept grid contract faction gate deny.bru +++ b/bruno/neon-sprawl-server/quest-progress/Accept grid contract faction gate deny.bru @@ -6,7 +6,7 @@ meta { docs { NEO-137: prototype_quest_grid_contract requires completed operator chain and Grid Operators standing >= 15. - Pre-request marks operator chain completed via POST …/__dev/quest-fixture (no rep delivery; standing stays 0). + Pre-request resets grid contract progress (stale completed rows from prior local seq 11 runs), then marks operator chain completed via POST …/__dev/quest-fixture (no rep delivery; standing stays 0). Success sibling: seq 11 Accept grid contract after operator chain (NEO-138 organic rep grant). } @@ -16,11 +16,13 @@ script:pre-request { const playerId = bru.getEnvVar("playerId") || bru.getVar("playerId"); const jsonHeaders = { headers: { "Content-Type": "application/json" } }; const chainQuestId = "prototype_quest_operator_chain"; + const gridContractQuestId = "prototype_quest_grid_contract"; const fixture = await axios.post( `${baseUrl}/game/players/${playerId}/__dev/quest-fixture`, { schemaVersion: 1, + resetQuestIds: [gridContractQuestId], completedQuestIds: [chainQuestId], }, { ...jsonHeaders, validateStatus: () => true }, diff --git a/server/README.md b/server/README.md index f099153..28f06af 100644 --- a/server/README.md +++ b/server/README.md @@ -104,7 +104,7 @@ Quest accept evaluates **`FactionGateRule`** rows through **`FactionGateOperatio **Deny reason code:** **`faction_gate_blocked`** on **`QuestStateReasonCodes`** when any gate fails. Accept HTTP response returns **`accepted: false`** with that **`reasonCode`** (HTTP 200, same as other structured accept denies). -**Prototype quest:** **`prototype_quest_grid_contract`** requires **`prototype_faction_grid_operators`** standing **≥ 15** after **`prototype_quest_operator_chain`** prerequisite is complete. Rep grants that reach +15 standing land in NEO-138; success Bruno smoke deferred until then. **Deny Bruno** (`Accept grid contract faction gate deny.bru`, seq **10**) pre-requests **`POST …/__dev/quest-fixture`** to mark operator chain completed without reward delivery (standing **0**). +**Prototype quest:** **`prototype_quest_grid_contract`** requires **`prototype_faction_grid_operators`** standing **≥ 15** after **`prototype_quest_operator_chain`** prerequisite is complete. **Deny Bruno** (`Accept grid contract faction gate deny.bru`, seq **10**) pre-requests **`POST …/__dev/quest-fixture`** with **`resetQuestIds`** for grid contract (clears stale **`completed`** from prior seq **11** runs) plus **`completedQuestIds`** for operator chain — no reward delivery; standing **0**. **Success Bruno** (seq **11**, NEO-138): organic operator-chain flow then accept. Plan: [NEO-137 implementation plan](../../docs/plans/NEO-137-implementation-plan.md).