Programming & Technical Jul 11, 2026

jq Gate Sketch for january_reentry_capstone_v1.json Pointer to november_closeout Truth - 2026

2026 jq gate sketch for january_reentry_capstone_v1.json—pointer to november_closeout capstone, January smoke receipt, J1–J6 gates, and verify_january_reentry.sh before February Next Fest RC.

By GamineAI Team

jq Gate Sketch for january_reentry_capstone_v1.json Pointer to november_closeout Truth - 2026

Pixel-art hero for jq gate sketch january reentry capstone november closeout pointer 2026

January re-entry smoke filed january_reentry_smoke_ok: true. February RC branch label receipt is queued. A producer asks: did anyone re-run November child crosswalk jq after the holiday, or are we promoting February on verbal memory?

January 2027 re-entry is not “write new jq from scratch.” It is a pointer capstone: prove november_closeout_capstone_v1.json still passes, january_reentry_smoke_receipt_v1.json matches the frozen baseline story, and expected_build_label for February RC is explicit—before 7-day RC challenge day one.

This Programming & Technical sketch ships january_reentry_capstone_v1.json, verify_january_reentry.sh, gates J1–J6, and copy-paste jq for CI—strategy above per-evening tutorials, below Lesson 276 BUILD_RECEIPT milestone.

Non-repetition note: November crosswalk owns 266–275 build_label unity. January unfreeze tools listicle owns fourteen-tool audit stack. January re-entry evening owns R1–R6 cold-install smoke. This URL owns january_reentry_capstone_v1 pointer jq to November truth + January smoke before February RC.

Pair BUILD_RECEIPT beginner pipeline, Thursday row review, and February prep calendar.

Why this matters now (January re-entry / February RC week)

  1. November truth decays silently — Holiday hotfixes, LFS pointer drift, and contractor asset drops can orphan child receipts without touching capstone JSON.
  2. Smoke ≠ capstonejanuary_reentry_smoke_ok proves cold install; it does not prove 266–275 still align.
  3. February RC label bumpfest-demo-2026-11-rc4fest-demo-2027-01-rc1 must be documented, not assumed.
  4. Partner diligence — Zip uploads ask for one jq exit 0 tying November + January, not eleven Slack screenshots.
  5. Monday reconciliation forward — Backlog #11 row review expects this pointer filed first.

Direct answer: Pin january_reentry_capstone_v1.json with pointers to NOVEMBER_CLOSEOUT_CAPSTONE.json and JANUARY_REENTRY_SMOKE_RECEIPT.json, re-run verify_november_closeout.sh, run verify_january_reentry.sh, gates J1–J6, set BUILD_RECEIPT january_reentry_capstone_ok: true before February SteamPipe promote.

Who this sketch is for

Audience You will…
Beginner Copy bash script; read exit code table
Solo founder Stop “we ran smoke” without November proof
Engineer Wire CI job before setlive
Producer Block February RC until pointer GREEN

Time: ~45 minutes first pointer setup; ~2 minutes per promote after scripts pinned.

Mental model — pointer capstone vs child crosswalk

Layer File Proves
November child Ten *_receipt_v1.json files Each lane passed in November
November capstone november_closeout_capstone_v1.json 266–275 share build_label
January smoke january_reentry_smoke_receipt_v1.json Post-freeze cold install
January pointer capstone january_reentry_capstone_v1.json November still valid + smoke aligns + RC label declared
BUILD_RECEIPT Root row february_rc_allowed

Rule: January capstone does not replace November jq—it re-executes November verify and indexes smoke + label transition.

Pointer map (what january_reentry_capstone_v1.json references)

