Skip to content

Cross-port codegen audit: subtype-proxy persistence gating in Java/Python/Kotlin/C# generators #251

Description

@dmealing

Follow-up from #248 (PR #249), design spec §9b.

#248 fixed the TypeScript migrate-ts + codegen-ts fail-open where "is this object a DB thing?" was decided by an object-subtype compare instead of by declared/inherited source.* presence. The Java (codegen-spring), Python, Kotlin, and C# generators emit repositories/controllers/DTOs — audit whether their emission gates are the same subtype-proxy with a sourceless fail-open.

Schema/DDL is TS-owned (ADR-0015), so no other port emits CREATE TABLE — lower stakes than the TS half — but the durable principle is the same: DB participation derives from source.*, never from a subtype name. A sourceless custom object.* subtype (or a plain sourceless entity) should not get a generated repository/controller.

Same family as the #228 out-of-scope cross-port audit list. Ref: §9b.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions