| Field | Value |
|---|---|
| Decision ID | ADR-051 |
| Initiative | unsorry platform generalization / contributor and operator experience |
| Proposed By | unsorry maintainers |
| Date | 2026-06-15 |
| Status | Proposed |
ADR-050 defines the Autonomous Trunk Skeleton: a reusable repo-native pattern for many agents contributing through protected trunk, claims, isolated work, machine gates, auto-merge, post-merge generated artifacts, and evidence. That decision captures the control model, but it does not yet make the system easy to understand, operate, or adopt.
The current unsorry repository is powerful but dense. A maintainer can infer
the system by reading ADRs, specs, workflows, swarm/agent.sh, generated
boards, and issue history. That is acceptable for the original builder; it is
not enough for a wider contributor base, a new project adopting the skeleton,
or an operator supervising tens or hundreds of agents. The next constraint is
not only correctness. It is legibility: people and agents need to know what
to do next, why the system is blocked, which controls are authoritative, and
how to recover when automation stalls.
Unsorry therefore needs a deliberate experience layer over the skeleton. That layer should help three audiences:
In the context of ADR-050’s reusable Autonomous Trunk Skeleton and the goal of making unsorry suitable for more contributors, more agents, and new projects beyond Lean,
facing a system whose core mechanics are strong but whose operating model is still spread across ADRs, workflow comments, scripts, generated docs, and maintainer knowledge, making it harder for new humans and agent fleets to onboard safely,
we decided for planning an Autonomous Trunk Experience Layer: a documentation, diagnostics, dashboard, and guided-operations layer that makes the skeleton understandable and operable through role-based journeys, plain-language system maps, setup/doctor commands, operator runbooks, fleet health views, settings-drift evidence, and contributor-safe guidance; this layer is additive and must sit above the existing verifier/gate model rather than weakening or hiding it,
and neglected adding more CI gates as the primary response (rejected because the current gap is operator clarity, not only enforcement), turning unsorry into a hosted service now (premature before the skeleton has multiple adopters), replacing GitHub as the first operator surface (rejected because GitHub remains the audit and merge substrate), and writing marketing-only documentation without executable checks or runbooks (rejected because the experience layer must reduce real operational ambiguity),
to achieve a system that remains rigorous while becoming easier to explain, bootstrap, supervise, troubleshoot, and scale to many participants and agents,
accepting that this creates a product-experience backlog for what was previously a research swarm, that dashboards and guides can drift unless backed by generated data and checks, that not every operator task can be automated in the first phase, and that the Lean proof path remains the soundness reference even as the user experience becomes friendlier.
The experience layer should introduce these surfaces incrementally:
doctor/settings-audit style report before adding
more UI.| Reference ID | Title | Type | Location |
|---|---|---|---|
| REF-1 | Experience layer specification | Specification | specs/SPEC-051-A-Autonomous-Trunk-Experience-Layer.md |
| REF-2 | Autonomous Trunk Skeleton | Decision | ADR-050-Autonomous-Trunk-Skeleton.md |
| REF-3 | Domain-agnostic distributed-workload engine | Decision | ADR-030-Distributed-Workload-Engine.md |
| REF-4 | CI supply-chain and workflow protection | Decision | ADR-019-CI-Supply-Chain-Protection.md |
| REF-5 | Decentralised CI runner architecture | Decision | ADR-049-Decentralised-CI-Runner-Architecture.md |
| Status | Approver | Date |
|---|---|---|
| Proposed | unsorry maintainers | 2026-06-15 |