Pointer key Target file Required fields
november_closeout_pointer release-evidence/capstone/NOVEMBER_CLOSEOUT_CAPSTONE.json november_closeout_ok: true, expected_build_label
january_reentry_smoke_pointer release-evidence/smoke/JANUARY_REENTRY_SMOKE_RECEIPT.json january_reentry_smoke_ok: true, build_label, frozen_baseline_label
february_rc_branch_pointer release-evidence/steam/branch/FEBRUARY_RC_BRANCH_LABEL_RECEIPT.json optional until RC evening ships; february_rc_label_ok when present

Label transition table (honest January story)

Field Example Meaning
frozen_baseline_label fest-demo-2026-11-rc4 Label at holiday freeze (from November capstone)
build_label (smoke) fest-demo-2027-01-rc1 Label verified on cold install January 3
expected_build_label (January capstone) fest-demo-2027-01-rc1 Label February RC work must use

If smoke build_label still equals November expected_build_label, set label_advanced: false and document no RC bump yet—do not set february_rc_allowed: true until February RC evening passes.

Beginner path — copy/paste jq + exit codes

Exit code table (snippet-friendly)

Exit Meaning Fix
0 All pointer guards passed February RC work allowed
1 November november_closeout_ok not true Re-run November crosswalk
2 jq parse error Fix JSON syntax in capstone or child
3 Missing pointer file Create path in receipt_paths
4 verify_november_closeout.sh failed Child build_label drift during holiday
5 frozen_baseline_label ≠ November expected_build_label Reconcile January re-entry smoke
6 january_reentry_smoke_ok not true Run R1–R6 smoke first

Five-command beginner path

# 1) Verify January capstone exists
test -f release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json

# 2) Re-run November truth (staleness guard)
./scripts/verify_november_closeout.sh

# 3) Run January pointer script
./scripts/verify_january_reentry.sh

# 4) Confirm exit 0
echo $?

# 5) Print declared February label
jq -r '.expected_build_label' release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json

Success check: Script prints OK: january pointer capstone — november truth + january smoke align for fest-demo-2027-01-rc1.

One-liner — November still OK (read-only)

jq -e '.november_closeout_ok == true' \
  release-evidence/capstone/NOVEMBER_CLOSEOUT_CAPSTONE.json

One-liner — smoke filed

jq -e '.january_reentry_smoke_ok == true' \
  release-evidence/smoke/JANUARY_REENTRY_SMOKE_RECEIPT.json

Developer path — gates J1–J6

Gate Check Pass when
J1 january_reentry_capstone_v1.json pinned Schema + pointers set
J2 November pointer valid november_closeout_ok == true
J3 January smoke pointer valid january_reentry_smoke_ok == true
J4 November verify re-run verify_november_closeout.sh exit 0
J5 Label lineage frozen_baseline_label matches November expected_build_label
J6 Capstone receipt january_reentry_capstone_ok: true on BUILD_RECEIPT

january_reentry_capstone_v1.json

Pin at release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json:

{
  "schema": "january_reentry_capstone_v1",
  "expected_build_label": "fest-demo-2027-01-rc1",
  "frozen_baseline_label": "fest-demo-2026-11-rc4",
  "label_advanced": true,
  "november_closeout_pointer": "release-evidence/capstone/NOVEMBER_CLOSEOUT_CAPSTONE.json",
  "january_reentry_smoke_pointer": "release-evidence/smoke/JANUARY_REENTRY_SMOKE_RECEIPT.json",
  "february_rc_branch_pointer": "release-evidence/steam/branch/FEBRUARY_RC_BRANCH_LABEL_RECEIPT.json",
  "verify_scripts": {
    "november": "./scripts/verify_november_closeout.sh",
    "january": "./scripts/verify_january_reentry.sh"
  },
  "gates": {
    "J1_capstone_pinned": "pass",
    "J2_november_ok": "pass",
    "J3_smoke_ok": "pass",
    "J4_november_verify_rerun": "pass",
    "J5_label_lineage": "pass",
    "J6_receipt": "pass"
  },
  "january_reentry_capstone_ok": true,
  "february_rc_allowed": true
}

Set february_rc_allowed: true only after February RC branch evening L1–L6 pass or when february_rc_branch_pointer documents february_rc_label_ok: true.

january_reentry_smoke_receipt_v1.json (minimal smoke child)

{
  "schema": "january_reentry_smoke_receipt_v1",
  "build_label": "fest-demo-2027-01-rc1",
  "frozen_baseline_label": "fest-demo-2026-11-rc4",
  "cold_install_ok": true,
  "golden_path_60s_ok": true,
  "january_reentry_smoke_ok": true,
  "recorded_at": "2027-01-03T18:42:00Z"
}

Align field names with R1–R6 gates—this snippet is the minimum jq consumes.

verify_january_reentry.sh (bash + jq)

Save under scripts/verify_january_reentry.sh:

#!/usr/bin/env bash
set -euo pipefail

CAPSTONE="${1:-release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json}"

if [[ ! -f "$CAPSTONE" ]]; then
  echo "MISSING capstone: $CAPSTONE" >&2
  exit 2
fi

NOV_PTR=$(jq -r '.november_closeout_pointer' "$CAPSTONE")
SMOKE_PTR=$(jq -r '.january_reentry_smoke_pointer' "$CAPSTONE")
EXP=$(jq -r '.expected_build_label' "$CAPSTONE")
FROZEN=$(jq -r '.frozen_baseline_label' "$CAPSTONE")

for path in "$NOV_PTR" "$SMOKE_PTR"; do
  if [[ ! -f "$path" ]]; then
    echo "MISSING pointer: $path" >&2
    exit 3
  fi
done

jq -e '.november_closeout_ok == true' "$NOV_PTR" >/dev/null || {
  echo "FAIL: november_closeout_ok not true" >&2
  exit 1
}

jq -e '.january_reentry_smoke_ok == true' "$SMOKE_PTR" >/dev/null || {
  echo "FAIL: january_reentry_smoke_ok not true" >&2
  exit 6
}

NOV_LABEL=$(jq -r '.expected_build_label' "$NOV_PTR")
if [[ "$FROZEN" != "$NOV_LABEL" ]]; then
  echo "FAIL: frozen_baseline_label $FROZEN != november $NOV_LABEL" >&2
  exit 5
fi

SMOKE_LABEL=$(jq -r '.build_label' "$SMOKE_PTR")
if [[ "$SMOKE_LABEL" != "$EXP" ]]; then
  echo "FAIL: smoke build_label $SMOKE_LABEL != capstone expected $EXP" >&2
  exit 1
fi

# J4 — re-run November crosswalk (staleness)
if [[ -x "./scripts/verify_november_closeout.sh" ]]; then
  ./scripts/verify_november_closeout.sh "$NOV_PTR" || {
    echo "FAIL: verify_november_closeout.sh" >&2
    exit 4
  }
else
  echo "WARN: verify_november_closeout.sh not executable — skipping J4" >&2
fi

echo "OK: january pointer capstone — november truth + january smoke align for $EXP"
exit 0
chmod +x scripts/verify_january_reentry.sh
./scripts/verify_january_reentry.sh

GitHub Actions CI gate (working dev)

  verify-january-reentry-capstone:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install jq
        run: sudo apt-get update && sudo apt-get install -y jq
      - name: November closeout (staleness)
        run: ./scripts/verify_november_closeout.sh
      - name: January pointer capstone
        run: ./scripts/verify_january_reentry.sh
      - name: Capstone boolean gate
        run: |
          jq -e '.january_reentry_capstone_ok == true' \
            release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json

Run after concurrency-safe Addressables job so verify does not race packaging.

PowerShell variant (Windows laptop audit)

$Cap = "release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json"
if (-not (Test-Path $Cap)) { Write-Error "MISSING capstone"; exit 2 }

$j = Get-Content $Cap -Raw | ConvertFrom-Json
foreach ($p in @($j.november_closeout_pointer, $j.january_reentry_smoke_pointer)) {
  if (-not (Test-Path $p)) { Write-Error "MISSING $p"; exit 3 }
}
$nov = Get-Content $j.november_closeout_pointer -Raw | ConvertFrom-Json
if (-not $nov.november_closeout_ok) { Write-Error "november_closeout_ok false"; exit 1 }
$smoke = Get-Content $j.january_reentry_smoke_pointer -Raw | ConvertFrom-Json
if (-not $smoke.january_reentry_smoke_ok) { Write-Error "january_reentry_smoke_ok false"; exit 6 }
if ($j.frozen_baseline_label -ne $nov.expected_build_label) { Write-Error "label lineage"; exit 5 }
if ($smoke.build_label -ne $j.expected_build_label) { Write-Error "smoke label mismatch"; exit 1 }
Write-Host "OK: january pointer capstone for $($j.expected_build_label)"
exit 0

Integration with January unfreeze audit stack

Fourteen-tool January audit listicle covers jq, diff, rg, mlr for row diffs. This pointer capstone is the capstone-specific jq layer:

Tool pass Question answered
U3 mlr row diff Did BUILD_RECEIPT columns change during freeze?
November verify Do 266–275 children still share November build_label?
January pointer Does smoke + label story match November truth?
February RC evening Is new label on Steam branch?

Run unfreeze audit before pointer capstone when contractors returned mid-holiday—if U6 fails, do not set january_reentry_capstone_ok.

Proof table (copy for partner zip README)

Artifact Path jq field Pass
November capstone capstone/NOVEMBER_CLOSEOUT_CAPSTONE.json november_closeout_ok true
January smoke smoke/JANUARY_REENTRY_SMOKE_RECEIPT.json january_reentry_smoke_ok true
January pointer capstone/JANUARY_REENTRY_CAPSTONE.json january_reentry_capstone_ok true
Verify November scripts/verify_november_closeout.sh exit code 0
Verify January scripts/verify_january_reentry.sh exit code 0
BUILD_RECEIPT root row february_rc_allowed true

Scenarios A–G (working dev table)

Scenario Symptom Gate fails Fix
A November JSON never created J2/J4 Run November crosswalk first
B Smoke skipped after holiday J3 January re-entry evening
C Child 273 still rc3 label J4 Re-file loudness receipt; re-run November verify
D frozen_baseline_label typo J5 Match November expected_build_label exactly
E Smoke on warm install only J3 Repeat smoke cold-install per R2
F February label not on Steam J6 hold Complete RC branch evening
G LFS silent demo J3 indirect Git LFS case study before pointer

Comparison pack (do not confuse these jq sketches)

Post Schema jq proves
November crosswalk november_closeout_capstone_v1 266–275 build_label unity
This post january_reentry_capstone_v1 November truth + January smoke pointers
jq rclone mirror mirror receipt Team Drive ID
Addressables jq Lesson 257 inventory audit Invalid keys

February RC week integration

Day Action Receipt
Jan 3 January smoke + pointer capstone january_reentry_capstone_v1
Jan 6 Unfreeze audit tools pass january_unfreeze_audit_receipt_v1
Jan 8 February RC branch label february_rc_branch_label_receipt_v1
Jan 9–15 7-day RC challenge february_rc_challenge_receipt_v1

Pointer capstone is the hard gate between “smoke GREEN” and “RC promote allowed.”

Course and guide siblings

Sibling Role
Lesson 276 BUILD_RECEIPT milestone consuming this pointer
Lesson 265 Prior arc wiring
Guide VDF LF preflight Child 269 receipt cousin
BUILD_RECEIPT channel-label help When smoke passes but HTML5 label mismatches

Forward #11 Monday capstone reconciliation row review — expects january_reentry_capstone_ok in BUILD_RECEIPT before fifteen-minute Monday pass.

January pointer jq cookbook (extra queries)

