remove 100% reliance on any degree of ward specgen for runtime ops of warded agents #1070

Open
opened 2026-07-10 18:13:33 +00:00 by coilysiren · 2 comments
Owner

The problem

specgen relies on user configured permissions. users can override specgen, and also just... forget it exists. ward has a layer of permissions and workflow management that is distinct from specgen. broken specgen should never break, for example, the engineer's ability to push and merge PRs at all. specgen is for concerns that are load bearing from a end user point of view sure, but note ones that are exclusively load bearing for ward workflow ops

Proposed change

the ward-kdl folder should disappear

Alternatives considered

No response

Before filing

  • I searched existing issues and this is not a duplicate.
  • This stays within ward's scope (the dev-verb gate / agent driver), not a personal-infra or downstream-repo verb.
### The problem specgen relies on user configured permissions. users can override specgen, and also just... forget it exists. ward has a layer of permissions and workflow management that is distinct from specgen. broken specgen should never break, for example, the engineer's ability to push and merge PRs at all. specgen is for concerns that are load bearing from a *end user* point of view sure, but note ones that are exclusively load bearing for *ward workflow ops* ### Proposed change the ward-kdl folder should disappear ### Alternatives considered _No response_ ### Before filing - [x] I searched existing issues and this is not a duplicate. - [x] This stays within ward's scope (the dev-verb gate / agent driver), not a personal-infra or downstream-repo verb.
Author
Owner

this PR is a step in the wrong direction #1068

this PR is a step in the wrong direction https://forgejo.coilysiren.me/coilyco-flight-deck/ward/pulls/1068
Member

Scope refinement (Kai, 2026-07-10): the ward-kdl folder disappears for guardfiles, not for role spec.

  • Guardfiles (permission/surface) are what must stop being load-bearing for ward workflow ops - a broken/absent specgen bundle must never disable an engineer's push/merge. Those move to ward-native (ward#1067). This is the part of 'the ward-kdl folder should disappear' that holds.
  • Role spec and other declarative KDL specs (the agent-roles/roles presets, taglines/capabilities/modes/posture/merge-authority) legitimately live in the KDL spec layer - they are declarative product data, not runtime-ops behavior. They stay. Constraint: the role spec must compose with user configs (the meld - users extend/override, they do not fork it).

Naming reconciliation to fold in: the two role sources have diverged - ward ships .ward/ward-kdl/ward-kdl.roles.kdl (node agent-roles, deprecated ward-kdl prefix) while aos ships .ward/roles.kdl (node roles, no prefix, guardfile-bindings only). Drop the deprecated ward-kdl prefix and unify the canonical node/source so the presets (ward-embedded canonical) and the overlay bindings are cleanly distinguished, not two confusingly-similar files.

**Scope refinement (Kai, 2026-07-10): the ward-kdl folder disappears for *guardfiles*, not for role spec.** - **Guardfiles** (permission/surface) are what must stop being load-bearing for ward workflow ops - a broken/absent specgen bundle must never disable an engineer's push/merge. Those move to ward-native (ward#1067). This is the part of 'the ward-kdl folder should disappear' that holds. - **Role spec and other declarative KDL specs** (the `agent-roles`/`roles` presets, taglines/capabilities/modes/posture/merge-authority) legitimately *live* in the KDL spec layer - they are declarative product data, not runtime-ops behavior. They stay. **Constraint: the role spec must compose with user configs** (the meld - users extend/override, they do not fork it). **Naming reconciliation to fold in:** the two role sources have diverged - ward ships `.ward/ward-kdl/ward-kdl.roles.kdl` (node `agent-roles`, deprecated `ward-kdl` prefix) while aos ships `.ward/roles.kdl` (node `roles`, no prefix, guardfile-bindings only). Drop the deprecated `ward-kdl` prefix and unify the canonical node/source so the presets (ward-embedded canonical) and the overlay bindings are cleanly distinguished, not two confusingly-similar files.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
coilyco-flight-deck/ward#1070
No description provided.