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
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AIGuiders.Platform.Modeling.Core" Version="0.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AIGuiders.Platform.Modeling.Core" Version="0.1.0" />
                    
Directory.Packages.props
<PackageReference Include="AIGuiders.Platform.Modeling.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AIGuiders.Platform.Modeling.Core --version 0.1.0
                    
#r "nuget: AIGuiders.Platform.Modeling.Core, 0.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AIGuiders.Platform.Modeling.Core@0.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AIGuiders.Platform.Modeling.Core&version=0.1.0
                    
Install as a Cake Addin
#tool nuget:?package=AIGuiders.Platform.Modeling.Core&version=0.1.0
                    
Install as a Cake Tool

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-made DocId, DiagnosticRef, NodeId, ArtifactRef, CommitRef
    • ProjectId — 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, Ship
  • RoutedIntent — parsed intent before host execute: Verb, Go, Organ, Path, Detail, Scene, Cmd, OldString / NewString, Op, Reason
  • PulseFormat — 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 Identity over 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 — ParseCommit accepts full 64-hex sha256 only; sha1 and short forms are errors, not resolved.

Learn more


MIT · Source & issues · part of the Guiders federation

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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