Working devs often need read-only jq without running the full bash script. Pin these beside verify_january_reentry.sh:

Compare November vs January expected labels

NOV=$(jq -r '.expected_build_label' release-evidence/capstone/NOVEMBER_CLOSEOUT_CAPSTONE.json)
JAN=$(jq -r '.expected_build_label' release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json)
echo "november=$NOV january=$JAN"

If labels differ, ensure label_advanced: true on the January capstone and document the bump in BUILD_RECEIPT release_notes—partners read the diff in diligence zips.

List all pointer targets from January capstone

jq -r '
  .november_closeout_pointer,
  .january_reentry_smoke_pointer,
  .february_rc_branch_pointer
' release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json

Empty february_rc_branch_pointer is allowed until RC evening ships; jq should not emit null paths in CI—use // empty filters or omit the key until the file exists.

Fail-fast boolean rollup (CI friendly)

jq -e '
  .january_reentry_capstone_ok == true
  and .february_rc_allowed == true
' release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json

Extract gate status for Slack bot

jq -r '.gates | to_entries[] | "\(.key)=\(.value)"' \
  release-evidence/capstone/JANUARY_REENTRY_CAPSTONE.json

Post J4_november_verify_rerun=pass to #build-receipts after green CI—reduces “did we run November?” threads during February RC week.

When November child 268 drifted (CI cancel receipt)

If GitHub Actions concurrency post saved you from poisoned cache but child 268 still shows an old build_label, J4 fails before January pointer passes. Fix child 268 first, re-run November verify, then January pointer—do not patch only the January capstone JSON.

Common mistakes

  1. Skipping November re-run — Pointer JSON is not a substitute for verify_november_closeout.sh.
  2. Confusing smoke with crosswalk — R1–R6 does not prove 266–275 alignment.
  3. Promoting February on old labellabel_advanced: false must block february_rc_allowed.
  4. Hard-coded paths on Windows — Use repo-relative release-evidence/ consistently.
  5. jq without jq -e — Silent false positives in CI; always use -e for booleans.
  6. Filing pointer before unfreeze auditU1–U6 catches row drift pointer jq cannot see.

Related GamineAI reads

Key takeaways

  • January re-entry needs a pointer capstone, not a second November crosswalk—re-run November verify, index smoke, declare February label.
  • january_reentry_capstone_v1.json links NOVEMBER_CLOSEOUT_CAPSTONE.json + JANUARY_REENTRY_SMOKE_RECEIPT.json with gates J1–J6.
  • verify_january_reentry.sh exits 0 only when November truth, smoke, and label lineage align.
  • frozen_baseline_label must match November expected_build_label; smoke build_label must match January capstone expected_build_label.
  • Set february_rc_allowed: true only after pointer + February RC branch receipt agree.
  • Beginners can audit with five bash commands and the exit code table; developers wire CI before setlive.
  • Forward: January marketing spend cap, Monday capstone reconciliation row review (#11), and Lesson 276.

FAQ

How is this different from the November jq crosswalk post?

November proves ten child receipts share one build_label. January proves November capstone still passes after holiday + January smoke documents the post-freeze baseline and declared February label.

Do I need both verify scripts in CI?

Yes—run verify_november_closeout.sh then verify_january_reentry.sh. January depends on November staleness guard J4.

What if we never bumped the build label after freeze?

Set label_advanced: false, keep expected_build_label equal to November expected_build_label, and do not set february_rc_allowed until RC branch evening passes.

Which jq package do I need?

jq 1.6+ on Ubuntu/macOS CI and local laptops. GitHub Actions: sudo apt-get install -y jq.

Does this replace the January unfreeze fourteen-tool audit?

No—unfreeze audit catches BUILD_RECEIPT row drift; pointer jq catches capstone + smoke truth.

Where does Lesson 276 fit?

Lesson 276 wires BUILD_RECEIPT january_reentry_capstone_ok into the November close-out course arc—complete this blog sketch first.