Add / harden a public Terms of Service page for Hesychia (hesychia.ai), suitable for sign-up, consent banner links, and legal disclosure — not only the post-login acknowledge flow.
Context
TermsOfService.tsx already exists at /terms_of_service/ with acknowledge → POST /user/acknowledge_tos/. Content is a short inline draft branded Hesychia.
Gaps vs dta_webapp public legal pages:
No polished public (unauthenticated) ToS route for marketing / sign-up links
Limited analytics / cookie disclosure (needed once consent banner ships)
Acknowledge UX and public read-only ToS may need to share one document component
Requirements
Public ToS page
Route reachable without auth (e.g. /terms_of_service/ and/or /legal/terms-of-service)
## Summary
Add / harden a public **Terms of Service** page for Hesychia (hesychia.ai), suitable for sign-up, consent banner links, and legal disclosure — not only the post-login acknowledge flow.
---
## Context
`TermsOfService.tsx` already exists at `/terms_of_service/` with acknowledge → `POST /user/acknowledge_tos/`. Content is a short inline draft branded Hesychia.
Gaps vs `dta_webapp` public legal pages:
- No polished public (unauthenticated) ToS route for marketing / sign-up links
- Limited analytics / cookie disclosure (needed once consent banner ships)
- Acknowledge UX and public read-only ToS may need to share one document component
---
## Requirements
### Public ToS page
- Route reachable without auth (e.g. `/terms_of_service/` and/or `/legal/terms-of-service`)
- Readable document layout (typography hierarchy, sections, last-updated date)
- Hesychia / AI ML Operations, LLC branding consistent with rebrand (#29)
- Linked from Sign In, Sign Up (#31), footer (if present), and consent banner
### Content sections (MVP)
Keep/expand existing clauses and add as needed:
- Acceptance of terms
- Data confidentiality / privacy
- Acceptable use
- Intellectual property
- Limitation of liability / AI disclaimer (see also chat_backend#13)
- Analytics / cookies (what is always collected vs consent-gated) — align with cookie consent ticket
- Changes to terms
- Governing law (Illinois / US as today)
- Contact
Legal review can refine copy later; structure should be ready for counsel edits.
### Acknowledge flow
- Keep authenticated acknowledge for users who must accept before using the product
- Prefer one shared document component used by both public page and acknowledge screen
### Tests
- Public route renders key headings
- Acknowledge still posts and navigates on success (existing behavior)
---
## Acceptance criteria
- [ ] Public ToS page usable without login
- [ ] Shared document content for public + acknowledge flows
- [ ] Linked from auth / sign-up / consent entry points
- [ ] Analytics/cookie section present (even if consent ticket lands after)
- [ ] Hesychia branding; no stale product names
- [ ] Basic render tests
## Related
- #35 beta / Tianji
- Cookie consent follow-on
- #31 sign-up
- chat_backend `acknowledge_tos` + #13 AI disclaimer
## References
- `dta_webapp` `TermsOfServiceDocument.tsx`, `PublicTermsOfServicePage.tsx`
westfarn
self-assigned this 2026-07-27 04:19:19 -07:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Add / harden a public Terms of Service page for Hesychia (hesychia.ai), suitable for sign-up, consent banner links, and legal disclosure — not only the post-login acknowledge flow.
Context
TermsOfService.tsxalready exists at/terms_of_service/with acknowledge →POST /user/acknowledge_tos/. Content is a short inline draft branded Hesychia.Gaps vs
dta_webapppublic legal pages:Requirements
Public ToS page
/terms_of_service/and/or/legal/terms-of-service)Content sections (MVP)
Keep/expand existing clauses and add as needed:
Legal review can refine copy later; structure should be ready for counsel edits.
Acknowledge flow
Tests
Acceptance criteria
Related
acknowledge_tos+ #13 AI disclaimerReferences
dta_webappTermsOfServiceDocument.tsx,PublicTermsOfServicePage.tsx