AIGuiders.Platform.Modeling.Core
0.1.0
dotnet add package AIGuiders.Platform.Modeling.Core --version 0.1.0
NuGet\Install-Package AIGuiders.Platform.Modeling.Core -Version 0.1.0
<PackageReference Include="AIGuiders.Platform.Modeling.Core" Version="0.1.0" />
<PackageVersion Include="AIGuiders.Platform.Modeling.Core" Version="0.1.0" />
<PackageReference Include="AIGuiders.Platform.Modeling.Core" />
paket add AIGuiders.Platform.Modeling.Core --version 0.1.0
#r "nuget: AIGuiders.Platform.Modeling.Core, 0.1.0"
#:package AIGuiders.Platform.Modeling.Core@0.1.0
#addin nuget:?package=AIGuiders.Platform.Modeling.Core&version=0.1.0
#tool nuget:?package=AIGuiders.Platform.Modeling.Core&version=0.1.0
AIGuiders.Platform.Modeling.Core
Cross-tool spine pieces — typed entity identity carriers, the routed-intent / execution-outcome envelope shapes, and pulse-line truncation rules.
What you get
- Identity carriers (
Core.Identity):CarrierWire— raw ingress shapes:Numeric(bigint),Uuid,Text,Path- single-case carriers
NumericId/GuidId/Sha256 Identity<'entity, 'carrier>— phantom-typed id; ready-madeDocId,DiagnosticRef,NodeId,ArtifactRef,CommitRefProjectId— case-insensitive logical-path wrapper (create,path,fromAbsolute);GitPin- boundary parsers:
CarrierWire.parseNumeric / parseUuid / parsePath,ParseCommit.parse(64-hex sha256 →CommitRef)
IntentOutcome— host-execute result record:Raw,Verb,Ok,Action,Seat,Go,Path,DocId,Cmd,Pulse,Reason,ShipRoutedIntent— parsed intent before host execute:Verb,Go,Organ,Path,Detail,Scene,Cmd,OldString/NewString,Op,ReasonPulseFormat— one-line pulse rules:truncate,joinBits,DefaultMaxChars = 240,InventoryObserveMaxChars = 480
Quick start
open AIGuiders.Platform.Modeling.Core
open AIGuiders.Platform.Modeling.Core.Identity
// Typed ids instead of raw ints/strings crossing boundaries
let doc = DocId.mint (NumericId.ofCounter 42L)
let node = NodeId.mint (NumericId.ofCounter 7L)
// Wire ingress, validated
let commit = ParseCommit.parse (new string('a', 64)) // Ok CommitRef (sha256)
let bad = ParseCommit.parse "abc123" // Error "commit hash must be 64 hex characters (sha256)"
// Pulse lines, budgeted
let pulse = PulseFormat.joinBits [ "3 projects"; "index warm" ] PulseFormat.DefaultMaxChars
Problem
- Pipelines pass entity references (documents, syntax nodes, commits) as raw strings and ints — nothing stops a document counter landing in a node slot.
- Agent and intent plumbing re-declares "what did we route" and "what did the host execute" record shapes per product.
- Status lines get truncated differently in every tool.
Solution
- Phantom-typed
Identityover narrow carriers: ids stop being interchangeable, and parse boundaries stay explicit (CarrierWire,ParseCommit). - Two neutral envelopes (
RoutedIntent,IntentOutcome) shared by routing and execution across products, plus pulse formatting with named budgets. - Spine of the Guiders federation — identity carriers per ADR-0063; envelope placement per ADR-0042 · ADR-0020.
When not to use
- Rich identifiers (ULIDs, opaque tokens, human-readable keys) — only int64 / Guid / sha256 / logical-path carriers ship; bigint wire values outside int64 are rejected.
- Serialization or persistence — the envelopes are
[<CLIMutable>]data only, no JSON/text converters here. - Short git hashes —
ParseCommitaccepts full 64-hex sha256 only; sha1 and short forms are errors, not resolved.
Learn more
- ADR-0042 — Intermediate representation family
- ADR-0020 — MCPlane agent ingress
- ADR-0063 — Anchors federation reincarnation
MIT · Source & issues · part of the Guiders federation
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- AIGuiders.Platform.Modeling.Paths (>= 0.1.0)
- FSharp.Core (>= 10.1.401)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on AIGuiders.Platform.Modeling.Core:
| Package | Downloads |
|---|---|
|
AIGuiders.Platform.Modeling.LanguageIntelligence.Relations
Federation RelationSpec kernel — typed relation witness before Resolve/Materialize. |
|
|
AIGuiders.Platform.Modeling.Ide.Session
IDE solution session graph IR — projects, capabilities, lifecycle, validation (F# SSOT). |
|
|
AIGuiders.Platform.Modeling.Routing
Route refusal algebra — shared helpers for intent organs. |
|
|
AIGuiders.Platform.Modeling.CodeCenter
Federation Code Center document session SSOT — structural edits, Λ_doc ledger, replay undo. |
|
|
AIGuiders.Platform.Modeling.Notations.Bracket
Bracket notation profile IR — axis shapes, wire normalization. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0 | 119 | 10/24/2026 |