Documentation Versioning
This document explains how versioned documentation works for tif1.
Overview
The tif1 documentation uses Mintlify’s free plan with a separate branch deployment strategy. Documentation is automatically deployed when releases are published.
Deployment Strategy (Free Plan)
Since we’re on Mintlify’s free plan (no API access), we use a branch-based deployment:
- Development: All doc changes happen on the
main branch
- Production: Mintlify auto-deploys from the
docs-production branch
- Trigger: GitHub Actions pushes to
docs-production only on releases
Why This Approach?
- Free plan limitation: No API key for programmatic deployment
- Solution: Use Mintlify’s auto-deploy feature with a dedicated branch
- Benefit: Docs only update on releases, not every commit
How It Works
On Release
- You publish a new release (e.g.,
v0.2.0)
- GitHub Actions workflow triggers
- Workflow updates
docs.json with the new version
- Workflow pushes docs to
docs-production branch
- Mintlify auto-deploys within minutes
- Version appears in the version selector
Version Selector
Users can switch between documentation versions using the version selector in the navbar:
- Each release creates a versioned snapshot
- Versions are listed in the
versions array in docs.json
- The
version field shows the currently deployed version
Mintlify Configuration
In your Mintlify dashboard, configure:
-
Git Settings:
- Repository:
TracingInsights/tif1
- Branch:
docs-production (important!)
- Subdirectory:
docs
-
Auto-Deploy:
- Enable auto-deploy
- Mintlify watches
docs-production for changes
Manual Deployment
To deploy docs without creating a release:
- Go to GitHub Actions
- Select “Deploy Documentation” workflow
- Click “Run workflow”
- Enter the version (e.g.,
v0.1.0)
- Click “Run workflow”
This is useful for:
- Fixing documentation bugs between releases
- Updating docs for an existing version
- Testing the deployment process
Version Management
Automatic Updates
The GitHub Actions workflow automatically:
- Extracts version from release tag (e.g.,
v0.2.0 → 0.2.0)
- Updates the
version field in docs.json
- Adds the version to the
versions array (if not present)
- Commits and pushes to
docs-production
Manual Updates
If you need to manually manage versions:
# Edit docs/docs.json
{
"version": "0.2.0",
"versions": ["latest", "0.2.0", "0.1.0"]
}
Best Practices
-
Always test locally before merging doc changes:
-
Keep versions in sync: The workflow handles this, but verify after deployment
-
Use semantic versioning: Match your package versions (e.g.,
0.1.0, 0.2.0)
-
Don’t push to docs-production directly: Always use the GitHub Actions workflow
-
Review the PR preview: The docs-preview workflow validates changes
Troubleshooting
Docs Not Deploying
- Check Mintlify dashboard → Git Settings → Branch is
docs-production
- Verify auto-deploy is enabled
- Check GitHub Actions logs for errors
- Ensure
docs-production branch exists and has recent commits
Version Selector Not Showing
- Verify
versionSelector.enabled: true in docs.json
- Check that
versions array has multiple entries
- Clear browser cache and reload
Deployment Delayed
- Mintlify auto-deploy can take 2-5 minutes
- Check Mintlify dashboard for deployment status
- Verify webhook is configured (if applicable)
Migration from API-Based Deployment
If you later upgrade to a Pro plan:
- Update
.github/workflows/docs.yml to use Mintlify CLI
- Add
MINTLIFY_API_KEY to GitHub Secrets
- Change deployment branch back to
main in Mintlify settings
- Remove the
docs-production branch strategy
Resources
Last modified on March 13, 2026