docs: log the rename, and what it deliberately left alone

The rename was mostly a set of decisions about what NOT to touch: 239 domain
references, the Kotlin package, the applicationId and period.db all stay,
because "Period" is the central domain word as well as the old product name.

Records the two things a later reader would otherwise retry: the Command Center
slug cannot be changed (PATCH accepts the field and ignores it, and recreating
the project to change an invisible internal key would throw away its history),
and three names have to agree — repository, git remote, and the site's
forgejoRepo mapping — with the third being the one that fails silently.

Issue #9's body named the old repository path and has been corrected in the
tracker, so the command in it works for whoever picks it up.
This commit is contained in:
null 2026-08-18 15:57:44 -05:00
parent 4eed14f059
commit b338380cb2
1 changed files with 57 additions and 0 deletions

View File

@ -32,6 +32,63 @@ written and stay true. It is exempt from review for the same reason a receipt is
## Entries
### 2026-08-18 — Renamed to Privacy: Period Tracker
"Period" was always a working name — `PRODUCT_PLAN.md` §55 said so — and the real
identity arrived with the brand guide. Everything that called the project Period
now calls it **Privacy: Period Tracker**.
**The rename was mostly about deciding what NOT to touch.** "Period" is the
product name and the central domain word at the same time. `PeriodRecord`,
`PeriodWriteResult`, `confirmPeriodStart`, the `period_records` table and the
button reading "Started period" all describe a menstrual period rather than a
product — 239 references, every one of them left alone. A find-and-replace would
have turned the data model into nonsense. Sixteen files changed in total.
Also deliberately unmoved, and written down so the absence reads as a decision:
- **The package `dev.privacyllc.period` and `applicationId`.** They already read
correctly under the new name — `privacyllc` is the company, `period` the app —
and changing them would rewrite 68 files, rename the Room schema directory and
break the hardcoded path in `schema-guard.sh`.
- **`period.db`.** Renaming a database file orphans the data on every device
that already has it. The emulator's existing install opened fine afterwards,
which is the proof.
**The repository was renamed in place**, not recreated: `null/Period`
`null/Privacy-Period-Tracker`, keeping all 30 commits, 27 issues, 8 milestones
and 4 labels. Counted on both sides rather than assumed, because "a rename is
lossless" is exactly the sort of thing that is true until it is not.
**Three names have to agree**, and only two of them are obvious: the Forgejo
repository, the git remote, and the Command Center's `forgejoRepo` mapping. The
third is the silent one — a stale mapping degrades to *"pointing at a repository
that does not exist"* on the next reconcile and the site quietly stops counting.
All three verified, and the reconcile afterwards reported `0 pointing at a
repository that does not exist`.
**The Command Center slug could not be renamed.** `PATCH` accepted a `slug` field
and ignored it; `period` still resolves and `privacy-period-tracker` returns 422.
It is an internal key, invisible on the card, and recreating the project to
change it would throw away its history — so it stays, recorded here rather than
retried later by somebody who assumes it was missed.
**One inconsistency created on purpose.** The canonical name has a space after
the colon; the supplied wordmark does not. `BRAND_GUIDE.md` §10 now says the
space form and says plainly that the drawn mark disagrees. Filed as #28 rather
than papered over, because redrawing a lockup needs an artist.
- **Closed:** nothing — this is a rename, not a deliverable. #28 filed.
- **Next action:** Batch 06 — Privacy and Security, unchanged by the rename. File
its issues first; the milestone is empty. Biometric and PIN lock, export,
irreversible delete, the privacy promise in Settings, and making §45's logging
rules true in a release build.
- **Blockers:** #9, the Command Center webhook, still needs a person. Its body
named the old repository path and has been corrected in the tracker, so
whoever picks it up gets a command that works. The four QA gaps are unchanged
and still the better spend: nobody has looked at a real lock screen, TalkBack has never been run,
text has never been scaled, and nothing has run at `minSdk` 26.
### 2026-08-18 — Batch 05 shipped, and the app got its real brand
Reminders landed and the milestone closed. **Five of eight batches are done, and