docs: RFC 0001 for declarative management of platform resources#1751
docs: RFC 0001 for declarative management of platform resources#1751rohilsurana wants to merge 12 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughThe RFC documents a declarative YAML workflow for reconciling and exporting Frontier resources, defines shared kind behavior and rules for ChangesDeclarative reconciliation design
Estimated code review effort: 2 (Simple) | ~15 minutes 🚥 Pre-merge checks | ✅ 2✅ Passed checks (2 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 5
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: d8fb691c-6b4f-4ac9-9f5e-4c8db0d04f33
📒 Files selected for processing (1)
docs/rfcs/0001-declarative-reconcile.md
Coverage Report for CI Build 29411345758Warning Build has drifted: This PR's base is out of sync with its target branch, so coverage data may include unrelated changes. Coverage increased (+0.3%) to 45.198%Details
Uncovered ChangesNo uncovered changes found. Coverage Regressions112 previously-covered lines in 2 files lost coverage.
Coverage Stats
💛 - Coveralls |
rohilsurana
left a comment
There was a problem hiding this comment.
Verified the narrowing warning against the schema and against a live server (built from #1737, seeded an org, narrowed app_organization_owner via reconcile). One sentence in it is factually wrong; details inline. More comments on the other sections will follow.
rohilsurana
left a comment
There was a problem hiding this comment.
Follow-up comments on the remaining sections, per review discussion.
Review notes (self-review after an independent pass)Three wording fixes, all in 3ce4741:
No behavior contradictions found between the RFC and the code on the implementation branch. |
Proposes a declarative way to manage Frontier's platform configuration: desired-state YAML files, the
frontier reconcileandfrontier exportcommands, and per-kind behavior rules.TLDR
frontier reconcile -f file --dry-runprints the plan; the same command without the flag applies it.frontier export <kind>prints the live state in the same format.apiVersion: v1(absent means v1). The whole file is parsed and checked before anything applies; documents then apply in file order, and ordering dependencies (permissions before roles) is the file author's job.delete: true); predefined roles reset to their shipped definitions, so drift shows up in the plan instead of being skipped. Nothing structural is ever deleted by omission.resources_config_pathis deprecated and removed after two minor versions. New predefined-role defaults from a release roll out through the first reconcile run with the new image, reviewed in a plan, instead of invisibly at boot — so the CLI image should match the server release.owner,member, superuser), so org owners are unaffected until relation-based ownership is removed (planned). Custom permissions always flip cleanly.-His interim — mask the token in logs.What it covers
PlatformUser(shipped in v0.108.0), andPermissionandRole(proposed here).Status
PlatformUsershipped and set the pattern. #1731 (export command) and #1737 (Permission and Role kinds) are draft implementations of this proposal; they change with this RFC's review and merge after it.