You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Find entities through a base class the project wrote itself
Classification matched a class's own base list against the root names and
stopped there. An application with a shared base -- auditing, a key convention,
a display-name property -- lost every business object below it.
The inversion is what makes it severe rather than incomplete. The abstract base
does match, so the inventory reports the one class that is not a table and omits
the ones that are, while AGENTS.md goes on to say the inventory is complete and
that anything absent does not exist.
Selection now repeats until a round changes nothing, which is what
SelectControllers already does on the controller side and for the same reasons:
a base may be read after the class deriving from it, and a chain can be any
depth.
A base name is resolved through the deriving file's own scope rather than by
simple name. A name is not an identity -- the reason the DbSet roster carries
scopes -- so a Contracts.Order beside a BusinessObjects.Order still resolves to
the base it actually named, not to any accepted class wearing that name.
Acceptance is keyed on (namespace, name), so every part of a partial class is
selected once any part of it is.
On the demos shipped with 26.1:
FeatureCenter.NET.XPO 43 -> 140
MainDemo.NET.XPO 14 -> 17
OutlookInspiredDemo.NET.EFCore 23 -> 24
MainDemo.NET.EFCore 14 -> 14 (unchanged)
The OutlookInspired one is an EF Core application: TaxRate derives through a
shared base and is not registered as a DbSet, so neither the roster nor the base
match saw it.
Fixes#6
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
0 commit comments