From f5261980594a1b101dc7412b7c7ebd68add5798a Mon Sep 17 00:00:00 2001 From: Eric Rakestraw Date: Mon, 19 Oct 2026 01:18:13 +0000 Subject: [PATCH] Record alias invocation metadata decision --- docs/roadmap/aliases.md | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/docs/roadmap/aliases.md b/docs/roadmap/aliases.md index f4035e7..cef6c95 100644 --- a/docs/roadmap/aliases.md +++ b/docs/roadmap/aliases.md @@ -213,9 +213,17 @@ defaults, typed bindings, input preparation, providers, diagnostics, and outcomes. Execute the ordinary lifecycle once. Alias registration, resolution, and help do not invoke application input/state factories or acquisition callbacks. -Retain the entered alias path and resolved canonical path for routing and -presentation. Whether this identity is exposed through the public invocation -API remains open. +Expose the original entered command path and final resolved canonical command +path as read-only invocation metadata. Both paths exclude the executable name, +flags, and operands. For a direct canonical invocation the paths are equal; +for `app pk test full`, they can be `pk test full` and `promptkit test all`. +Retain the endpoints through a chain; intermediate rewrites are not part of +the selected public metadata. + +Consumers can use the canonical path to identify the operation consistently +and the entered path for logging and diagnostics. CommandKit dispatch and +bindings continue to use the canonical target. Exact accessor names and path +representation remain API design details under OD-1. Support both help forms: @@ -364,13 +372,9 @@ duplicate handling, and core-only availability are selected above. What public declaration type lets `New` and `App.Register` accept commands and aliases together? How do collections of reusable declarations and group composition interact with application-root alias paths? What exact whitespace parsing and -path validation rules accompany the selected string representation? - -### OD-5: Invocation identity - -Does the public invocation API expose entered and canonical command paths? -What identity is retained through a chain, and how is it represented in that -API? Help and diagnostic presentation are selected above. +path validation rules accompany the selected string representation? What +accessor names and representation expose the selected read-only entered and +canonical invocation paths? ### OD-6: Flag alias scope and composition