Add session-backed campaign wallet mode to job board.
Shipped as e108df8.
What Changed
This entry documents campaign continuity: reputation gates, wallet state, history, and state carried between pages.
Shipped e108df8 to main.
What this unlocks
play.phpnow has a campaign wallet mode backed by PHP session state.- Eddies and street cred persist between runs in the same session.
- You can switch to manual mode when you want to simulate arbitrary cred values.
- A reset checkbox lets you wipe campaign progression and restart from baseline.
Safety guard
Successful run rewards are only applied once per unique run signature (seed + job + role picks) using a last_run_key, so refreshing the same result page does not duplicate payout.
Verification
php tests/run-tests.php-> 53 passed, 0 failed- Page smoke checks:
- wallet panel renders
- campaign/manual mode labels render correctly
Why It Matters
Campaign state gives each run consequence. Reputation, money, and history make the simulator feel like a sequence of choices instead of isolated demos.
Implementation Notes
The commit message for this slice was:
Play page now tracks eddies and street cred in-session, applies successful run rewards once per unique run key, and allows manual mode or campaign reset from the UI.
Files touched in this slice included:
public/play.php
Verification
- The entry is part of the devlog archive and renders through the same PHP Markdown pipeline as current posts.
- The test suite now requires every devlog post to carry substantive details, illustration and screenshot figures, and valid visual asset references.
- Current browser smoke checks cover representative rich posts and older auto-generated posts after expansion.
Visuals
