Synchronize project documentation and remove obsolete state files - #63
Merged
Conversation
PROJECT_STATUS.md (202->47 lines), TASKS.md (734->50), HANDOFF.md (795->38) were each carrying full session-by-session narrative history on top of their actual job. Trimmed each to its single purpose per the target architecture: - PROJECT_STATUS.md: current production/environment state only. - TASKS.md: active work only, classified Blocked Externally / Pending Owner Action / Deferred / Recently Completed. Full sprint history moved to CHANGELOG_AI.md (already lived there, just no longer duplicated here). - HANDOFF.md: next-session resume point only -- current branch/PR state, critical environment facts, exact next step, safety constraints. The 9 stacked full session transcripts are superseded by CHANGELOG_AI.md (full detail) and DECISIONS.md (durable decisions) -- cross-checked first, one gap found and fixed (see DECISIONS.md, third-session Stripe account-deletion entry). - README.md: added Production URLs section, corrected sprint count, corrected Cache/Queue row (no Celery worker deployed). All three now explicitly point to CHANGELOG.md / CHANGELOG_AI.md / DECISIONS.md for history instead of re-stating it.
Every Etsy compliance doc now carries a current-status banner reflecting: Option A retention (DO Scheduled Job, first real execution succeeded 2026-07-15, 0 rows deleted, no errors), 982 passing tests as the authoritative count, appeal drafted in ETSY_FINAL_APPEAL_DRAFT.md but explicitly NOT submitted, PRs #56-#62 all merged. - ETSY_APPEAL_CHECKLIST.md: removed the "Fixes to point to" section (fully redundant with ETSY_FINAL_APPEAL_DRAFT.md SS B, which lists the same items in more detail); kept only genuinely open pre-submission owner actions; repointed the draft-submission checklist at the final draft instead of the superseded ETSY_SUPPORT_QUESTIONS.md. - ETSY_SUPPORT_QUESTIONS.md: kept, not deleted -- its Q1/Q2/Q3 numbering is cited by name in 5 production code comments (config.py, ai_tools.py, listing_health.py, featurePages.ts, EtsySeoSection.tsx) as the pending-clarification pointer for real runtime gates. Deleting it would orphan those comments; a docs-only pass shouldn't touch the code side. Added a status banner pointing at the final draft as the actual appeal body. - ETSY_DATA_RETENTION.md SS2: replaced the stale "no Celery worker deployed, cron hook documented but not wired" language with the live Option A state and the first run's exact result.
- DEPLOYMENT.md, DNS_SSL.md, DIGITALOCEAN_DEPLOY.md: corrected the active-contradiction claim that production hosting is Vercel + Render -- it has been DigitalOcean App Platform + Cloudflare since 2026-07-06. VERCEL_RENDER_DEPLOY.md and PRODUCTION_SMOKE_TEST.md marked superseded/historical-reference rather than deleted (the plan was real, just abandoned before production ever used it). - WORKERS.md: recorded the retention-cleanup job's first real execution (2026-07-15, 0 rows deleted, no errors). - DECISIONS.md: added the third-session Stripe account-deletion resolution (block on active/billable subscription, never auto-cancel) -- present in HANDOFF.md's history but missing from the durable-decision log until now -- and a new standing rule that Private Beta stays enabled until Etsy's ban is resolved, regardless of engineering readiness. - CHANGELOG.md: fixed present-tense "moving to DigitalOcean" language now that the migration is long since complete; added rollup entries for the 2026-07-06 launch and 2026-07-14 Etsy-compliance/retention arc (neither had a CHANGELOG.md entry before, despite being the two biggest pieces of work since the file was created). - CHANGELOG_AI.md: added a one-line role banner clarifying it's now the designated full-engineering-history archive that PROJECT_STATUS.md/TASKS.md/HANDOFF.md defer to, rather than a redundant diary sitting alongside three files that repeated it. Not deleted or merged away -- it has a clearly distinct, maintainable purpose now that those three are current-state-only.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
Bring all project documentation to one authoritative current state after the Etsy compliance deployment, retention automation, and first successful scheduled cleanup.
Changes
PROJECT_STATUS.md(202 -> 47 lines): production/environment status, blockers, owner actions, next action only.TASKS.md(734 -> 50 lines) to active work only, classified Blocked Externally / Pending Owner Action / Deferred / Recently Completed.HANDOFF.md(795 -> 38 lines) to a single next-session resume point — critical environment facts, the merge=deploy warning, current branch/PR state, exact next step, safety constraints. The 9 stacked full session transcripts are superseded byCHANGELOG_AI.md(full detail, unchanged) andDECISIONS.md(durable decisions) — cross-checked first; one real gap found and fixed (the third-session Stripe account-deletion resolution had never been recorded as its ownDECISIONS.mdentry).README.md: added a Production URLs section, corrected the sprint count, corrected the Cache/Queue row (no Celery worker is actually deployed — scheduled/background tasks run inline or as DigitalOcean Scheduled Jobs).ETSY_COMPLIANCE_AUDIT.md,ETSY_FEATURE_MATRIX.md,ETSY_PRODUCTION_READINESS.md,ETSY_DATA_RETENTION.md) with current-status banners: Option A retention confirmed live (first real execution succeeded 2026-07-15, 0 rows deleted, no errors), 982 tests as the authoritative count, appeal drafted but explicitly not submitted.ETSY_APPEAL_CHECKLIST.mdto only the pre-submission owner actions that are still genuinely open; repointed its draft-message reference atETSY_FINAL_APPEAL_DRAFT.md.docs/operations/DEPLOYMENT.md,DNS_SSL.md, andDIGITALOCEAN_DEPLOY.mdall presented "Vercel + Render" as the current chosen hosting, when production has run on DigitalOcean App Platform + Cloudflare since 2026-07-06.VERCEL_RENDER_DEPLOY.mdandPRODUCTION_SMOKE_TEST.mdare marked superseded/historical-reference rather than deleted (the plan was real, just abandoned before it was ever provisioned).docs/operations/WORKERS.md: recorded the retention-cleanup job's first real execution.DECISIONS.md: added the missing Stripe account-deletion decision entry, and a new standing rule that Private Beta stays enabled until Etsy's ban is resolved regardless of engineering readiness.CHANGELOG.md: replaced stale present-tense "moving to DigitalOcean" language with rollup entries for the 2026-07-06 launch and 2026-07-14 Etsy-compliance/retention arc.CHANGELOG_AI.md: added a one-line role banner — it's the designated full-engineering-history archive the three trimmed files now defer to, not deleted or merged away.Deleted files
None. Every file initially considered for deletion had either unique compliance-audit value, or (in
ETSY_SUPPORT_QUESTIONS.md's case) was a live anchor target: its Q1/Q2/Q3 question numbering is cited by name in 5 production code comments (config.py,ai_tools.py,listing_health.py,featurePages.ts,EtsySeoSection.tsx) as the pending-clarification pointer for theALLOW_ETSY_DATA_TO_AIgate. Deleting or renumbering it would orphan those comments, and fixing the comments is a code change out of scope for a docs-only branch. It's marked superseded-in-prose (useETSY_FINAL_APPEAL_DRAFT.mdinstead) but kept byte-stable.Preserved history
All sprint-by-sprint build detail (Sprint 0 through Sprint 27) remains fully intact in
CHANGELOG_AI.md— nothing was deleted, only de-duplicated out of the three current-state files that used to repeat it.Validation
--component retention-cleanupdoctl syntax) — zero hits outside dated historical narrative that already self-annotates as superseded.EV[...]DigitalOcean placeholders, no application code touched — documentation-only diff.ETSY_SUPPORT_QUESTIONS.md) was identified and the file kept rather than deleted.