Repository navigation
Core-era naming cleanup: SystemAuth, sf_ prefix, sf_principal_id - #56
Merged
Merged
Conversation
…ntrol Renames identity/coreauth -> identity/systemauth, cmd/coreauth -> cmd/systemauth, and docs/coreauth -> docs/systemauth. Retires the parallel "CoreControl" naming (contract/, multiapp/, identity/oauthclient, identity/ent schema comments) in favor of SystemAuth throughout: the bootstrap user is now system@systemauth.local, the JWKS key id is systemauth-1, the config env var is SYSTEMAUTH_SECRET, and the observability metric/span namespace is systemauth.*. Ent code regenerated to pick up the schema comment change. No behavior change. BREAKING CHANGE: the identity/systemauth import path, cmd/systemauth binary name, and all CoreControl-named types (e.g. CoreControlConfig -> SystemAuthConfig) replace their coreauth/CoreControl predecessors. Refs: RMI-SYSTEMFORGE-069 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Renames all 26 identity tables from cf_* to sf_* via the entsql.Annotation Table names in identity/ent/schema/*.go, regenerates Ent, and updates the hand-written rls.SystemForgeTables list and comments to match. Adds migrations/0001_rename_cf_to_sf.sql for an existing dev database with cf_ data to keep; a fresh database needs no migration, just 'systemauth migrate'. BREAKING CHANGE: every cf_* table is now sf_*. No production data exists at the old prefix (hard cutover, per ADR-001). Refs: RMI-SYSTEMFORGE-070 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Renames identity/apikey.DefaultPrefix ("cf" -> "sf", producing
sf_live_/sf_test_ keys) and the legacy identity/credential.APIKeyPrefix
("cf_" -> "sf_"), plus the matching Ent schema/mixin comments.
BREAKING CHANGE: newly issued API keys carry the sf_ prefix instead of
cf_. No production keys exist at the old prefix (hard cutover, per
ADR-001); any dev-issued cf_-prefixed keys stop matching the new prefix
check and must be reissued.
Refs: RMI-SYSTEMFORGE-071
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Renames PrincipalMixin's core_control_principal_id field (and its index) to sf_principal_id. This mixin is published for downstream consumers to embed in their own Principal schema, not used by systemforge's own schema, so this is the canonical name change every consumer adopts, replacing both core_control_principal_id (dashforge, academyos) and the divergent core_auth_principal_id (proofminds-web). BREAKING CHANGE: consumers embedding PrincipalMixin must rename their own sf_principal_id column and regenerate Ent (RMI-DASHFORGE-022, RMI-ACADEMYOS-002, RMI-PROOFMINDSWEB-005). Refs: RMI-SYSTEMFORGE-072 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Adds docs/releases/v0.11.0.md, a top-of-README callout matching the v0.10.0 precedent, the CHANGELOG.json entry (regenerated CHANGELOG.md), and the mkdocs nav entry. Also fixes README's Database Tables and Migration Strategy sections, which still listed cf_* after the RMI-070 rename (that commit's scope was the Ent schema annotations and rls/migrate.go, not prose documentation). Refs: RMI-SYSTEMFORGE-073 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Important Review skippedToo many files! This PR contains 126 files, which is 26 over the limit of 100. To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch. Upgrade to a paid plan to raise the limit. This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry. ⚙️ Run configuration
📒 Files selected for processing (126)
You can disable this status message by setting the
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 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Finishes the CoreForge→SystemForge rename that v0.10.0's module-path move began — the Core-era names are retired. Hard cutover, no dual-name compatibility (no consumer app has shipped yet). See ADR-001.
coreauth→systemauth(package, binary, bootstrap user, JWKS key id, env var, observability namespace); the parallelCoreControlnaming retiredcf_table prefix →sf_across all 26 identity tables, Ent regeneratedcf_→sf_PrincipalMixin's link field unified tosf_principal_id(wascore_control_principal_id)migrations/0001_rename_cf_to_sf.sqlfor an existing dev DB with data to keepdocs/releases/v0.11.0.md) updatedRefs: RMI-SYSTEMFORGE-069, RMI-SYSTEMFORGE-070, RMI-SYSTEMFORGE-071, RMI-SYSTEMFORGE-072, RMI-SYSTEMFORGE-073
Test plan
go build ./...cleango test ./...passesgolangci-lint(shared config, uncapped): 0 new findings — same 39 pre-existing gofmt/goimports issues as baselinemain, none in touched filesv0.11.0after merge🤖 Generated with Claude Code