chore(release): staging to production - 2025.11.25 - #733
Conversation
…ages (#732) ## Summary This PR addresses Krista's feedback about making documentation easier to find on the answeragent.ai marketing site. The changes improve discoverability and navigation of our documentation while removing outdated content. ## Changes ### Marketing Site Navigation & Pages - **Improved docs discoverability** - Enhanced navigation structure to make documentation more prominent - **Added Data Engine landing page** - New dedicated page for Data Engine features (`/data-engine`) - **Added Intelligence Hub landing page** - New dedicated page for Intelligence Hub features (`/intelligence-hub`) - **Enhanced intro documentation** - Improved formatting and structure in `intro.mdx` - **Added intro meeting confirmation page** - New page for scheduling confirmation flow - **Updated marketing pages** - Refreshed pricing, ROI calculator, and other key pages ### Content Cleanup - **Removed outdated Answer Engine page** - Consolidated with newer content - **Removed outdated On-Demand Apps page** - No longer relevant to current product offering ### Infrastructure & Tooling - **Integration docs updater agent** - Created agent for maintaining integration documentation - **GitHub workflow for doc syncing** - Added workflow to sync docs to docstore automatically - **Integration documentation strategy** - Comprehensive strategy document for managing integration docs - **Docstore management scripts** - Added scripts for analyzing, clearing, and syncing docstore content - **Integration analysis tooling** - Scripts to analyze and report on integration coverage ### Technical Updates - **Updated Docusaurus config** - Enhanced configuration for better docs presentation - **CSS improvements** - Updated custom styles for better visual consistency - **Navigation refinements** - Improved navigation patterns across marketing pages ## Linear Ticket Related to: [AGENT-131](https://linear.app/the-answer/issue/AGENT-131) ## Testing - [x] Marketing site builds successfully - [x] New pages render correctly - [x] Navigation flows work as expected - [x] Documentation is accessible and discoverable - [x] Removed pages properly redirect or are replaced ## Impact - **User-facing**: Improved documentation discoverability on marketing site - **Content**: Removed outdated pages, added new focused landing pages - **Infrastructure**: Better tooling for maintaining integration documentation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
| name: Sync Documentation | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| fetch-depth: 1 | ||
|
|
||
| - name: Setup Node.js | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: '20' | ||
| cache: 'pnpm' | ||
|
|
||
| - name: Install pnpm | ||
| uses: pnpm/action-setup@v4 | ||
| with: | ||
| version: 9 | ||
|
|
||
| - name: Install dependencies | ||
| run: | | ||
| pnpm install --frozen-lockfile | ||
| pnpm --filter flowise-docs install | ||
|
|
||
| - name: Build documentation | ||
| run: pnpm --filter flowise-docs build | ||
|
|
||
| - name: Verify sitemap exists | ||
| run: | | ||
| if [ ! -f packages/docs/build/sitemap.xml ]; then | ||
| echo "❌ Sitemap not found at packages/docs/build/sitemap.xml" | ||
| exit 1 | ||
| fi | ||
| echo "✅ Sitemap found" | ||
| echo "URLs in sitemap:" | ||
| grep -o '<loc>https://[^<]*</loc>' packages/docs/build/sitemap.xml | wc -l | ||
|
|
||
| - name: Sync documentation to document store | ||
| env: | ||
| DOCS_API_HOST: ${{ secrets.DOCS_API_HOST || 'https://prod.studio.theanswer.ai' }} | ||
| DOCS_API_KEY: ${{ secrets.DOCS_API_KEY }} | ||
| DOCS_STORE_ID: ${{ inputs.docs_store_id || secrets.DOCS_STORE_ID }} | ||
| run: | | ||
| echo "🚀 Starting documentation sync..." | ||
| echo "📍 API Host configured" | ||
| echo "📍 Document Store ID configured" | ||
| pnpm sync-docs | ||
|
|
||
| - name: Upload sync logs | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: sync-logs | ||
| path: | | ||
| *.log | ||
| retention-days: 7 | ||
|
|
||
| - name: Notify on failure | ||
| if: failure() | ||
| run: | | ||
| echo "❌ Documentation sync failed!" | ||
| echo "Check the logs for details." | ||
|
|
||
| - name: Summary | ||
| if: success() | ||
| run: | | ||
| echo "✅ Documentation sync completed successfully!" | ||
| echo "All documentation has been synced to the document store." |
Check warning
Code scanning / CodeQL
Workflow does not contain permissions Medium
Show autofix suggestion
Hide autofix suggestion
Copilot Autofix
AI 9 months ago
The fix is to set an explicit permissions key to limit the GitHub Actions token (GITHUB_TOKEN) permissions in accordance with the principle of least privilege. Based on the steps shown, the job only requires basic read access to repository contents (for checking out code), so contents: read is sufficient. The best way is to add permissions: { contents: read } at the top level (after the workflow name:) to apply it to all jobs, or directly within the sync-docs job definition if granular job-by-job control is desired. Here, we will apply it at the workflow root immediately after the name: line.
What to do:
- Insert a
permissions:block directly after line 1 (aftername: Sync Documentation to Document Store) withcontents: read.
| @@ -1,4 +1,6 @@ | ||
| name: Sync Documentation to Document Store | ||
| permissions: | ||
| contents: read | ||
|
|
||
| # Trigger on: | ||
| # - Push to staging or main branches |
🚀 Release: Staging to Production
Release Date: 2025-11-25
Changes in this release
This PR is automatically created/updated when commits are pushed to staging.
Merging this PR will trigger the release workflow to create a new GitHub release.