AIGuiders.Platform.Modeling.CommandPlane 0.1.0

dotnet add package AIGuiders.Platform.Modeling.CommandPlane --version 0.1.0
                    
NuGet\Install-Package AIGuiders.Platform.Modeling.CommandPlane -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.CommandPlane" 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.CommandPlane" Version="0.1.0" />
                    
Directory.Packages.props
<PackageReference Include="AIGuiders.Platform.Modeling.CommandPlane" />
                    
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.CommandPlane --version 0.1.0
                    
#r "nuget: AIGuiders.Platform.Modeling.CommandPlane, 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.CommandPlane@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.CommandPlane&version=0.1.0
                    
Install as a Cake Addin
#tool nuget:?package=AIGuiders.Platform.Modeling.CommandPlane&version=0.1.0
                    
Install as a Cake Tool

AIGuiders.Platform.Modeling.CommandPlane

Pure shapes for command surfaces: attach-wizard schemas, value constructors, prefix-arm completion matches, and locale date input algebra.

What you get

  • AttachSchema.forVerb — the attach wizard per verb (Error, Issue, Document, Code, Nav, Manual): target RelationSpec case + ordered pick steps; AttachSchemaCatalog exposes all verbs/steps with stable suggestion ids (federation.attach.verb, federation.attach.step.<id>)
  • AttachSchema.validateSpecVector — conformance check: verb → expected target case + expected step ids
  • Constructor shapes — LeafConstructorDef (segments + wire/display patterns), CompositeConstructorDef (slots + separator), ConstructorRegistry (pure Map registry), ArgCompletionRow/ArgCompletionKind for step-completion
  • Prefix-arm (PAC) shapes — PrefixArmDisposition (NoMatch / Ready / ArmConstructor), PrefixArmMatch with constructors noMatch/ready/armConstructor, PrefixArmSite
  • Locale date algebra — LocaleInputProfile.fromPattern (derive field order + separators from a culture short-date pattern), LocaleDateAlgebra.completeness (Empty/Partial/MonthYear/CompleteDate/CompleteRange)

Quick start

open AIGuiders.Platform.Modeling.CommandPlane

// The attach wizard for the "code" verb: which steps, in which order
let schema = AttachSchema.forVerb AttachVerb.Code
schema.TargetCase                        // "CodeEdit"
schema.Steps |> List.map (fun s -> s.Id) // ["pick_file"; "pick_member"]

// Steps carry stable suggestion ids for completion menus
AttachSchema.stepSuggestionId "pick_file"
// "federation.attach.step.pick_file"

// Locale date input profile from a culture pattern (pure, no culture I/O)
let profile = LocaleInputProfile.fromPattern "dd.MM.yyyy"
profile.FieldOrder         // [Day; Month; Year]
profile.PrimarySeparator   // '.'

Problem

  • Command surfaces (palettes, chat, pickers) keep re-inventing the same scaffolding:
    • "attach this to an error/issue/doc/code" wizards: which steps, which order, what target kind
    • value constructors for structured arguments (segment patterns, composite slots)
    • prefix-armed completion: does this prefix produce a ready wire, or arm a constructor?
    • locale dates: which field order the user types, how complete the value is
  • Each surface answers these with private enums and copy-paste steps.

Solution

  • The schemas live once as pure data with stable ids; surfaces render, conformance vectors pin the shape (validateSpecVector).
  • Constructor and prefix-arm shapes mirror the C# execution plane one-to-one, so F# models and C# runtime agree.
  • Battle-tested as the shape layer of the Guiders command plane — ADR-0038 · ADR-0035 · ADR-0047.

When not to use

  • UI or completion rendering — these are shapes; menus are drawn by surfaces.
  • Producing RelationSpec values — attach schemas map onto the Relations vocabulary but do not construct anchors.
  • Locale date parsing — fromPattern derives the input profile and completeness grades parsed tokens; splitting typed text is not here.
  • Adaptive topology rules — AdaptiveRule-style heuristics are placeholders elsewhere; this package carries no evaluator.

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

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0 87 10/24/2026