REQUIREMENTS.md was the same pre-tracker genre as the roadmap and state
snapshot, and had drifted into being wrong rather than merely stale: it
listed the home-screen widget and full-text search under "Out of Scope
(V3+)" when both have shipped.
Its one still-useful part was the Constraints list, so that moves into
PROJECT.md as a section of its own — platform, offline-first, privacy, i18n,
tests/CI, reproducible builds, licence. The tech-stack pins it carried were
already duplicated in PROJECT.md's Stack, which is also where the drift came
from: two files restating the same versions, only one getting updated.
While there: AGP was recorded as 9.1.1, actually 9.2.1, and the Stack
section described no submodule despite floret-kit being a
compiled-from-source composite build.
.planning/ is now just PROJECT.md, which describes the project rather than
its plan.
ROADMAP.md and STATE.md predate the issue tracker. They were how planning
worked before issues and milestones existed, and keeping them means
maintaining a second copy of that information by hand — which is why
STATE.md still described release/v2.8.0 as the next release, eight minors
ago.
Issues and milestones say the same thing and can't drift: a milestone maps
to its release/vX.Y.Z branch, which is now also how a contributor learns
where to target a PR. Both files stay in git history if a past decision
needs looking up.
Repointed the six references at the tracker: the README's docs list, two
rows in the docs map, PROJECT.md's Current Milestone, and REQUIREMENTS.md's
idea-backlog pointer. ARCHITECTURE.md's "see the roadmap's idea backlog"
now cites the crash reporter's web-issue path instead — a worked example of
the no-network rule beats a pointer to a deleted backlog.
BUILDING.md never mentioned the floret-kit submodule, so its instructions
could not produce a working build — a plain clone fails to configure. It
also understated the SDK requirement: compileSdk is 37, not the "36+" it
claimed. Both matter now that the Codeberg move is meant to make an
outside clone viable.
The docs map advertised superpowers/specs/ and superpowers/plans/, neither
of which exists any more, while omitting BUILDING.md and RELEASING.md.
Dropped the dead rows and listed what is actually there. Purged the
remaining superpowers references in .planning/ and ARCHITECTURE.md's
dangling "see plan 03" the same way — a pointer to a deleted file is worse
than no pointer.
ARCHITECTURE.md still called OptionCard "the app's only sanctioned
selection-dialog style", which the 2026-07-07 flip to full-screen pickers
reversed, and described no layer for floret-kit despite it being a
compiled-from-source composite build. Its CI note credited Gitea Actions;
contributor CI runs on Codeberg now.
PROJECT.md's Source section described the old world outright ("hosted on
self-hosted Gitea") and now records the split: Codeberg canonical, Gitea
build infrastructure.
Documentation pass after the 2.0 milestone:
- docs/ARCHITECTURE.md — principles (provider as single source of truth,
observer-driven UI, JVM-first tests, no network), layer + reminder
mermaid diagrams, navigation (overlay/held-key, no nav lib), and the
provider lessons (recurring-write invariants, conflict snapshots)
- docs/README.md — map of what documentation lives where, incl. the
convention that superpowers/ plans are historical artifacts while
.planning/ stays current
- README.md — showcase layout (centered header, badges, screenshot
gallery from the fastlane assets, grouped features, install/build/
architecture/roadmap sections); renders on Gitea
- .planning/{PROJECT,REQUIREMENTS,STATE}.md unstaled: read-only-V1 talk
removed, V1/V2 checklists marked shipped, state points at v3 + the
Locations & People go/no-go
release.yaml gains a gitea-release job: on every tag push it extracts the
tag's CHANGELOG section and creates a Gitea release with it as the notes.
No APK assets — distribution stays with the F-Droid repo. Idempotent
(skips an existing release), gated on the test job only so notes appear
even when the F-Droid upload hiccups.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Code review on Task 2 flagged that 'Kotlin 2.3' could mislead a future
reader into bumping to 2.4.0, which has no KSP release yet. Spell out
the full versions and the KSP pairing constraint in both PROJECT.md
(Stack section) and REQUIREMENTS.md (Constraints section).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>