web-release

Deploys the Fedi web app to production via tag-based Vercel workflow dispatch.

78|27|Updated May 4, 2024
One-click install
npx skills add https://github.com/fedixyz/fedi --skill web-release-fedixyz
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: web-release
Source: https://github.com/fedixyz/fedi/tree/main/.agents/skills/web-release
Command: npx skills add https://github.com/fedixyz/fedi --skill web-release-fedixyz

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Shipping the Fedi web app to production at app.fedi.xyz is error-prone: deploys only run from web/X.Y.Z tags (never branches), releases must be cut from the previous release tag rather than master, and the package version must match the tag. This Skill walks you through the exact release procedure so a production deploy or feature-flag flip goes out correctly. ## Core Features & Use Cases - Tag-Lineage Release Cutting: Branch off the previous web/X.Y.Z tag, cherry-pick only intended commits, bump ui/web/package.json with yarn, and verify the diff before tagging. - Production Deployment: Dispatch the vercel-prod.yml workflow against the tag and diagnose common failures like branch-ref rejection or version/tag mismatch. - Feature-Flag Flips: Ship production remote flag changes by updating prodRemoteFeatures and crates/runtime/src/features.rs together, then verify live via /api/features. - Use Case: You merged a PR enabling a feature flag and need it live for native apps. Follow the steps to cut web/26.6.2 from web/26.6.1, deploy it, and confirm the flag is true at https://app.fedi.xyz/api/features. ## Quick Start Ask the assistant to cut and deploy the next Fedi web production release containing your merged commits, then verify the live feature flags endpoint.

Frequently Asked Questions about web-release

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deploy the Fedi web app to production?

Cut a release branch from the previous web/X.Y.Z tag, cherry-pick the intended commits, bump ui/web/package.json with yarn, tag it as the next version, then dispatch the vercel-prod.yml workflow against that tag using gh workflow run.

How do I flip a production feature flag for Fedi native apps?

Set the flag in prodRemoteFeatures in ui/web/src/pages/api/features.ts and the matching FeatureCatalog field in crates/runtime/src/features.rs, merge to master, then ship it as a web release. Native apps pick up the new value on their next fetch of /api/features.

Why does the Vercel production deploy fail immediately with zero steps?

The Production GitHub environment only accepts refs matching web/* of type tag. Dispatching against a branch is rejected before any build runs, so confirm the ref is a pushed tag and that no branch shares the tag's name.

Why does the deploy fail saying package.json version and tag disagree?

The deploy script refuses to ship when ui/web/package.json does not match the tag. Bump the version with yarn version --new-version X.Y.Z --no-git-tag-version in the release commit; npm version corrupts the yarn lockfile.

Can I deploy the web app directly from the master branch?

No. Master accumulates unreleased web commits, so deploying it would ship everything. Releases are cut from the previous release tag plus only the cherry-picked commits intended for that deploy.

How do I roll back a bad Fedi web production deployment?

The fastest rollback is promoting the previous production deployment in the Vercel dashboard. Alternatively, cut a new patch tag that reverts the change and deploy it through the same vercel-prod.yml workflow.