7-Day February Next Fest RC Smoke and Row Review Challenge - 2026

Monday: January unfreeze audit GREEN. Tuesday: fest-demo-2027-02-rc1 uploaded. Wednesday: demo smoke skipped because "we already tested in editor." Thursday: row review deferred for a creator email. Friday: branch promoted. Saturday Discord: "menu crash on rc1—did we ship rc2?"
Late January 2027 is the danger window for February Steam Next Fest teams. Re-entry and unfreeze audits prove December baseline; February RC label receipt proves label unity—but RC week still needs daily smoke + row review discipline before fest branch lock. One skipped Wednesday costs more than seven skipped feature ideas.
This Challenges & Community Hooks sprint is the seven-day accountability ladder: one ritual per weekday-plus-weekend pair, gates C1–C7, file february_rc_challenge_receipt_v1.json, hashtag #FebruaryRCSmoke2027.
Non-repetition note: January re-entry evening owns R1–R6 baseline. February RC label evening owns L1–L6 label unity. 3-day Addressables challenge owns F1–F6 false-green CI. This URL is the seven-day RC smoke + row review calendar—cousin format, different gates.
Pair BUILD_RECEIPT beginner, blog cluster #1–#3, and Course 276 forward.
Why this matters now (late January 2027 RC week)
- RC cadence compresses —
rc1→rc2→rc3in days, not weeks—skipped rituals stack silently. - Smoke ≠ editor — GREEN CI and Play Mode do not prove library install truth (Wednesday smoke).
- Receipt drift — Upload without Thursday row review promotes GREEN binaries with RED gate columns.
- February fest lock — February prep calendar assumes ops discipline, not hero merges.
- Community accountability — Public daily posts catch "we'll smoke tomorrow" before branch lock.
Direct answer: Seven days (~15–25 minutes each); gates C1–C7; artifacts under release-evidence/february-rc/challenge-2027-W05/; file february_rc_challenge_receipt_v1.json; no fest branch lock until C7 and february_rc_challenge_ok: true on BUILD_RECEIPT.
Who this challenge is for
| Audience | You will… |
|---|---|
| Beginner | Follow one ritual per day—no guessing order |
| Solo founder | Tweet-thread daily checklist with #FebruaryRCSmoke2027 |
| Producer | Block fest branch lock until C7 GREEN |
| Working dev | Wire daily jq tail on BUILD_RECEIPT columns |
Prerequisites: January re-entry GREEN; January unfreeze audit GREEN or documented waiver.
Time: ~2.5 hours total over seven days.
Challenge vs evenings vs cousin challenges (format ladder)
| Artifact | Role |
|---|---|
| January re-entry | Post-freeze baseline R1–R6 |
| January unfreeze audit | Capstone tool audit U1–U6 |
| February RC label evening | Label unity L1–L6 before upload |
| This challenge | 7-day smoke + row review ladder |
| Wednesday smoke | Binary golden path S1–S8 |
| Thursday row review | Receipt diff R1–R10 |
| 3-day Addressables challenge | CI false-green F1–F6 cousin |
| Course 276 forward | November close-out capstone milestone |
Order: Re-entry GREEN → unfreeze audit GREEN → this 7-day challenge during RC week → fest branch lock.
Rules of the challenge
- One owner signs each day (
day_N_passin receipt). - Fail stops the ladder—do not promote on Day 5 if Day 4 row review RED.
- Installed build only on smoke days—Editor does not count.
- Pair player-visible build label on every smoke day.
- Post daily progress with
#FebruaryRCSmoke2027(tweet, Bluesky, or Discord devlog). - Hotfix
rc2requires re-run from Day 5 onward—do not edit Day 3 receipts in place. - Producer blocks fest branch lock until C7 receipt filed.
Seven-day calendar at a glance
| Day | Gate | Primary ritual | Pass signal |
|---|---|---|---|
| Day 1 (Mon) | C1 | Baseline latch | Re-entry + unfreeze audit pointers valid |
| Day 2 (Tue) | C2 | February RC label receipt | L1–L6 GREEN on fest-demo-2027-02-rc1 |
| Day 3 (Wed) | C3 | Wednesday demo smoke | S1–S8 GREEN on installed rc1 |
| Day 4 (Thu) | C4 | Thursday row review | R1–R10 GREEN; row_diff[] filed |
| Day 5 (Fri) | C5 | rc2 hotfix label bump | New label receipt if hotfix merged |
| Day 6 (Sat) | C6 | Second Wednesday smoke | S1–S8 GREEN on installed rc2 |
| Day 7 (Sun) | C7 | Challenge capstone | february_rc_challenge_receipt_v1.json filed |
Weekend placement is intentional—solo devs batch Sat smoke when weekdays are meeting-heavy. If rc2 does not ship, Day 5–6 become repeat discipline drills on rc1 (document rc2_skipped: true in receipt).
Before you start — readiness checklist
- [ ]
release-evidence/february-rc/challenge-2027-W05/folder exists - [ ] January re-entry receipt path in BUILD_RECEIPT
- [ ] January unfreeze audit GREEN or waiver ID documented
- [ ] Fest branch name in runbook (
nextfest-feb-2027or team key) - [ ] Non-dev Steam test account ready
- [ ] Golden path written in plain language (Wednesday smoke)
- [ ] Producer agrees: no fest branch lock until C7
- [ ]
#FebruaryRCSmoke2027thread or Discord channel chosen - [ ] January signup trend playbook G1–G6 GREEN if participate already clicked
Do not start during quiet week with zero RC intent—this challenge proves RC-week discipline, not generic QA hygiene.
Day 1 — C1 baseline latch (~20 minutes)
Goal: Prove January cluster #1–#3 evidence still valid before RC work accelerates.
| Step | Action | Pass |
|---|---|---|
| 1 | jq -e '.january_reentry_smoke_ok == true' BUILD_RECEIPT.json |
C1 |
| 2 | jq -e '.january_unfreeze_audit_ok == true' BUILD_RECEIPT.json |
C1 |
| 3 | Verify child receipt paths exist on disk | C1 |
| 4 | Record baseline_build_label in challenge draft JSON |
C1 |
| 5 | Post Day 1 #FebruaryRCSmoke2027 |
C1 |
Beginner tweet: "Day 1 — re-entry + unfreeze audit pointers GREEN. Baseline fest-demo-2026-12-rc3. Tomorrow: rc1 label receipt."
RED routing: If either boolean false, stop challenge—run re-entry evening or unfreeze audit first.
Day 2 — C2 February RC label receipt (~75 minutes)
Goal: File February RC label evening L1–L6 before upload or branch move.
| Step | Action | Pass |
|---|---|---|
| 1 | Set fest-demo-2027-02-rc1 in runbook |
L1 |
| 2 | Steamworks branch screenshot | L2 |
| 3 | Player-visible label screenshot | L4 |
| 4 | File february_rc_branch_label_receipt_v1.json |
L6 |
| 5 | BUILD_RECEIPT february_rc_label_ok: true |
C2 |
Save under release-evidence/february-rc/challenge-2027-W05/day2-label-receipt/.
Developer: Run jq guards from label evening post; attach log to challenge folder day2-jq.log.
Day 3 — C3 Wednesday demo smoke (~15 minutes)
Goal: Wednesday smoke S1–S8 on installed rc1—cold library install, not editor.
| Step | Action | Pass |
|---|---|---|
| 1 | Clean install from Steam library (or uninstall/reinstall) | S1 |
| 2 | Cold launch + first input | S3 |
| 3 | 60-second golden path | S4 |
| 4 | New-save test if persistence in scope | S5 |
| 5 | Credits/footer build_label matches receipt |
S6 + visible label |
| 6 | File demo_smoke_receipt_v1.json; demo_smoke_ok: true |
C3 |
jq -e '.gates.S4 == "GREEN" and .demo_smoke_ok == true' demo_smoke_receipt_v1.json
RED routing: S4–S6 block promotion—fix binary before Day 4 row review.
Day 4 — C4 Thursday row review (~10 minutes)
Goal: Thursday row review diff BUILD_RECEIPT vs last promoted receipt—after Day 3 smoke GREEN.
| Step | Action | Pass |
|---|---|---|
| 1 | Load last promoted BUILD_RECEIPT snapshot | R1 |
| 2 | Diff gate columns (build_label, fest_branch, smoke linkage) |
R4–R7 |
| 3 | Cross-check upload_log.csv channel rows |
R8 |
| 4 | Ship build_receipt_row_diff_receipt_v1.json with row_diff[] |
C4 |
| 5 | promotion_allowed: true only if smoke + row GREEN |
C4 |
Fail-closed: Row review RED means no branch promote Friday—even if marketing scheduled a send.
Day 5 — C5 rc2 hotfix label bump (~45 minutes)
Goal: If hotfix merged, bump to fest-demo-2027-02-rc2 with new label receipt—never edit rc1 JSON in place.
| Step | Action | Pass |
|---|---|---|
| 1 | Decision: hotfix required? (yes/no) | C5 |
| 2 | If yes: new february_rc_branch_label_receipt_v1.json path |
L6 |
| 3 | Branch screenshot + visible label for rc2 | L2, L4 |
| 4 | If no: document rc2_skipped: true in challenge draft |
C5 |
| 5 | Update BUILD_RECEIPT build_label only with new receipt |
C5 |
Beginner: Skipping rc2 is valid—Day 6 repeats smoke on rc1 with note in receipt.
Day 6 — C6 second Wednesday smoke (~15 minutes)
Goal: Repeat S1–S8 on current candidate (rc1 or rc2)—proves hotfix did not regress golden path.
| Step | Action | Pass |
|---|---|---|
| 1 | Install current build_label from library |
S1 |
| 2 | Full S1–S8 checklist | C6 |
| 3 | Compare Player.log to Day 3 if rc2 | regression note |
| 4 | File new demo_smoke_receipt_v1.json (dated path) |
C6 |
Pair visible build label opinion—S6 must match BUILD_RECEIPT.
Day 7 — C7 challenge capstone (~30 minutes)
Goal: File master challenge receipt; set BUILD_RECEIPT february_rc_challenge_ok: true; authorize fest branch lock review.
| Step | Action | Pass |
|---|---|---|
| 1 | Collect day1–day6 evidence paths | C7 |
| 2 | Verify all day_N_pass signed |
C7 |
| 3 | Write february_rc_challenge_receipt_v1.json |
C7 |
| 4 | BUILD_RECEIPT february_rc_challenge_ok: true |
C7 |
| 5 | Producer sign-off for fest branch lock | C7 |
| 6 | Final #FebruaryRCSmoke2027 recap thread |
C7 |
february_rc_challenge_receipt_v1.json (schema)
{
"schema": "february_rc_challenge_receipt_v1",
"iso_week": "2027-W05",
"hashtag": "#FebruaryRCSmoke2027",
"gates": {
"C1": "GREEN",
"C2": "GREEN",
"C3": "GREEN",
"C4": "GREEN",
"C5": "GREEN",
"C6": "GREEN",
"C7": "GREEN"
},
"days": {
"day_1": { "gate": "C1", "pass": true, "owner": "producer", "evidence": "release-evidence/february-rc/challenge-2027-W05/day1-baseline.json" },
"day_2": { "gate": "C2", "pass": true, "build_label": "fest-demo-2027-02-rc1", "evidence": "release-evidence/february-rc/challenge-2027-W05/day2-label-receipt/february_rc_branch_label_receipt_v1.json" },
"day_3": { "gate": "C3", "pass": true, "smoke_receipt": "release-evidence/february-rc/challenge-2027-W05/day3-demo_smoke_receipt_v1.json" },
"day_4": { "gate": "C4", "pass": true, "row_diff": "release-evidence/february-rc/challenge-2027-W05/day4-build_receipt_row_diff_receipt_v1.json" },
"day_5": { "gate": "C5", "pass": true, "rc2_skipped": false, "build_label": "fest-demo-2027-02-rc2" },
"day_6": { "gate": "C6", "pass": true, "smoke_receipt": "release-evidence/february-rc/challenge-2027-W05/day6-demo_smoke_receipt_v1.json" },
"day_7": { "gate": "C7", "pass": true, "signed_at_utc": "2027-01-25T18:00:00Z" }
},
"february_rc_challenge_ok": true,
"fest_branch_lock_authorized": true,
"notes": "Seven-day ladder complete; rc1 smoke Day 3, rc2 hotfix Day 5–6"
}
BUILD_RECEIPT root rows (Day 7 commit)
{
"build_label": "fest-demo-2027-02-rc2",
"january_reentry_smoke_ok": true,
"january_unfreeze_audit_ok": true,
"february_rc_label_ok": true,
"demo_smoke_ok": true,
"february_rc_challenge_ok": true,
"february_rc_challenge_receipt": "release-evidence/february-rc/challenge-2027-W05/february_rc_challenge_receipt_v1.json"
}
jq gate sketch (working dev)
jq -e '
.february_rc_challenge_ok == true
and (.gates | .C1, .C2, .C3, .C4, .C5, .C6, .C7 | . == "GREEN")
' february_rc_challenge_receipt_v1.json
Merge against BUILD_RECEIPT:
jq -e --slurpfile ch february_rc_challenge_receipt_v1.json '
.february_rc_challenge_ok == $ch[0].february_rc_challenge_ok
and .build_label == $ch[0].days.day_5.build_label
' BUILD_RECEIPT.json
Proof table
| Evidence | Proves | Fail signal |
|---|---|---|
| Day 1 baseline jq log | C1 January cluster valid | Starting RC on stale audit |
| Day 2 label receipt | C2 label unity before upload | Promote on upload alone |
| Day 3 smoke JSON | C3 installed binary truth | Editor-only "smoke" |
| Day 4 row diff | C4 receipt row integrity | GREEN binary, RED receipt |
| Day 5 rc2 label | C5 hotfix discipline | Edited rc1 receipt in place |
| Day 6 second smoke | C6 regression catch | Skipped post-hotfix smoke |
| Day 7 challenge receipt | C7 ladder completion | Verbal "we did the week" |
Scenarios A–G
| ID | Situation | Move |
|---|---|---|
| A | Standard RC week | Full seven-day ladder |
| B | No rc2 hotfix | Day 5 rc2_skipped: true; Day 6 smoke rc1 |
| C | Day 3 smoke RED | Stop; no Day 4 promote; fix binary |
| D | Day 4 row RED | Block Friday branch move |
| E | Solo dev, meetings Wed | Swap Day 3 smoke to Thu; document in receipt |
| F | Unity false-green CI week | Add 3-day Addressables challenge before Day 3 |
| G | Partner demands early lock | C7 waiver requires producer + incomplete day list |
Community hook — #FebruaryRCSmoke2027
Daily post template:
#FebruaryRCSmoke2027 Day {N}/7 — Gate C{N} GREEN
build_label: fest-demo-2027-02-rc{X}
ritual: {smoke | row review | label receipt}
evidence: release-evidence/february-rc/challenge-2027-W05/day{N}/
BLOCKED: fest branch lock until C7
Why public posts help: Creators and playtesters see discipline; internal teams cannot skip Day 4 quietly.
Micro-studio time budget
| Team size | Seven-day total | Hardest day |
|---|---|---|
| Solo | ~2.5 h | Day 2 label evening (~75 min) |
| Duo | ~1.5 h each | Split Day 2 + Day 3 |
| Contractor QA | +30 min | Day 3 + Day 6 smoke only |
Cheaper than one fest-week store-demo mismatch recovery.
Common mistakes
| Mistake | Fix |
|---|---|
| Starting without C1 baseline | Run January cluster first |
| Row review before smoke | Day 4 requires Day 3 GREEN |
| One smoke for whole week | Day 6 mandatory after rc2 |
| Skipping hashtag accountability | Public daily post |
| Fest lock before C7 | Producer gate on challenge receipt |
Counterarguments (honest limits)
"We already did label receipt evening."
Label evening is Day 2 of this ladder—not the full RC week story.
"Seven days is long."
Days are 15–25 minutes except Day 2—total ~2.5 hours beats fest crash firefight.
"Same as weekly Wednesday smoke."
Weekly smoke is one ritual; this challenge sequences label + smoke + row + hotfix + capstone in RC week order.
Outbound references
- Steamworks Branches — fest branch assignment before lock
- ISO week date — align
iso_weekacross receipts
Related GamineAI reads
- January re-entry smoke
- January unfreeze audit tools
- February RC label receipt
- Wednesday demo smoke
- Thursday row review
- 3-day Addressables challenge
- February 2027 prep calendar
- Visible build label opinion
- BUILD_RECEIPT beginner pipeline
- Course 276 forward — November close-out capstone truth milestone
Key takeaways
- Late January RC week needs seven-day smoke + row review discipline—not one heroic evening.
- Gates C1–C7 sequence baseline → label → smoke → row → hotfix → smoke → capstone.
- Day 3 and Day 6 require installed builds—Editor does not count.
february_rc_challenge_receipt_v1.jsonindexes daily evidence paths.february_rc_challenge_okon BUILD_RECEIPT authorizes fest branch lock review.- Hashtag
#FebruaryRCSmoke2027adds public accountability. - Pair blog cluster #1–#3 before starting Day 1.
- 3-day Addressables challenge cousin for Unity false-green weeks.
- Day 4 row review after Day 3 smoke—never invert.
- rc2 hotfix requires new label receipt—do not edit rc1 JSON.
- Course 276 forward expects challenge receipt beside capstone cluster.
- Git LFS pointer drift case study when Day 5 hotfix merges touch
*.bank—add S-AUDIO smoke row.
FAQ
Can I compress seven days into three?
Not recommended. The ladder proves daily discipline—compressing loses the accountability hook.
What if rc2 never ships?
Set rc2_skipped: true on Day 5; Day 6 smokes rc1 again; document in receipt.
Is Day 2 the same as the label evening tutorial?
Yes—Day 2 is the February RC label evening embedded in the challenge.
Does this replace weekly Wednesday smoke?
No—after C7, return to weekly Wednesday smoke cadence.
How does this relate to Course 276?
Course 276 capstone milestone expects february RC evidence in BUILD_RECEIPT—this challenge supplies february_rc_challenge_ok.
Can contractors run days 3 and 6 only?
Yes—document owners per day in receipt days.day_N.owner.
Closing
February Next Fest rewards teams that treat RC week as a sequence, not a single upload. Seven short days—baseline, label, smoke, row review, hotfix, smoke again, capstone—buy a fest branch lock story you can show creators, partners, and your future self.
Post daily. File the receipt. Do not lock the branch on hope.
Next: backlog #6 — January 2027 February Next Fest signups trend playbook.