Skip to content

Conversation

@dncsvr
Copy link
Member

@dncsvr dncsvr commented Jan 20, 2026

Improve domain objects locating in baked.

Tasks

  • ID Configuration as Feature
  • ID Property
  • Locator System
  • Nested Locatables
    • Introduce a way to accept a locatable object in a nested records.
    • 🤔 json serialization might be an easier solution here. when
      serializing serialize as is. when deserializing expect only id
    • in req/res body
      {
        "entity": { "id": "123" }
      }
    • in request body it is always only prop: { id: ... }, so consider creating
      an object ref dto
      • unique props will NOT be used in object locating
    • 🤔 in response body do not serialize when db object is not loaded
      and is only proxy with id
    • in query string it should be entityId= (it probably already is)
    • id is used as an example, it should use whatever prop name is the domain
      object's id prop. if it is Uid it should be /{uid}, entityUid= and { "uid": ... } in route, query and body respectively
  • Issues
    • Refactor OrmConfig Orm to improve design, currently it seems irrelevant
    • Improve Id design
      • factory methods to create id
        • Id.Parse(3) -> this is not parsing -> Id.Create(3)
      • generate to use guid new
      • improve struct to implement other value type interfaces (comparable?)
      • provide id.IsEmpty and Id.Empty
      • consider implicit and explicit cast operators from and to string
        respectively
    • Fix RotingEntitySubclasses fixture
    • Remove SingleByUniqueAttirbute and fix build

Additional Tasks

dncsvr added 30 commits January 13, 2026 10:56
- remove identity configuration from `AutoMap` feature
- remove `GuidIdAsIdentity` coding style feature
- update documentation
- add `Type` and `Key` properties to IdAttribute
- add type and idSuffix parameters to `ConvertToId` helpers
- add json converter for Id
- add schema filter for Id
- move id tests to Id feature folder
- add `IdAttribute` convention to `RichTransient` feature
- change Id to record struct and make constructor private
- improve GuidIdUserType
- add test for `Id`
- remove TODO comments from GuidIdUserType
- add `TryGetıdentifier` extension for TypeModel and return `IdentifierInfo`
- rename `Id` attribute to `Identifier`
- refactor features and conventions
- add `UserTypeBase` abstract class
 - rename feature to `IdentifierMapping`
- rename AddId to AddIdentifierMapping
dncsvr added 28 commits January 19, 2026 16:24
- move id json converter to coding style feature
- move feature to `CodingStyle` and name it as `Id`
- move `IdAttribute` type to `Business` feature
- update documentation
- rename IdentifierInfo to IdInfo
- move GetIdInfo helpers to Business feature
- change GuidIdGenerator to extend GuidGenerator
- remove TypeCheck from GuidIdUserType
- change `ConvertToId` to use `IdInfo` as parameter
- rename `GuidId` to `IdGuid`
- use Parse instead of TryParse in user type
- remove empty lines
- remove unnecessary Kebaberize
- improve Id coding style documentation
- update auto map orm feature documentation
- update unreleased
- restrict to Id typed properties as well as Id named properties
- update rich transient samples to use `Business.Id`
- move id tests to coding style folder
- validate identifier generator type
- rename `IdInfo.Name` to `IdInfo.PropertyName`
- use explicit Camelize for target name
- change id type of sample records to `Id`
- minor format edits
- minor format edits
- move TryGetIdInfo above
- refactor Guid id tests assertion
- minor format edits
- update Id coding style documentation
- update id coding style entity sample documentation
- move global usings to their own template file
- refactor IdMapperTemplate into single file
- fix format
…on-as-feature

Issue / Locatability / ID Configuration As Feature
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Auto Unique Index

3 participants