V-Model spec
119 requirements, zero gaps. Each requirement traces forward to a test case and backward to a user story.
Cosmic Story v2 was specified using the V-Model methodology. Every requirement has a number, every NFR has a measurement contract, every test target has a coverage threshold.
Cosmic Story v2 ships with a V-Model spec — every level (system, architecture, module, unit) has corresponding test plans, with trace checkpoints between each pair.
119 requirements, zero gaps. Each requirement traces forward to a test case and backward to a user story.
Each one has explicit acceptance criteria. The 9 'Must Have' stories block release; the 6 'Should Have' inform iteration; the 5 'Could Have' are phase 2.
Album cap, chapter rate limit, resonance dimension count, paywall pacing rules, offline behaviour — each numbered and tested.
Performance, security, testing, privacy, availability, accessibility — each with a measurement contract showing how it's verified.
Not promises — written targets with a measurement method for each.
30 seconds or better for 95% of requests. Measured against BullMQ job duration distribution.
p99 GET /people, /journal, /inbox under 500 milliseconds at 1,000 concurrent users. Measured via k6 load test.
Time-to-interactive of 3 seconds or better on simulated 4G. Measured via Lighthouse CI.
Statement coverage thresholds enforced by `pnpm test:cov` gates.
85% statement coverage target on services; 80% on controllers. Verified via Vitest coverage reports.
85% on composables; 90% on Pinia stores. Same Vitest gate, same reports.
Real measures, named explicitly.
Journal and chapter bodies stored AES-256 encrypted with platform-managed keys. No plaintext bodies on disk.
All API traffic over TLS 1.2 or newer. HTTP redirects to HTTPS at the edge.
Access tokens expire after 1 hour; refresh tokens after 30 days. Token rotation on refresh.
Soft-delete first, with a 30-day window before hard-delete of personally identifiable information.
Not aspiration — a baseline enforced in code review.
When set at the OS level, all GSAP animations become opacity-only fades. No parallax, no transforms, no scroll-driven motion.
Every interactive element has an ARIA label. Verified manually on iOS VoiceOver and Android TalkBack before release.
Targets, with measurement contracts. Cosmic Story v2 is in active development; the numbers here come from the V-Model NFR table that gates release. The 'how it's measured' column tells you exactly which tool produces the verification signal.
Because 100% coverage is a vanity metric — past a certain point it tests trivial code at the cost of real review attention. 85% statement coverage with a manual coverage-review on the gap is how we balance machine-verifiable rigor with engineering judgment.
No. It is a mechanism: messages flagged by a crisis classifier are exempt from the free daily message cap. We don't promise clinical outcomes; we just don't lock the door at the worst possible moment. For real crisis resources, please contact a local service — Cosmic Story v2 is not a therapy product.
While Soulwise opens its waves, our flagship astrology app is already in your hands.
Astrology content is for reflection and entertainment. Cosmic Story v2 features described here are in development; availability is subject to change without notice.