I began building SLP on August 25, 2026.
The Git history records the first design commit at 5:55 p.m. and the first implementation eight minutes later. That implementation added the dispatch and handback contract that became the foundation of SLP V1.
The idea came from Demonthorn, an older friend I knew through Discord as vhlam. He gave me the starting point for SLP, and I carried it into Maestro. The implementation decisions and the mistakes that followed were mine.
A Blind Spot in Passive Orchestration
Maestro was passive by design. Agents produced events through commands and hooks, and Maestro responded when one of those events occurred.
That worked while agents remained active. A stalled agent created a harder case. If a session held a work lease and went silent, it produced no event. The hooks had nothing to react to, so the system became blind while the work remained stuck.
The first SLP design introduced an opt-in Supervisor process. It ran the same attention checks as the command-line tool, but repeated them on a timer.
The Supervisor could detect a stalled lease, repeated failures, stale decisions, scope collisions, and work that had been returned but never reviewed. It could observe and ask. Its authority stopped before editing code, mutating work, or silently reassigning ownership.
I wanted attention coverage without giving a background process control of the project.
Dispatch and Handback
The first implementation landed at 6:03 p.m. on August 25.
A dispatch described the work before a Peer started:
The assignment had to state what the Peer owned and what remained outside its authority. A no-write investigation and a delivery task could no longer receive the same vague prompt.
A handback described what the Peer returned:
The result could be DONE, BLOCKED, UNKNOWN, CHALLENGE, or a request to reopen or expand the work. UNKNOWN was an acceptable result. A Peer did not need to turn uncertainty into a false success.
Dispatch and handback gave each assignment a clear entry and exit. They also kept execution and acceptance in separate hands.
Human, Supervisor, Lead, and Peer
On August 27, I packaged the role model as Maestro's slp recipe.
The Human owned purpose, priority, risk, and external effects such as publishing, deploying, spending, or deleting.
The Supervisor represented the owner in the Maestro room. It watched coordination, surfaced unresolved questions, and could freeze or escalate work through the Lead.
The Lead owned the technical result for one project. It framed the problem, chose the team shape, assigned bounded work, integrated results, and decided whether the evidence met the project's acceptance criteria.
A Peer owned one assignment. It could implement, investigate, challenge the premise, or compare an independent solution. It could return a blocker or disagreement without pretending to agree with the Lead.
The original topology looked like this:
The Supervisor communicated through the Lead. Peers had one technical authority path, which prevented the Supervisor and Lead from giving them conflicting directions.
A role came from where a session started and which lease it held. An agent could not promote itself through a prompt.
Independent Lanes
V1 divided Peer work into three main lanes.
A delivery lane could write inside an assigned scope. A decision lane investigated alternatives and returned a recommendation without editing the project. A challenge lane tried to break the premise or proposed solution, then returned evidence without applying a fix.
For difficult choices, the Lead could send the same neutral question to two or three decision lanes. Each Peer worked independently before the Lead compared their answers.
This became my early form of blind parallel design. It reduced framing effects and gave the Lead evidence from several directions.
It also created more lifecycle machinery. Each lane needed an owner, a lease, a dispatch, a stop condition, and a handback. Councils, observers, attention packets, collision detection, and additional return states followed as I encountered more edge cases.
Every addition addressed a problem I had seen. The combined system became expensive for agents to operate.
Where V1 Led
V1 established rules that still shape SLP. Work needs an explicit owner. An assignment must name owned and excluded scope. The worker returns evidence with the result. Uncertainty and disagreement are valid outcomes. The person performing the work cannot accept it alone. External effects remain under human authority.
Those rules protected real boundaries. The surrounding workflow kept growing because I exposed too many coordination details as agent operations.
By August 29, V1 included Observers, attention packets, councils, several lane types, dispatch and handback states, collision rules, and recovery procedures. Agents needed much of that vocabulary before they could complete a small assignment.
I started the V2 rewrite to keep the authority boundaries while reducing the public workflow. The next post explains why V2 uses four roles, nine commands, and one work lifecycle.
