docs(architecture): select direct Windows CLI invocation from WSL - #57
Conversation
Place the caller in WSL and keep authentication policy, configuration, UI, state, and result ownership in the Windows CLI. Align the threat model and scenario coverage, including requested personal and work accounts. Record pinned Artifacts and GCM source evidence for the shared Azure DevOps token capability while leaving consumer credential exchange in adapters. Refs: #35
|
Independent review by
The deployment fits the current high-level architecture grant. WSL calls the Windows CLI directly, leaving one configuration/authentication/UI/state/result owner. The C4 view locates existing roles without adding a forwarding engine, protocol, service, or token file. Launch failures stay distinct from CLI outcomes. Windows cancellation/disconnect, deadline, output, and Profile/runtime eligibility remain concrete later design/validation obligations, without a Linux-signal termination guarantee or support claim. The reviewer independently inspected pinned Artifacts scope and session-exchange sources at All seven recheck dispositions were evaluated. RECHECK-003/005 fire and have bounded outcomes. Official WSL interop and MSAL WSL guidance support the separate execution models. The reviewer checked PR AzureAD#462's own embedded The five existing records update deployment, user context, evidence, security interpretation, and validation together. Existing TMT caller/CLI flows already carry the same request/result assets; host placement adds no new native-model flow or trust boundary. No policy/Wave expansion, implementation, experiment, or private target access occurs. The reviewer performed read-only repository/public-source inspection and exact-tree whitespace checking; normal hk and CI remain separate gates. |
Summary
Select direct WSL invocation of the Windows CLI and document the single Windows authentication owner. Add the deployment view, matching security/validation boundaries, and the concrete company-repository account scenario. Establish from pinned official source that Azure Artifacts consumes the same Azure DevOps token-acquisition capability as Git.
Authorization and Governing Records
Accepted main-v2
2128cb8db5544a38c88b67cb3a8ff37e56789adf, its Delivery Wave, and #35 authorize high-level architecture and public desk research. The owner selected direct Windows CLI invocation and the personal/work-account Azure DevOps scenarios. Decisions 0003/0004 and existing request, interaction, lifetime, and output requirements govern.Scope and Non-Goals
High-level deployment and evidence only. No product implementation, detailed contract design, Profile activation, platform-support declaration, Linux forwarding layer, package/Git adapter, or experiment. The next Slice's detailed-design authorization will be a separate Wave change.
Record-System Impact
Existing architecture, user-stories, public-research baseline, threat-model narrative, and validation families. No new family, control, policy, or authority. Native TMT input remains unchanged: the existing external caller and Windows CLI exchange the same request/result flows; the deployment view locates those roles on their hosts.
Evidence and Reasoning
Microsoft's WSL documentation supplies direct executable/pipe/argument semantics. Upstream AzureAD#460 remains a forwarding proposal; AzureAD#462 remains open/unmerged Linux-broker work. Azure Artifacts Credential Provider
bca6c32fdb9611aea25819147ef4508f730aa5fband GCM6760f0ef069c994aa2bb1d703fb374986ee82a3euse the same Azure DevOps MSAL scope. NuGet session-token exchange belongs to the external adapter. This is source evidence and architectural inference, not new runtime evidence.Identity and Security Effects
Windows owns configuration, selected-account validation, broker/UI/state, deadline, and output. The authorized WSL caller receives the token through the ordinary CLI contract. No account fallback, Linux config authority, network bridge, token file, or assumed Linux-signal termination. Existing Profile/tenant and secure-state boundaries remain. No private account, repository, or feed information is retained.
Validation
git diff --check: passed.Review and Disposition
Independent reviewer
/root/preparation_reviewfound no material findings in record-system, research-evidence, architecture/requirements/security consistency, and minimality review. Reviewed base2128cb8db5544a38c88b67cb3a8ff37e56789adf, tree52edf223f171cc1118ff6118bc1b5907597554d1; Review binding is recorded in this PR. RECHECK-003/005 fire and have dated source outcomes; all seven registry entries are evaluated in the research addition. Owner's direct-invocation decision is represented by the architecture proposal; no new risk acceptance or runtime effect is sought.Upstream Provenance
Public-source findings link exact Artifacts and GCM commits. No production code imported; no upstream compatibility or support commitment inherited.