Repository source: docs/plans/php_forum_rewrite_repo_self_sufficiency_todo.md
PHP Forum Rewrite Repo Self-Sufficiency TODO
This file captures what v3 still needs before it is self-sufficient and no longer depends on ~/v2 as the authoritative source for core contracts.
Mostly historical. The self-sufficiency work described below is done;
this doc is kept for that record. The one still-live, unresolved item is
the licensing follow-up at the bottom (no LICENSE, CONTENT_LICENSE.md,
or DATA_POLICY.md exists yet) — see "Follow-Up: Licensing For Downloaded
Archives".
Current State
Status update on 2026-04-08:
docs/specs/canonical_post_record_v1.mdnow exists inv3.docs/specs/identity_bootstrap_record_v1.mdnow defines the retained canonical bootstrap format inv3.docs/specs/public_key_storage_v1.mdnow defines canonical public-key storage inv3.docs/plans/php_forum_rewrite_trimmed_parity_suite_v1.mdnow records the reduced parity scope inv3.tests/fixtures/parity_minimal_v1/now provides a local seed fixture tree for the retained record families.docs/plans/php_forum_rewrite_answered_questions.mdhas been updated so the migratedv3docs, not~/v2, are the authority set.v3now contains planning/spec docs plus a local seed parity fixture tree.v3still does not contain an executable parity test runner, but the retained contracts and fixture inventory now live locally.The active project scope now excludes:
merge features
moderation (superseded — a native
is_hidden/approved_flagmoderation system has since been built; this exclusion referred to not migratingv2's moderation features, not to moderation staying unbuilt)profile updates
task-planning/task-status features
thread-title updates
Conclusion
v3is now self-sufficient at the planning/specification layer for the retained scope.v3still needs implementation-time executable tests later, but it no longer needs~/v2as the authoritative source for the core retained contracts documented here.
Resolved Items
These self-sufficiency items are now complete inside v3:
Canonical post record spec.
Identity/bootstrap record spec.
Public-key storage spec.
Profile read contract spec.
Trimmed parity/regression scope document.
Trimmed local fixture/sample record tree.
Tests/Behavior To Bring Over From v2
Keep only coverage for:
board index reads
thread reads
post permalink reads
profile reads
username profile route
activity page and RSS behavior
instance page
compose thread page
compose reply page
account key page
identity hint behavior
llms.txtPHP static HTML / PHP fallback behavior
core write submissions for thread/reply/bootstrap flows
Do Not Migrate
Do not bring over v2 content for:
task pages or task write flows
merge features
moderation features (this meant
v2's moderation implementation specifically —v3has since built its own nativeis_hidden/approved_flagmoderation, unrelated tov2's)profile update features
thread-title update features
Ready For Implementation
Implementation should treat these local documents as the authority set:
docs/specs/php_forum_rewrite_spec_v1.mddocs/specs/canonical_post_record_v1.mddocs/specs/identity_bootstrap_record_v1.mddocs/specs/profile_read_contract_v1.mddocs/specs/public_key_storage_v1.mddocs/plans/php_forum_rewrite_trimmed_parity_suite_v1.mdtests/fixtures/parity_minimal_v1/
Relevant v3 Docs
docs/specs/php_forum_rewrite_spec_v1.mddocs/specs/profile_read_contract_v1.mddocs/plans/php_forum_rewrite_answered_questions.mddocs/plans/php_forum_rewrite_fdp_loop_recommendation.md
Follow-Up: Licensing For Downloaded Archives
The instance page now frames the downloadable repository and SQLite index as a continuity and anti-capture mechanism. To make that operationally real, the project should eventually define explicit licensing and reuse rights for both software and forum content.
Open questions to resolve:
Should the software ship with a standard open-source license such as MIT or Apache-2.0?
What rights do users have to archive, mirror, migrate, republish, or restore forum content from downloaded snapshots?
Do contributor terms already grant the operator enough rights to license exported post content and metadata for preservation purposes?
Should emergency continuity rights be stated explicitly for cases where board governance changes without community consent?
Recommended deliverables:
Add a top-level
LICENSEfile for the software.Add a
CONTENT_LICENSE.mdorDATA_POLICY.mdcovering post content, metadata, exports, and archival rights.Add contributor-facing terms that explicitly permit preservation, replication, migration, and restoration of board content for continuity purposes.
This is a product/legal policy task rather than a coding blocker, but it directly affects whether the download feature is only a technical backup or also a legally usable community safeguard.