cratis-fundamentals-concept
Use when a C# or TypeScript domain value needs a distinct type, a concept generates a value or an identity addresses a Chronicle stream. Not for enums, DTO-only values, Go concepts or event migration.
Target: Software development & testing. Automatically collected · unverified.
Excerpt from the author’s documentation
Extracted from a fixed version of SKILL.md in its original language. This is the author’s documentation; installation, compatibility and runtime results have not been verified by this site.
Read the original English text
Topics in the source
- Cratis domain concepts and event-source identities
- Verified product sources
- Choose the type
- Create a value concept
- Absence and sentinels
- Let a concept generate its own value
- Choosing a strategy
- When not to generate
Replace a primitive only when the domain gives it distinct meaning. Keep value concepts and Chronicle stream identities separate. Sources: | Package | Purpose | | --- | --- | | Cratis.Fundamentals | ConceptAs , IGeneratable , IGeneratableInContext , GenerationContext and GenerateValue | | Cratis.Chronicle | Cratis.Chronicle.Events.EventSourceId and EventSourceId | | @cratis/fundamentals | TypeScript ConceptAs , field, Guid, and JSON conversion | Reverify product sources before claiming support for another version. Derive a name, amount, code, number, or non-stream entity ID from ConceptAs . Derive an identity from EventSourceId only when that value is actually passed to Chronicle as the event-source/stream ID. Do not use ConceptAs for a Chronicle stream identity. Do not use EventSourceId merely because a value is called an ID. Do not wrap an enum. An enum already expresses a closed domain concept. Keep DTO-only transport values primitive unless the domain type belongs in the public contract. Both generic bases require an underlying type that implements IComparable. A value concept contains exactly one wrapped value. Do not add extra properties; Fundamentals converters assume the co
This is an excerpt. Refer to the complete source and its current requirements.
- Source repository
- Cratis/AI
- Source file
- .cratis/ai/skills/cratis-fundamentals-concept/SKILL.md
- Fixed revision
- 868bc20e7f474299466331a3cf86eaf995be0a2b
Sources and evidence
This record was collected automatically. Its documentation, suitability and runtime behavior have not been manually verified.
Author: Cratis/AI · original repository metadata. Documentation review: Not reviewed. Last source check: 2026-11-12T11:00:49.563Z.
Categories are inferred from names, descriptions and paths. They do not establish compatibility.
License and attribution
MIT. Third-party content and copyright remain with their authors. Refer to the original license and terms.
Original license ↗Synchronization, copying and user-reported success do not mark a resource as runtime-tested.
Limitations and notes
- Collecting metadata does not mean this site has installed, adapted, runtime-tested or security-reviewed the resource.