Skip to content

one generated admission artifact for the identity-table / lint-admission / estate-gen triad #809

Description

@lex00

Kept from the closed refactor epic (#831). The evidence is co-change over the 883 commits from 2026-08-12: identity/table.go and lint/admission.go moved together in 36 commits (cosine 0.72), lint/admission.go and estate-gen/overrides.go in 30 (0.72), identity/table.go and estate-gen/overrides.go in 30 (0.68). Separately, 7 of the 41 type-admission commits touched all three. Maintainer ruling stands: the identity table is the master, lint's admission list is generated from it, estate-gen's overrides become generator input.


Co-change analysis over the 883 non-merge commits since 2026-08-12 (saved before the re-root removed its input) found the tightest coupling in the fork is a triad: internal/live/identity/table.go and internal/live/lint/admission.go changed together in 36 commits (cosine 0.72), lint/admission.go and tools/estate-gen/overrides.go in 30 (0.72), identity/table.go and estate-gen/overrides.go in 30 (0.68). At package level identity and lint co-change in 54 commits. Every type admission is still hand-touched in three places even though generated halves exist for two of them. lint/admission.go is 224 lines and is the biggest hub in the fork (151 distinct co-changing partner files); hub-ness is about role, not size.

Proposal: one generated admission artifact that both identity's table and lint's admission read, with estate-gen's overrides feeding the generator rather than being a third hand-edited copy. This is not a file split and it changes where the source of truth lives, so it needs a ruling on: which of the three is the source, and whether estate-gen overrides become generator input or stay as a checked exception list.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    designneeds a design decision before code

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions