Fix — Dual index.html Sync Drift

Build report — 2026-04-05 14:40 · acmedevUS/bahalaka · v1.9

What Was Broken

The Problem

Two copies of the same 1,545-line file — index.html (root, live) and site/index.html (stale copy). Changes to one didn't propagate to the other. This caused 3 hotfix commits trying to sync them, and left the Release Notes tab stuck at v1.3 and the Dev Artifacts tab showing only 11 of 42 artifacts.

The dual file also caused confusion about which was authoritative for Cloudflare Pages deploys, leading to the "broke everything" incident where edits landed in the wrong file.

Root Cause

The site/ directory was created early in the project as a deploy folder. When Cloudflare Pages was configured to serve from root (./), the root index.html became the live file — but site/index.html was never deleted. Every build command had a 50/50 chance of editing the wrong one.

Previous fixes attempted to sync the files (commits deaac86, 931da94, 3d1bd35, f667442). That approach is fundamentally broken — you can't keep two 1,545-line files in sync by hand.

What Was Fixed

1
File Deleted
+31
Artifacts Added
+5
Releases Added
FixDetail
Deleted site/index.htmlOne file, one truth. The root index.html is the single source. site/ directory removed entirely.
Added site/ to .gitignorePrevents the duplicate from ever being recreated.
Release Notes v1.4–v1.8Added 5 missing release entries. Tab now shows all 9 versions (v1.0–v1.8) with accurate changelogs.
Dev Artifacts backfilledAdded 31 missing artifacts from Apr 3–5. Tab now shows all 42 artifacts — plans, builds, tests, ships, retros, inspects, estimates.
Version bump to v1.9New version reflects the fix.

Test / Verification

Files Changed

FileAction
site/index.htmlDeleted (git rm)
index.htmlv1.8 → v1.9: added release notes v1.4–v1.8, backfilled 31 dev artifacts
.gitignoreAdded site/

What's Next

Problem Eliminated

This class of bug is permanently dead. There is one index.html. There will only ever be one index.html. The gitignore enforces it.

Deploy to Cloudflare Pages to push v1.9 live. Then Board 5 — the real app work begins.