S2 (a1): compliance + approval pack
- /responsible-gambling rebuilt sincerely: 21+, 1-800-GAMBLER primary, 17-state resource list, warning signs, self-exclusion guidance, links to the existing /settings surfaces. No marketing adjacency. - /terms + /privacy honest drafts with entity placeholders ([ENTITY NAME], [STATE OF FORMATION], [ARBITRATION VENUE], [CONTACT EMAIL]); privacy sub-processors match reality (adds Sentry, honest PostHog description). - NEW /methodology: pipeline -> engine -> letter grades, refusals, VYNDR Originals, ledger settle + CLV + n>=20, why misses are public. - /about audited to North Star framing (THE PROOF card, methodology link). - Footer: 1-800-GAMBLER + Methodology link; compliance audit found zero pages suppressing the global footer. - 5 Ghost seed articles in content/articles/ + docs/GHOST-PUBLISHING.md manual runbook (no Ghost access used). - tests/unit/compliancePages.test.js (repo source-text style). 2429 tests green, web build exit 0. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
+40
-18
@@ -5,70 +5,93 @@ export const metadata: Metadata = {
|
||||
description: 'VYNDR terms of service. Plain English. No tricks.',
|
||||
};
|
||||
|
||||
// Session 2 (A1 board) — approval-pack draft. Entity details are placeholder
|
||||
// tokens ([ENTITY NAME], [STATE OF FORMATION], [ARBITRATION VENUE],
|
||||
// [CONTACT EMAIL]) for Kev to fill before this ships as the legal document.
|
||||
|
||||
const SECTIONS: { title: string; body: string[]; emphasized?: boolean }[] = [
|
||||
{
|
||||
title: 'What this is',
|
||||
title: 'What this is — and is not',
|
||||
body: [
|
||||
'VYNDR provides sports analysis for informational purposes only. VYNDR does not facilitate, process, or encourage any wagers. VYNDR is not a sportsbook.',
|
||||
'VYNDR Intelligence LLC operates this product. We grade player props using statistical models, historical data, and contextual intelligence.',
|
||||
'VYNDR is a sports data intelligence platform. We publish statistical analysis, grades, and context on player props for informational and entertainment purposes only.',
|
||||
'VYNDR is not a sportsbook. We do not accept, place, facilitate, broker, or process wagers of any kind. We do not hold gambling funds, set odds for wagering, or pay out winnings. No money you send us is ever a bet.',
|
||||
'These terms are a contract between you and [ENTITY NAME], the company that operates VYNDR ("we," "us"). By creating an account or using the service you accept them.',
|
||||
],
|
||||
emphasized: true,
|
||||
},
|
||||
{
|
||||
title: 'Who can use this',
|
||||
body: [
|
||||
'You must be 21 years of age or older to create an account. You must use VYNDR only where sports betting and the use of sports analytics tools is legal in your jurisdiction. You are responsible for following your local laws.',
|
||||
'You must be 21 years of age or older to create an account. You must use VYNDR only where the use of sports analytics tools is legal in your jurisdiction, and you are responsible for knowing and following your local laws. We may close accounts that misrepresent age or location.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'No guaranteed outcomes',
|
||||
body: [
|
||||
'A grade is a probabilistic assessment. An "A" grade is not a guarantee, prediction, or promise. The model is wrong all the time — we publish the ledger so you can see how often. Past performance does not guarantee future results. Do not bet what you cannot afford to lose.',
|
||||
'A grade is a probabilistic assessment, not a prediction, promise, or guarantee. The model is wrong regularly — we publish the Ledger, misses included, so you can see exactly how often. When the model has no projection for a prop, it refuses to grade rather than guess. Past performance does not guarantee future results. Nothing on VYNDR is financial, investment, or gambling advice. Never bet money you cannot afford to lose.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Data sources and accuracy',
|
||||
body: [
|
||||
'Odds, lines, schedules, and statistics are sourced from third-party providers and public league data. They can be delayed, incomplete, or wrong, and lines move constantly. Always confirm the current line at the sportsbook before acting on anything you see here. Where our data is missing we show nothing rather than a fabricated value; absence of a number is deliberate.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Subscription terms',
|
||||
body: [
|
||||
'Paid tiers (Analyst, Desk) are billed monthly through Stripe, our payment processor. You may cancel at any time from your profile page. Cancellation takes effect at the end of the current billing period. We do not refund for partial months. If a payment fails, we honor a 48-hour grace period before reverting your account to the free tier.',
|
||||
'Founder pricing ($14.99/mo Analyst, $44.99/mo Desk) is locked for the lifetime of your continuous subscription. Lapsed subscriptions revert to standard pricing ($24.99 Analyst, $49.99 Desk) on re-subscription. After the first 100 founder seats are taken, new subscribers pay standard pricing.',
|
||||
'We may change regular pricing with 30 days notice. Founder pricing is locked.',
|
||||
'Paid tiers (Analyst, Desk) are billed monthly through Stripe, our payment processor. You may cancel at any time from your profile page; cancellation takes effect at the end of the current billing period. We do not refund partial months. If a payment fails, we honor a 48-hour grace period before reverting your account to the free tier.',
|
||||
'Founder pricing ($14.99/mo Analyst, $44.99/mo Desk) is locked for the lifetime of your continuous subscription. A lapsed subscription reverts to standard pricing ($24.99 Analyst, $49.99 Desk) on re-subscription. After the first 100 founder seats are taken, new subscribers pay standard pricing.',
|
||||
'We may change standard pricing with 30 days notice. Founder pricing is locked.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Acceptable use',
|
||||
body: [
|
||||
'Do not scrape, reverse engineer, or attempt to replicate the grading engine. Do not resell reads, share account credentials, or attempt to circumvent the read limit. Do not use the service to abuse, harass, or defraud others.',
|
||||
'VYNDR does NOT offer API access at any tier. The grading engine is consumer-only — we do not provide programmatic access to grades, factor weights, model outputs, or any other engine surface, regardless of plan or pricing. Requests for API access will be declined.',
|
||||
'Do not scrape, reverse engineer, or attempt to replicate the grading engine. Do not resell reads, share account credentials, or attempt to circumvent the read limit. Do not use the service to abuse, harass, or defraud others, and do not use it in connection with unlawful gambling.',
|
||||
'VYNDR does not offer API access at any tier. The grading engine is consumer-only — we do not provide programmatic access to grades, factor weights, model outputs, or any other engine surface, regardless of plan or pricing. Requests for API access will be declined.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Intellectual property',
|
||||
body: [
|
||||
'The grading engine, models, calibration data, factor weights, and surrounding analysis are proprietary to VYNDR Intelligence LLC. You are licensed to view grades for personal use. You are not licensed to redistribute, repackage, or sell VYNDR output.',
|
||||
'The grading engine, models, calibration data, factor weights, archetype system, and surrounding analysis are proprietary to [ENTITY NAME]. You are licensed to view grades for personal use. You are not licensed to redistribute, repackage, or sell VYNDR output.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Termination',
|
||||
body: [
|
||||
'You can delete your account at any time from Settings. We may suspend or terminate accounts that violate these terms, with notice where practical. On termination your license to use the service ends; provisions that should survive (intellectual property, liability limits, dispute terms) survive.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Limitation of liability',
|
||||
body: [
|
||||
'VYNDR is not responsible for any financial losses you incur from sports betting decisions you make using our analytics. The service is provided "as is" with no warranty. Maximum liability is limited to what you paid us in the prior 12 months.',
|
||||
'VYNDR is not responsible for any financial losses you incur from sports betting decisions, whether or not they were informed by our analytics. The service is provided "as is" and "as available," with no warranty of any kind. To the maximum extent permitted by law, our total liability is limited to the amount you paid us in the 12 months before the claim.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Governing law',
|
||||
title: 'Governing law and disputes',
|
||||
body: [
|
||||
'These terms are governed by the laws of the State of Michigan. Any disputes will be resolved through binding arbitration in Wayne County, Michigan.',
|
||||
'These terms are governed by the laws of [STATE OF FORMATION]. Disputes will be resolved through binding arbitration in [ARBITRATION VENUE], except where the law gives you a non-waivable right to court.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Responsible gambling',
|
||||
body: [
|
||||
'Sports betting can become a problem. If gambling stops being fun, stop. The National Council on Problem Gambling helpline is available 24/7, free and confidential: 1-800-522-4700. More resources at ncpgambling.org. See our Responsible Gambling page for self-exclusion guidance.',
|
||||
'Sports betting can become a problem. If it stops being fun, stop. The National Problem Gambling Helpline is available 24/7, free and confidential — call or text 1-800-GAMBLER (1-800-426-2537). Our Responsible Gambling page lists state resources, warning signs, and self-exclusion guidance.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Changes to these terms',
|
||||
body: [
|
||||
'If we make material changes, we will notify account holders by email at least 30 days before they take effect. Continued use after that date is acceptance of the new terms.',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Contact',
|
||||
body: [
|
||||
'VYNDR Intelligence LLC. Questions about these terms: legal@vyndr.app',
|
||||
'[ENTITY NAME]. Questions about these terms: [CONTACT EMAIL].',
|
||||
],
|
||||
},
|
||||
];
|
||||
@@ -77,7 +100,7 @@ export default function TermsPage() {
|
||||
return (
|
||||
<LegalLayout
|
||||
title="Terms of Service"
|
||||
effective="Effective: May 2026"
|
||||
effective="Draft: July 2026"
|
||||
sections={SECTIONS}
|
||||
/>
|
||||
);
|
||||
@@ -100,7 +123,6 @@ function LegalLayout({ title, effective, sections }: { title: string; effective:
|
||||
...(s.emphasized
|
||||
? {
|
||||
borderLeft: '3px solid var(--grade-a)',
|
||||
paddingLeft: 16,
|
||||
background: 'rgba(0, 212, 160, 0.04)',
|
||||
borderRadius: 4,
|
||||
padding: '12px 16px',
|
||||
|
||||
Reference in New Issue
Block a user