docs: Add blog post on experimental feature view versioning support by Copilot · Pull Request #6204 · feast-dev/feast
Adds a blog post announcing the experimental Feature View Versioning capability introduced in #6101, highlighting that it's still experimental, SQLite-only for versioned online reads, and inviting community feedback. Also adds agent/skill conventions to enforce blog post placement, and consolidates all agent instructions into AGENTS.md as the single source of truth.
What this PR does / why we need it:
infra/website/docs/blog/feature-view-versioning.md— New blog post covering:- Hero image (
feast-feature-versioning-hero.png) matching the style of other blog posts - Hyperlink to the original feature request issue #2728 in the opening paragraph
- Two motivating use cases: (1) fixing forward on a live production feature while retaining a recoverable audit trail, and (2) offline experimentation with staged publishing before promotion to production
- Why production AI serving and point-in-time correctness is the primary motivating challenge
- Auto-versioning mechanics (
feast applyauto-increments on schema/UDF changes, idempotent on no-change) - Multi-version online serving via
@v<N>syntax (e.g.driver_stats@v2:trips_today); unversioned requests default to the latest promoted version - Safe rollback via version pinning (
version="v1"in theFeatureViewdefinition) - Staged publishing with
feast apply --no-promote - Why per-version online tables are necessary — explains why a single shared table was rejected and how isolated per-version tables are the only design that guarantees point-in-time correctness
- Client responsibility — clients default to latest promoted version; explicit
@v<N>pinning is opt-in - Materialization complexity and tradeoffs — correctness challenges, per-version table ownership, storage/freshness costs, concurrency edge cases
- Known limitations: SQLite-only for versioned online reads, no offline versioning, no version pruning
- Hero image (
AGENTS.md(new) — Repository-level instructions for AI coding agents, synced with the full content fromCLAUDE.md(dev commands, project structure, code style, contributing guide) plus the blog post placement convention: blog posts must go in/infra/website/docs/blog/onlyCLAUDE.md— Replaced with@AGENTS.mdso it points toAGENTS.mdas the single source of truth for agent instructionsskills/feast-dev/SKILL.md— Added a "Documentation and Blog Posts" section enforcing the same blog post placement convention
Which issue(s) this PR fixes:
Checks
- I've made sure the tests are passing.
- My commits are signed off (
git commit -s) - My PR title follows conventional commits format
Testing Strategy
- Unit tests
- Integration tests
- Manual tests
- Testing is not required for this change
Misc
Blog post is intentionally scoped to what's implemented today. The call-to-action for community feedback on additional online store support is deliberate per the issue brief.