Skip to content

Align current public copy with submitted Etsy appeal - #64

Merged
Sekiph82 merged 2 commits into
mainfrom
fix/current-public-copy-appeal-alignment
Jul 16, 2026
Merged

Align current public copy with submitted Etsy appeal#64
Sekiph82 merged 2 commits into
mainfrom
fix/current-public-copy-appeal-alignment

Conversation

@Sekiph82

Copy link
Copy Markdown
Owner

Problem

The already-submitted Etsy appeal describes conservative AI handling and updated retention/account controls. Current source no longer exposes old founding-access or public AI Listing Optimizer / Listing Health Score cards, but a few public pages and metadata still contained overly broad AI wording or incomplete legal copy.

Changes

  • Removed "AI optimization" from homepage hero copy
  • Removed "AI credits" from homepage/pricing preview copy, /pricing metadata, the plan comparison table label, and the homepage plan-summary highlight
  • Neutralized /features metadata description (dropped "AI optimization"/"listing health scoring") and the safety-list line ("AI suggestions are reviewed before acceptance" → "Suggestions are reviewed before acceptance")
  • Neutralized featurePages.ts public copy: Safe Preview Engine howItWorks, Scheduled Jobs ("AI sessions" → "saved workflows"), Social Promote ("AI-prepared captions" → "Prepared captions")
  • Neutralized FAQ public copy ("AI listing optimization" → "AI suggestion tools"; "AI credits" question/answer → "suggestion credits", also dropped the "calls an AI model" claim) and the homepage SEO explainer block ("AI-generated suggestions" → "reviewed suggestion tools")
  • Cleaned up /private-beta metadata description ("or early access" removed — page body already only talks about a status update, not access tiers)
  • Rewrote Privacy §6 (AI features): sending Etsy-derived listing data to an external AI provider is disabled by default in production pending Etsy's written confirmation; does not claim Etsy prohibited or approved AI use
  • Rewrote Privacy §10 (retention): documents the 30-day backup-snapshot/CSV-job retention default (explicitly not Etsy-mandated), the daily automated cleanup, the first successful run on 2026-07-15, and corrects stale copy claiming no self-service account deletion exists — it does (password re-confirmation + active-subscription gate, see app/services/auth.py::delete_account)
  • Updated Terms §6 (AI tools) with the same external-AI-disabled safeguard language and softened "AI-generated" → "AI-assisted"
  • Updated Terms §8 (Billing) to note account deletion does not auto-cancel Stripe subscriptions, matching the server-side billing gate

Already clean (verified, not modified)

  • "Founding access" / pre-launch / early-access marketing wording was not present in current source (only a pre-launch word appears in an internal code comment on an admin-only /owner/users page — not public copy)
  • Public "AI Listing Optimizer" and "Listing Health Score" feature cards were not present on /features
  • /features/ai-listing-optimization and /features/listing-health-score are not in FEATURE_PAGES and hit notFound() (404) via the dynamic [slug] route
  • sitemap.ts is generated from FEATURE_PAGES/BLOG_POSTS/COMPARISON_PAGES/FREE_TOOLS/a static public-route list, so the removed AI/health slugs were never included
  • Footer is not hardcoded to "Bulk Edit App LLC" — it reads NEXT_PUBLIC_LEGAL_ENTITY_NAME with a "Bulk Edit App" fallback (see DECISIONS.md); production env value was not checked here (no DO secret access) — if it is set to "Bulk Edit App LLC" without confirmed registration, that's a pre-existing environment question for the owner, not a source issue

Validation

  • npm run type-check — passed
  • npm run lint — passed (only pre-existing warnings in unrelated authenticated-app files)
  • npm run build — passed, all 82 routes generated
  • Forbidden-term scan across app/, components/, lib/ — clean (remaining hits are an explanatory source comment and one authenticated in-app AI label, both allowed categories)
  • git diff --check — clean
  • Secret scan of diff — clean

Safety

  • No Etsy OAuth/API/write performed
  • No Stripe action performed
  • No database migration
  • No scheduler change
  • No authenticated app functionality removed — only public marketing/legal copy changed
  • Private Beta remains enabled (middleware unchanged)

Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01RzUkp3csH7vBCA286nfaxL

Sekiph82 and others added 2 commits July 16, 2026 21:33
Removes "AI optimization"/"AI credits"/"AI Listing Optimization" and
similar phrasing from the homepage hero, pricing preview, pricing page,
/features metadata and safety list, FAQ, and feature-registry public
copy, replacing it with neutral wording ("advanced workflows",
"suggestion credits", "saved workflows") so public marketing no longer
implies broader external AI processing than production currently
performs. No authenticated in-app AI functionality is removed or
renamed; backend fields (e.g. ai_credits_per_month) are unchanged —
only public-facing display strings.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RzUkp3csH7vBCA286nfaxL
…eguards

Privacy §6 (AI features) now states that sending Etsy-derived listing
data to an external AI provider is disabled by default in production
pending Etsy's written confirmation, without claiming Etsy prohibited
or approved AI use. Privacy §10 (retention) documents that backup
snapshots and CSV job records are retained for a 30-day conservative
default (not Etsy-mandated), the automated daily cleanup that enforces
it, the first successful run on 2026-07-15, and corrects stale copy
that claimed self-service account deletion doesn't exist — it does,
gated behind password re-confirmation and an active-subscription check
(see app/services/auth.py delete_account).

Terms §6 adds the same external-AI-disabled safeguard and softens
"AI-generated" to "AI-assisted" to match the review-required framing
used elsewhere. Terms §8 documents that account deletion does not
auto-cancel Stripe subscriptions, matching the billing gate already
enforced server-side.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RzUkp3csH7vBCA286nfaxL
@Sekiph82
Sekiph82 merged commit 6be4046 into main Jul 16, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant