Skip to content

feat: enable voice docs sync from wavekat-voice#70

Merged
wavekat-eason merged 4 commits into
mainfrom
feat/voice-provider-docs
May 23, 2026
Merged

feat: enable voice docs sync from wavekat-voice#70
wavekat-eason merged 4 commits into
mainfrom
feat/voice-provider-docs

Conversation

@wavekat-eason
Copy link
Copy Markdown
Contributor

Summary

Enables sync of wavekat-voice's docs/site/ into /docs/voice/, surfacing the provider setup guides the desktop client's onboarding picker links to via `help_url`.

Pages that land:

  • `/docs/voice/` — landing page
  • `/docs/voice/sip-trunks/` — umbrella "Picking a SIP provider" page (target of the `_other` manual-entry preset)
  • `/docs/voice/providers/twilio/` — canonical global provider example
  • `/docs/voice/providers/2talk/` — canonical NZ provider example

The other presets in the picker (Plivo, Telnyx, OnSIP) get their own pages as follow-ups — same template, just per-provider credential-finding instructions. Until those land, those preset `help_url`s 404.

Coordination — merge timing matters

This PR must merge after `wavekat-voice` ships a new release containing the rewritten `docs/site/` content. `scripts/sync-docs.js` pins to the latest semver tag on the source repo, and the current latest (v0.0.12) still has the outdated stub docs that describe the prior Docker-based product. Merging this PR before the next `wavekat-voice` release would publish the wrong content.

Order:

  1. Land wavekat/wavekat-voice#103 (or whichever onboarding-v2 PR carries the docs rewrite) to wavekat-voice main.
  2. Wait for release-please to cut a new `wavekat-voice` tag.
  3. Merge this PR.
  4. Cloudflare Pages build for wavekat.com picks up the new docs.

Cloudflare Pages env requirement

The Cloudflare Pages build environment must have `GITHUB_TOKEN` set to a fine-grained PAT with read access to `wavekat/wavekat-voice` (it's a private repo). Without it, the build fails at sync time with a clear error from `scripts/sync-docs.js`. If this isn't already configured for other private-repo syncs, set it now.

Follow-up

The desktop client's `help_url` values still point at `/voice/docs/providers/...` (the wrong path) in `wavekat-platform`'s `services/api/src/data/sipProviders.ts`. One-line follow-up to swap them to `/docs/voice/providers/...` once this PR lands.

Test plan

  • Local build with `WAVEKAT_LOCAL_REPOS=… SYNC_DOCS=1 npm run build` succeeds and produces `/docs/voice/*/index.html` pages.
  • Verify Cloudflare Pages `GITHUB_TOKEN` env is set.
  • After merge: smoke-test the live pages render correctly.

🤖 Generated with Claude Code

wavekat-eason and others added 2 commits May 23, 2026 16:31
Pulls voice docs from the private wavekat-voice repo's docs/site/
into /docs/voice/, surfacing the provider setup guides the desktop
client's onboarding picker links to via help_url.

Requirements / coordination:

- The Cloudflare Pages build env must set GITHUB_TOKEN (fine-grained
  PAT with read access to wavekat-voice). Without it, the build
  fails at sync time with a clear error from scripts/sync-docs.js.
- The sync pins to the latest semver tag on wavekat-voice; new docs
  only show up on wavekat.com after a release is cut. Merge AFTER
  wavekat-voice ships v0.0.13 (or whichever release first contains
  the rewritten docs/site/), otherwise the build publishes the
  outdated v0.0.12 stubs that describe the prior Docker product.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The sync-docs step clones wavekat-voice (private), which fails under
the default GITHUB_TOKEN since that token is scoped to this repo only.
Wire a fine-grained PAT secret through ci/preview/release workflows.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 23, 2026

wavekat-eason and others added 2 commits May 23, 2026 17:01
Token works locally via gh api but git ls-remote in CI returns
"Repository not found" — investigating whether the env var reaches
the process or a runner-level credential helper is shadowing the
URL-embedded token.

Will be reverted once the cause is identified.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The cf:build step previously overrode GITHUB_TOKEN with the docs PAT,
which is confusing to read and shadows the default Actions token. Pass
the secret through under its own name end-to-end and have sync-docs.js
read SYNC_DOCS_TOKEN directly. Also drops the debug step now that the
PAT is verified working.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@wavekat-eason wavekat-eason merged commit 7353fa3 into main May 23, 2026
3 checks passed
@wavekat-eason wavekat-eason deleted the feat/voice-provider-docs branch May 23, 2026 05:32
wavekat-eason pushed a commit that referenced this pull request May 23, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.0.25](wavekat-com-v0.0.24...wavekat-com-v0.0.25)
(2026-05-23)


### Features

* enable voice docs sync from wavekat-voice
([#70](#70))
([7353fa3](7353fa3))
* **sync-docs:** ref override for previewing branches
([#73](#73))
([94eeadf](94eeadf))


### Bug Fixes

* **ci:** unblock private docs sync from runner
([#72](#72))
([a82b0ee](a82b0ee))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant