Skip to content

docs: add tiered marketing site with docs under /docs/ - #732

Merged
wesm merged 1 commit into
mainfrom
tiered-site
Sep 4, 2026
Merged

docs: add tiered marketing site with docs under /docs/#732
wesm merged 1 commit into
mainfrom
tiered-site

Conversation

@wesm

@wesm wesm commented Aug 31, 2026

Copy link
Copy Markdown
Member

msgvault.io previously served only the reference docs at the domain root, with no page that says what msgvault is or where it is going. This gives the site the same three-tier shape as the other kenn-io project sites, in a carbon monochrome design matched to the existing msgvault mark:

  • / — marketing page: msgvault as the system of record for your communications and relationships. Covers every shipped source, the people layer, hybrid search, the Docbank-backed document and visual lanes, the interface surfaces, and the verify → stage → gated-execute → restore deletion model. An install matrix offers the macOS/Linux script, Homebrew, and Windows PowerShell journeys with per-row copy buttons.
  • /guide/ — a nine-stop archive lifecycle tour (Capture → Preserve → Resolve → Curate → Understand → Search → Analyze → Act → Own), each stop pairing copy with a hand-drawn SVG diagram or a capture from the reviewed Enron fixture, and deep-linking into the docs.
  • /docs/ — the existing Zensical docs, now built into a subpath by the same vercel-build.sh.

The Directory/Reviews/Settings workspaces from #705 appear only as a labelled "in development" placeholder; nothing unshipped is claimed as current. Both new tiers ship exact Markdown twins (/index.md, /guide.md) and an llms.txt index for machine readers.

Moving the docs under /docs/ changes every published URL, so vercel.json adds permanent redirects for all legacy paths (top-level pages, usage/, guides/, architecture/, search/, and the hydrated asset directories), and absolute internal links in the docs sources now carry the /docs/ prefix. check_built_site.py validates the combined site and check_vercel_redirects.py enforces the full redirect table; bash scripts/check-docs.sh passes end to end.

🤖 Generated with Claude Code

@roborev-ci

roborev-ci Bot commented Aug 31, 2026

Copy link
Copy Markdown

roborev: Combined Review (2a86f81)

Verdict: High-risk deployment and credential-exposure issues require fixes before merge.

Critical

None.

High

  • docs/vercel-build.sh:14-21 — The build requires ../website, but the documented Vercel deployment runs from docs/; that sibling directory will be outside the remote deployment root and unavailable during the build. Include website/ in the deployment context or move/package it under docs/.

Medium

  • docs/vercel-build.sh:15-21 — The script recursively copies the entire website tree without filtering dotfiles or credential patterns such as client_secret*.json, token*.json, .pem, or .env. Accidentally placed local credentials could become publicly downloadable. Copy an explicit allowlist or apply the same filtering used by zensical-docs.sh, and make the final inventory check part of vercel-build.sh.

Reviewers: 2 done | Synthesis: codex, 9s | Total: 7m45s

@roborev-ci

roborev-ci Bot commented Aug 31, 2026

Copy link
Copy Markdown

roborev: Combined Review (55028c1)

Verdict: One medium-severity issue requires attention; no critical or high-severity issues found.

Medium

  • Sitemap is not deployed at the standard root path
    Location: docs/vercel-build.sh:10, docs/overrides/sitemap.xml:4-21
    The sitemap is generated under site/docs/sitemap.xml, leaving the deployed site without /sitemap.xml. Copy or rewrite it to the Vercel output root and validate the route.

Reviewers: 2 done | Synthesis: codex, 6s | Total: 10m58s

@wesm

wesm commented Aug 31, 2026

Copy link
Copy Markdown
Member Author

cc @salmonumbrella

@roborev-ci

roborev-ci Bot commented Aug 31, 2026

Copy link
Copy Markdown

roborev: Combined Review (adbee42)

Verdict: One medium-severity issue found; no high or critical issues.

Medium

  • docs/index.md:12, Makefile:354make docs-serve serves generated docs at the server root, while links and assets target /docs/..., causing local navigation and images to return 404s. Serve the site under /docs/ or use local-root paths during development.

Reviewers: 2 done | Synthesis: codex, 9s | Total: 8m30s

wesm pushed a commit that referenced this pull request Sep 1, 2026
## What changed

- Replaced the docs favicon SVG with the black `msg` mark already used in the README.
- Regenerated the 192px and 512px PNG variants while preserving their 8-bit sRGB RGBA format.

## Why

The generated docs header and browser metadata hydrate favicon files from the docs asset branch. Updating those variants keeps the docs output consistent with the website changes for PR #732.

## Usage

No usage change.

Refs #732


Co-authored-by: Rusty Shackleford <salmonumbrella@users.noreply.github.com>
@wesm wesm self-assigned this Sep 4, 2026
@roborev-ci

roborev-ci Bot commented Sep 4, 2026

Copy link
Copy Markdown

roborev: Combined Review (8f7efb7)

Verdict: High-risk deployment issue and a Medium-severity local documentation serving issue require attention.

High

  • docs/vercel-build.sh:18-25 — Deployment runs from docs/, but the builder requires the sibling website/ directory, which may be absent from the Vercel upload and cause deployment failure. Include website/ in the project root/upload or move its sources under docs/.

Medium

  • docs/zensical.toml:3, Makefile:392-394 — Documentation links and assets use /docs/..., but docs-serve serves only Zensical output at the root and does not build the tiered site. Local navigation and images may resolve to nonexistent paths. Serve the combined output locally or mount the docs tier at /docs/.

Reviewers: 2 done | Synthesis: codex, 8s | Total: 8m49s

msgvault.io needs a product entry point without losing direct access to the
reference documentation. Keep the marketing page at the root, the lifecycle
guide at /guide/, and the existing documentation at /docs/, with permanent
redirects for legacy links.

The combined update also:

- brands the hero, adds an install matrix, and tightens the site copy
- blocks credential-like files and dotfiles from the published site
- serves the generated sitemap from the standard root path
- uses the current msgvault favicon contributed in PR #733
- keeps documentation links added on main inside the new /docs/ mount
- builds and serves the deployment artifact for complete local previews

Generated with Claude Code (claude-fable-5)
Generated with Codex (GPT-5)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: salmonumbrella <182032677+salmonumbrella@users.noreply.github.com>
Co-authored-by: Codex <noreply@openai.com>
@roborev-ci

roborev-ci Bot commented Sep 4, 2026

Copy link
Copy Markdown

roborev: Combined Review (b0e7260)

Verdict: No Medium, High, or Critical issues found.

All reviewers found no actionable findings at or above Medium severity.


Reviewers: 2 done | Synthesis: codex, 9s | Total: 7m51s

@wesm

wesm commented Sep 4, 2026

Copy link
Copy Markdown
Member Author

I am going to merge, but not deploy this, so I will revise the details before releasing v0.20.0 cc @salmonumbrella

@wesm
wesm merged commit 13ffd0c into main Sep 4, 2026
25 checks passed
@wesm
wesm deleted the tiered-site branch September 4, 2026 04:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant