> For the complete documentation index, see [llms.txt](https://faction-os.gitbook.io/faction-os-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://faction-os.gitbook.io/faction-os-docs/public-website/docs/archive-docs_public-website/launch-readiness.md).

# Launch Readiness Evidence

This document records the public website launch handoff state from 2026-06-02. It is stable documentation and does not depend on `.spec_system`.

## Executive Status

| Area                              | Status   | Summary                                                                                                                                                                       |
| --------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Local static launch gates         | passed   | Package typecheck, build, built-site checker, root format, lint, typecheck, build, secret scan, and whitespace checks passed.                                                 |
| Manual QA coverage                | passed   | 19 critical routes checked at 360px, 768px, 1280px, and 1600px, plus nav, CTAs, focus, images, reduced motion, and overflow checks.                                           |
| Static output privacy boundary    | passed   | Built output passed metadata, RSS, sitemap, robots, draft, link, legal marker, guarded copy, no analytics, no hosted form, no browser storage, and no runtime network checks. |
| Cloudflare Pages deploy readiness | passed   | Dedicated workflow and manual Wrangler fallback are configured for `public-website/dist`.                                                                                     |
| Live production-hosted validation | no-claim | No authorized deploy or bounded HTTPS smoke ran in the local launch-review shell.                                                                                             |
| Legal/privacy owner review        | pending  | Legal and privacy pages remain pre-review where marked.                                                                                                                       |

Recommendation: the static public website is ready for an authorized Cloudflare Pages deploy attempt after the release owner accepts the visible pre-review legal/privacy posture. Do not claim production-hosted validation until an authorized deploy and sanitized HTTPS homepage smoke pass.

## Command Evidence

Runner context: repository root, Node `26.2.0`, npm `11.16.0`.

| Command                                                     | Status | Outcome                                                             |
| ----------------------------------------------------------- | ------ | ------------------------------------------------------------------- |
| `npm --workspace @factionos/public-website run typecheck`   | passed | Astro sync and TypeScript no-emit completed.                        |
| `npm --workspace @factionos/public-website run build`       | passed | Static Astro build completed with 31 pages and 26 optimized images. |
| `npm --workspace @factionos/public-website run check:links` | passed | Static checker passed with 31 routes and 2185 links.                |
| `npm run format:check`                                      | passed | Biome checked 579 files.                                            |
| `npm run lint`                                              | passed | Biome checked 581 files.                                            |
| `npm run typecheck`                                         | passed | Workspace typechecks completed.                                     |
| `npm run build`                                             | passed | Workspace builds completed, including the public website.           |
| `npm run security:secrets`                                  | passed | Secret scan passed across 1392 tracked text files.                  |
| `git diff --check`                                          | passed | No whitespace errors.                                               |

## Manual QA Evidence

| Viewport or mode    | Status | Evidence                                                                                                                            |
| ------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------- |
| 360px mobile        | passed | 19 critical routes checked for route status, main/h1 presence, overflow, image loading, mobile nav, CTA hrefs, and skip-link focus. |
| 768px tablet        | passed | Same checks as mobile.                                                                                                              |
| 1280px desktop      | passed | Route status, main/h1, overflow, image loading, primary nav, CTA hrefs, skip-link focus.                                            |
| 1600px wide desktop | passed | Same desktop checks.                                                                                                                |
| Reduced motion      | passed | `/press/` reduced-motion emulation hid motion media and showed fallback media.                                                      |
| Keyboard focus      | passed | Home route skip link and mobile nav focus behavior passed.                                                                          |

Critical routes:

* `/`
* `/product/`
* `/features/`
* `/how-it-works/`
* `/use-cases/`
* `/use-cases/engineering-teams/`
* `/security/`
* `/blog/`
* `/news/`
* `/investors/`
* `/about/`
* `/contact/`
* `/press/`
* `/roadmap/`
* `/faq/`
* `/legal/`
* `/legal/privacy/`
* `/legal/terms/`
* `/legal/acceptable-use/`

## Static Output Evidence

| Check                        | Status | Boundary                                                                   |
| ---------------------------- | ------ | -------------------------------------------------------------------------- |
| Published route availability | passed | Built static output only.                                                  |
| Draft exclusion              | passed | Drafts absent from built routes, sitemap, and RSS.                         |
| RSS feed                     | passed | `public-website/dist/rss.xml` exists and validates.                        |
| Sitemap output               | passed | `public-website/dist/sitemap-index.xml` exists and validates.              |
| Robots output                | passed | `public-website/dist/robots.txt` exists and references production sitemap. |
| Metadata and canonical tags  | passed | Expected route metadata present.                                           |
| Open Graph and Twitter cards | passed | Expected social metadata present.                                          |
| Approved external links      | passed | Internal links and approved external origins validated.                    |
| Analytics absence            | passed | No active analytics or tracker patterns.                                   |
| Hosted forms absence         | passed | No `<form>` markup.                                                        |
| Browser storage absence      | passed | No storage write patterns.                                                 |
| Runtime network absence      | passed | No `fetch`, `WebSocket`, `EventSource`, or beacon patterns.                |

## Cloudflare Pages Readiness

| Area                       | Status      | Evidence                                                                                                    |
| -------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------- |
| Dedicated workflow         | passed      | `.github/workflows/public-website-deploy.yml` exists.                                                       |
| Static build source        | passed      | Workflow deploys `public-website/dist` only after website gates pass.                                       |
| Pages project name         | passed      | Default `factionos-public-website`, optional override variable supported.                                   |
| Manual Wrangler fallback   | passed      | Documented in [Deployment](/faction-os-docs/public-website/docs/archive-docs_public-website/deployment.md). |
| Deploy credentials         | unavailable | Local launch-review shell did not have deploy credentials.                                                  |
| Domain/dashboard readiness | unavailable | Cloudflare dashboard/domain access unavailable locally.                                                     |
| Live deploy                | no-claim    | No authorized deploy ran locally.                                                                           |
| Homepage smoke             | no-claim    | No live deploy was available for HTTPS smoke.                                                               |

## Blockers For Production-Hosted Validation

* Cloudflare deploy credentials were absent in the local shell.
* Cloudflare dashboard/project/domain access was unavailable.
* No authorized Wrangler or workflow deploy ran.
* No bounded HTTPS homepage smoke ran.
* Legal/privacy owner approval was not recorded.

## Owner Review State

| Area                      | Status                | Notes                                                                                                              |
| ------------------------- | --------------------- | ------------------------------------------------------------------------------------------------------------------ |
| Privacy copy              | pending               | Privacy page remains visibly pre-review.                                                                           |
| Legal/policy copy         | pending               | Legal hub, terms, privacy, and acceptable-use retain pre-review markers.                                           |
| Launch communication copy | ready with boundaries | May say local static gates passed and deploy path is configured. Must not claim live validation or legal approval. |

## No-Claim Boundaries

Do not treat launch evidence as proof of:

* deployed `https://faction-os.com/`
* production uptime
* legal approval
* privacy policy approval
* formal accessibility certification
* VPAT completion
* physical mobile-device certification
* hosted identity
* hosted storage
* trusted erasure
* analytics readiness
* server-rendered website behavior

## Next Authorized Actions

1. Accept or revise the visible pre-review legal/privacy posture.
2. Run the deploy workflow or manual Wrangler fallback from an authorized Cloudflare environment.
3. Run bounded HTTPS homepage smoke.
4. Record sanitized deploy and smoke status in this document or a future stable release note.
5. Keep raw credentials, account ids, dashboard dumps, and raw response bodies out of tracked files.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://faction-os.gitbook.io/faction-os-docs/public-website/docs/archive-docs_public-website/launch-readiness.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
