Class SchemaHintsFile
- Namespace
- Kuestenlogik.Bowire.Semantics
- Assembly
- Kuestenlogik.Bowire.dll
On-disk shape of bowire.schema-hints.json (project file) and
~/.bowire/schema-hints.json (user file). The two files share
the same schema by design — the frame-semantics-framework ADR pins
them to be byte-for-byte the same format so a user-local file can be
promoted into a project file with a copy.
public sealed class SchemaHintsFile
- Inheritance
-
SchemaHintsFile
- Inherited Members
Remarks
The format groups annotations under (service, method) first,
then by discriminator value under the "types" map (with
"*" as the literal wildcard for single-type methods). Each
terminal entry is a json-path → semantic-kind string pair.
Reads tolerate unknown keys at every level so future framework
extensions don't break older readers.
Constructors
SchemaHintsFile()
public SchemaHintsFile()
Fields
CurrentVersion
The current on-disk format version.
public const int CurrentVersion = 1
Field Value
Properties
Schemas
One entry per (service, method) pair.
[JsonPropertyName("schemas")]
public IList<SchemaHintsEntry> Schemas { get; init; }
Property Value
Version
File-format version. Readers refuse versions newer than CurrentVersion; older versions are upgraded in-place on next write.
[JsonPropertyName("version")]
public int Version { get; set; }