theslopmachine 0.4.0 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/MANUAL.md +3 -3
  2. package/README.md +36 -12
  3. package/RELEASE.md +9 -7
  4. package/assets/agents/developer.md +51 -250
  5. package/assets/agents/slopmachine.md +253 -401
  6. package/assets/skills/beads-operations/SKILL.md +44 -38
  7. package/assets/skills/clarification-gate/SKILL.md +79 -14
  8. package/assets/skills/developer-session-lifecycle/SKILL.md +97 -35
  9. package/assets/skills/{development-guidance-v2 → development-guidance}/SKILL.md +9 -6
  10. package/assets/skills/{evaluation-triage-v2 → evaluation-triage}/SKILL.md +43 -4
  11. package/assets/skills/final-evaluation-orchestration/SKILL.md +44 -40
  12. package/assets/skills/{hardening-gate-v2 → hardening-gate}/SKILL.md +3 -3
  13. package/assets/skills/{integrated-verification-v2 → integrated-verification}/SKILL.md +6 -5
  14. package/assets/skills/{owner-evidence-discipline-v2 → owner-evidence-discipline}/SKILL.md +3 -3
  15. package/assets/skills/planning-gate/SKILL.md +32 -11
  16. package/assets/skills/{planning-guidance-v2 → planning-guidance}/SKILL.md +29 -9
  17. package/assets/skills/{remediation-guidance-v2 → remediation-guidance}/SKILL.md +3 -3
  18. package/assets/skills/{report-output-discipline-v2 → report-output-discipline}/SKILL.md +3 -3
  19. package/assets/skills/retrospective-analysis/SKILL.md +91 -0
  20. package/assets/skills/scaffold-guidance/SKILL.md +81 -0
  21. package/assets/skills/{session-rollover-v2 → session-rollover}/SKILL.md +3 -3
  22. package/assets/skills/submission-packaging/SKILL.md +163 -197
  23. package/assets/skills/verification-gates/SKILL.md +69 -81
  24. package/assets/slopmachine/templates/AGENTS.md +77 -101
  25. package/assets/slopmachine/{workflow-init-v2.js → workflow-init.js} +2 -2
  26. package/package.json +23 -23
  27. package/src/constants.js +12 -21
  28. package/src/init.js +38 -29
  29. package/src/install.js +123 -23
  30. package/assets/agents/developer-v2.md +0 -86
  31. package/assets/agents/slopmachine-v2.md +0 -219
  32. package/assets/skills/beads-operations-v2/SKILL.md +0 -82
  33. package/assets/skills/clarification-gate-v2/SKILL.md +0 -74
  34. package/assets/skills/developer-session-lifecycle-v2/SKILL.md +0 -148
  35. package/assets/skills/final-evaluation-orchestration-v2/SKILL.md +0 -57
  36. package/assets/skills/get-overlays/SKILL.md +0 -228
  37. package/assets/skills/planning-gate-v2/SKILL.md +0 -91
  38. package/assets/skills/scaffold-guidance-v2/SKILL.md +0 -57
  39. package/assets/skills/submission-packaging-v2/SKILL.md +0 -142
  40. package/assets/skills/verification-gates-v2/SKILL.md +0 -102
  41. package/assets/slopmachine/templates/AGENTS-v2.md +0 -55
  42. package/assets/slopmachine/tracker-init.js +0 -104
@@ -1,34 +1,30 @@
1
1
  ---
2
2
  name: beads-operations
3
- description: Tracker workflow mutation rules, state-transition discipline, and direct command reference for repo-cwd blueprint-driven orchestration using beads_rust.
3
+ description: Beads mutation and lifecycle-transition rules for slopmachine.
4
4
  ---
5
5
 
6
- # Tracker Operations
6
+ # Beads Operations
7
7
 
8
- Use this skill whenever you need to inspect, create, update, or transition tracker state.
8
+ Use this skill whenever you mutate Beads state.
9
9
 
10
- ## Usage rules
10
+ ## Transition discipline
11
11
 
12
- - Load this skill before making tracker mutations if you are not already actively operating within the tracked workflow state flow.
13
- - Treat this as the operational source of truth for tracker transitions and command usage.
14
- - Do not improvise state mutations from memory when precise tracker changes matter.
12
+ When a root phase changes:
15
13
 
16
- ## Tracker update discipline
14
+ 1. verify exit conditions from evidence
15
+ 2. add final phase evidence comments
16
+ 3. close the current root phase
17
+ 4. update metadata files to the new phase state
18
+ 5. open the next root phase
19
+ 6. add a `STATE:` transition comment
17
20
 
18
- When phases change, mutate tracker state in this order:
21
+ ## Rules
19
22
 
20
- 1. verify exit conditions from evidence
21
- 2. append final evidence comments for the closing phase
22
- 3. close the current phase only after evidence exists
23
- 4. update `../.ai/metadata.json` to the next workflow state and current phase item id
24
- 5. update `../.ai/metadata.json` and `../metadata.json` fields that changed as part of the transition:
25
- - set `clarification_approved=true` only when clarification is actually approved
26
- - set `awaiting_human=true` only at the two allowed human-stop points: initial clarification approval and final evaluation decision
27
- - increment `remediation_round` only when entering a new remediation cycle after failed manual evaluation
28
- - keep parent-root `../metadata.json` aligned on project facts such as prompt text, project type, session id, and selected stack fields when they become known or change
29
- 6. set the next phase status to `in_progress` or `blocked`
30
- 7. append a `STATE:` transition comment
31
- 8. append a `SESSION:` comment if the developer session was created, resumed, or materially changed
23
+ - enter the next phase before real work for that phase begins
24
+ - do not close multiple root phases in one transition block
25
+ - keep structured comments specific and auditable
26
+ - treat phase-closure failures as real workflow failures to resolve
27
+ - keep Beads and metadata aligned on current phase and active developer session slot when either changes
32
28
 
33
29
  ## Structured comment prefixes
34
30
 
@@ -46,31 +42,41 @@ Use comments with fixed prefixes such as:
46
42
  ## Dependency rules
47
43
 
48
44
  - use explicit dependencies only for real sibling or cross-phase gating
49
- - do not add explicit dependencies from a parent bead to its own child bead
50
- - technical blockers may set tracker items to `blocked`, but they must not create new human-stop points unless the workflow is at the initial clarification approval or final evaluation decision
45
+ - do not add explicit dependencies from a parent Beads item to its own child Beads item
46
+ - technical blockers may set Beads items to `blocked`, but they must not create new human-stop points unless the workflow is at the initial clarification approval or final human decision
51
47
 
52
48
  ## Forbidden workflow-state shortcuts
53
49
 
54
50
  - do not use QMD as the workflow state system
55
- - do not use tracker-local config or ad hoc notes as the primary workflow-state mechanism
51
+ - do not use Beads-local config or ad hoc notes as the primary workflow-state mechanism
56
52
 
57
53
  ## Direct command reference
58
54
 
59
55
  Use these `br` commands directly without needing a help lookup first:
60
56
 
61
- - `br list` -> view current backlog and statuses
62
- - `br ready` -> list actionable unblocked work
63
- - `br blocked` -> inspect blocked work
64
- - `br show <id>` -> inspect one task item in detail
65
- - `br create "Title"` -> create a new task item
66
- - `br update <id> --status <status>` -> change task item status
67
- - `br update <id> --parent <parent-id>` -> reparent a task item when needed
68
- - `br dep add <blocked-id> <blocker-id> --type blocks` -> add a blocking dependency edge
69
- - `br dep add <child-id> <parent-id> --type parent-child` -> represent hierarchy explicitly when needed
70
- - `br dep list <id>` -> inspect dependency relationships
71
- - `br comments add <id> "..."` -> append structured history or evidence
72
- - `br comments <id>` -> inspect task-item comment history
73
- - `br close <id>` -> mark work complete
74
- - `br reopen <id>` -> reopen previously closed work
57
+ - `br list`
58
+ - `br ready`
59
+ - `br blocked`
60
+ - `br show <id>`
61
+ - `br create "Title"`
62
+ - `br update <id> --status <status>`
63
+ - `br update <id> --parent <parent-id>`
64
+ - `br dep add <blocked-id> <blocker-id> --type blocks`
65
+ - `br dep add <child-id> <parent-id> --type parent-child`
66
+ - `br dep list <id>`
67
+ - `br comments add <id> "..."`
68
+ - `br comments <id>`
69
+ - `br close <id>`
70
+ - `br reopen <id>`
75
71
 
76
72
  If you truly need a command outside this core set, use `br -h` or `br <command> -h` only then.
73
+
74
+ ## Useful comment prefixes
75
+
76
+ - `STATE:`
77
+ - `APPROVAL:`
78
+ - `VERIFY:`
79
+ - `ISSUE:`
80
+ - `SESSION:`
81
+ - `HANDOFF:`
82
+ - `ARTIFACT:`
@@ -1,17 +1,26 @@
1
1
  ---
2
2
  name: clarification-gate
3
- description: Clarification decomposition, safe-default locking, and clarification-prompt validation workflow for repo-cwd blueprint-driven projects.
3
+ description: Clarification decomposition, ambiguity handling, safe-default locking, and prompt-faithfulness validation for slopmachine.
4
4
  ---
5
5
 
6
6
  # Clarification Gate
7
7
 
8
- Use this skill only during clarification and understanding work before tracked development begins.
8
+ Use this skill only during `P1 Clarification`.
9
+
10
+ ## Goals
11
+
12
+ - make the scope clear enough for planning to start cleanly
13
+ - resolve or safely lock material ambiguities
14
+ - prepare a strong developer-facing clarification prompt
15
+ - prevent prompt drift or scope narrowing
9
16
 
10
17
  ## Usage rules
11
18
 
12
- - Load this skill during initial clarification and whenever clarification must be revisited before development starts.
13
- - Treat it as internal clarification workflow guidance, not developer-visible text.
14
- - Do not start tracked development until this gate is satisfied and the required approval exists.
19
+ - enter `P1` before the first real clarification draft or validation pass
20
+ - keep clarification work inside `P1`
21
+ - treat this as internal clarification workflow guidance, not developer-visible text
22
+ - do not start planning or developer launch while clarification is still active
23
+ - stop for human approval only after the clarification artifact is ready and validated
15
24
 
16
25
  ## Clarification standard
17
26
 
@@ -23,7 +32,7 @@ Use this skill only during clarification and understanding work before tracked d
23
32
  - prepare a developer-facing clarification prompt in `../.ai/clarification-prompt.md`
24
33
  - keep clarification aligned with the original prompt
25
34
  - do not let clarification reduce, weaken, narrow, or silently reinterpret the prompt
26
- - use clarification to sharpen the build and improve output quality only when that improvement stays fully consistent with the prompt's intent
35
+ - use clarification to sharpen the build and improve output quality only when that improvement stays fully consistent with the prompt intent
27
36
  - do not start tracked development until the human approval step is complete
28
37
 
29
38
  ## Clarification discipline
@@ -36,23 +45,79 @@ Use this skill only during clarification and understanding work before tracked d
36
45
  - never use defaults that drift from the original prompt
37
46
  - do not use quick, loose, or simplifying assumptions that shrink what the prompt asked for
38
47
  - do not guess through material ambiguity
48
+ - do not expand the clarification artifact just to exhaust every minor edge case when the scope is already clear enough to plan correctly
49
+ - once the core scope is understood, prefer a compact clarification record plus explicit safe defaults over a giant exhaustive rewrite
50
+
51
+ ## Required outputs
52
+
53
+ - working clarification record that will become `../docs/questions.md`
54
+ - developer-facing clarification prompt in `../.ai/clarification-prompt.md`
55
+ - explicit list of safe defaults and resolved ambiguities
56
+
57
+ ## `questions.md` contract
58
+
59
+ `../docs/questions.md` is not a general project summary.
60
+
61
+ It exists only for prompt items that needed interpretation because they were unclear, incomplete, or materially ambiguous.
62
+
63
+ Each entry should answer this structure:
64
+
65
+ 1. what was unclear from the original prompt
66
+ 2. how you interpreted it
67
+ 3. what decision or solution you chose for it
68
+ 4. why that choice is prompt-faithful and reasonable
69
+
70
+ Keep the file narrow and explicit.
71
+
72
+ Do not use `questions.md` for:
73
+
74
+ - a full restatement of the entire prompt
75
+ - broad planning notes
76
+ - general project requirements that were already clear
77
+ - implementation details that belong in planning or design docs
78
+
79
+ Preferred entry shape:
80
+
81
+ ```md
82
+ ## Item N: <short ambiguity title>
83
+
84
+ ### What was unclear
85
+ <the exact ambiguity or missing detail>
86
+
87
+ ### Interpretation
88
+ <how it was interpreted>
89
+
90
+ ### Decision
91
+ <the chosen resolution or safe default>
92
+
93
+ ### Why this is reasonable
94
+ <brief justification tied to prompt faithfulness>
95
+ ```
96
+
97
+ If nothing material was unclear, keep `questions.md` minimal rather than inventing content.
39
98
 
40
99
  ## Clarification-prompt validation loop
41
100
 
42
- - compare the original prompt and the prepared clarification prompt using a fresh ephemeral `General` session, never the developer session
43
- - build one self-contained validation prompt block for that `General` session every time
44
- - include the full original prompt text, the full current questions or clarification record, and the full current `../.ai/clarification-prompt.md` in that block
101
+ - compare the original prompt and the prepared clarification prompt using one dedicated `General` validation session, never the developer session
102
+ - do not create a new validation session for every retry unless the session became unusable or a fundamental misunderstanding requires a clean restart
103
+ - on the first validation pass, build one self-contained validation prompt block for that `General` session
104
+ - on that first pass, include the full original prompt text, the full current questions or clarification record, and the full current `../.ai/clarification-prompt.md`
45
105
  - do not use placeholders such as `same as previous`, `from context`, `see above`, or `latest artifact`
46
106
  - ask that `General` session whether the clarification prompt deviates from, weakens, narrows, or violates the original prompt in any way
47
107
  - require it to judge whether the clarification prompt is a genuine improvement in execution quality while remaining faithful to the original intent
48
- - if mismatches or prompt drift are found, revise the questions record and clarification prompt, then build a newly composed full validation block and run the check again
49
- - do not require perfection, but do require that the original prompt is not being violated
108
+ - if the validator suggests real fixes, patch the existing questions record and clarification prompt directly; do not restart the clarification phase from scratch unless the validator found a fundamental scope misunderstanding
109
+ - treat validator output as a correction list, not as a reason to regenerate giant clarification blocks repeatedly
110
+ - when rerunning validation in the same validator session, send only the improved clarification payload and the concrete fixes you made; do not resend the original prompt block if the session already has that context
111
+ - rerun validation only after applying the concrete fixes that matter
112
+ - keep the validation loop bounded and intentional; prefer one strong pass plus a small number of revision cycles over repeated loose churn
113
+ - once prompt-faithfulness is satisfied and the remaining notes are minor or cosmetic, stop iterating and proceed
50
114
  - only treat the clarification prompt as approved for developer use after this validation loop passes and your own review agrees
51
115
  - requesting human approval before this validation loop passes is illegal
52
116
 
53
117
  ## Exit conditions
54
118
 
55
- - accepted questions/clarification record exists and will later become `../docs/questions.md`
56
- - approved `../.ai/clarification-prompt.md` exists
119
+ - the owner is confident the scope is understood clearly enough to enter planning
120
+ - the clarification prompt is strong enough for the developer to start from the right understanding
121
+ - material ambiguities are resolved or safely locked and documented
57
122
  - prompt drift has been checked and rejected
58
- - the required human approval is present
123
+ - human approval exists
@@ -1,28 +1,40 @@
1
1
  ---
2
2
  name: developer-session-lifecycle
3
- description: Startup, primary developer-session persistence, recovery, and initial project structure rules for repo-cwd tracked development.
3
+ description: Startup, resume detection, metadata consistency, and developer-session recovery rules for slopmachine.
4
4
  ---
5
5
 
6
6
  # Developer Session Lifecycle
7
7
 
8
- Use this skill during startup, tracked developer-session creation, and recovery.
8
+ Use this skill during `P0 Intake and Setup` and whenever startup or recovery state is uncertain.
9
+
10
+ ## Purpose
11
+
12
+ - detect whether the run is new or resumed
13
+ - initialize or recover workflow metadata consistently
14
+ - initialize the planned bounded developer-session slots
15
+ - recover the current active developer session when one already exists
9
16
 
10
17
  ## Usage rules
11
18
 
12
- - Load this skill before starting the main developer session.
13
- - Load it again during any recovery or session-consistency check.
14
- - Treat it as internal orchestration guidance, not developer-visible text.
15
- - outside the initial clarification approval stop, do not use this skill to create extra pause points; startup should continue directly into development bootup once approval exists
19
+ - keep startup and recovery in one skill; both begin from the same state inspection problem
20
+ - treat this as internal orchestration guidance, not developer-visible text
21
+ - do not launch the developer during `P0` or `P1`
22
+ - do not use this skill to create extra approval stops beyond the two allowed human gates
23
+
24
+ ## State inspection sequence
25
+
26
+ Inspect:
27
+
28
+ - Beads root state and current phase
29
+ - `../.ai/metadata.json`
30
+ - `../metadata.json`
31
+ - existing session comments or recorded session ids
16
32
 
17
- ## Main developer session
33
+ Decide whether the run is:
18
34
 
19
- - use the current working directory as the live codebase and start the fresh developer session in it
20
- - ensure the parent project root has the required supporting structure, especially `../sessions/`
21
- - record the developer session id immediately in the tracker and `.ai/metadata.json`
22
- - persist the developer session id in more than one durable place
23
- - reuse that same session throughout development and remediation whenever possible
24
- - if the developer session crashes, resume it and continue the same work loop
25
- - if the owner process crashes, recovery happens externally; when restarted, recover from state and continue
35
+ - a fresh startup
36
+ - a resumed run with consistent state
37
+ - a run needing consistency repair before it can continue
26
38
 
27
39
  ## Startup contract
28
40
 
@@ -42,15 +54,38 @@ Optional startup inputs may include:
42
54
  1. receive the prompt and stack context
43
55
  2. create `../.ai/metadata.json` for internal workflow state
44
56
  3. initialize parent-root `../metadata.json` with the required schema and store the full prompt text in `prompt`
45
- 4. initialize root workflow state and top-level phase tracker items
57
+ 4. initialize root workflow state and top-level phase Beads items
46
58
  5. complete clarification using the clarification skill
47
59
  6. wait only for the initial clarification approval before development starts
48
60
  7. ensure the parent project root has the required working structure, especially `../sessions/` and `../docs/`
49
- 8. start the main developer session
50
- 9. send `Let's plan this project: <original-prompt>` as the first message in that session
51
- 10. wait for the developer's first exchange
52
- 11. send the approved clarification prompt as the next guidance message
53
- 12. continue orchestration from there
61
+ 8. initialize the bounded developer-session slots
62
+ 9. start the build developer session only after `P2` is ready to begin
63
+ 10. send this exact first planning opener as the first message in that session: `lets plan this <original-prompt>`
64
+ 11. wait for the developer's first exchange
65
+ 12. send the approved clarification prompt as the second owner message in that same session
66
+ 13. only after that second message, continue with the normal planning conversation
67
+
68
+ ## First developer-session handshake
69
+
70
+ The first bounded developer session must begin in this exact order:
71
+
72
+ 1. owner starts the build developer session
73
+ 2. owner sends: `lets plan this <original-prompt>`
74
+ 3. developer responds
75
+ 4. owner sends the approved clarification prompt
76
+ 5. planning proceeds from there
77
+
78
+ Do not skip the initial planning opener.
79
+ Do not send the clarification prompt first.
80
+ Do not merge those two messages into one.
81
+
82
+ ## Required startup outputs
83
+
84
+ - root workflow state exists
85
+ - `../.ai/metadata.json` exists
86
+ - `../metadata.json` exists
87
+ - planned developer session slots are initialized
88
+ - required parent-root directories exist
54
89
 
55
90
  ## Metadata and workflow files
56
91
 
@@ -59,16 +94,34 @@ Optional startup inputs may include:
59
94
  - the project artifact metadata file is `../metadata.json`
60
95
  - do not use `../metadata.json` as internal workflow scratch state
61
96
 
62
- Required internal workflow fields in `../.ai/metadata.json`:
97
+ ## Suggested metadata fields
63
98
 
64
- - `workflow_state`
65
- - `current_phase_item`
66
- - `session_id`
67
- - `clarification_approved`
99
+ Track at least:
100
+
101
+ - `current_phase`
68
102
  - `awaiting_human`
103
+ - `clarification_approved`
69
104
  - `remediation_round`
105
+ - `clarification_validator_session_id`
106
+ - `evaluation_pass`
107
+ - `backend_evaluation_session_id`
108
+ - `frontend_evaluation_session_id`
109
+ - `last_evaluation_session_id`
110
+ - `passed_evaluation_tracks`
111
+ - `developer_sessions`
112
+ - `active_developer_session_index`
113
+
114
+ Each planned developer session record should include enough to recover it later, such as:
115
+
116
+ - `index`
117
+ - `label`
118
+ - `phase_group`
119
+ - `session_id`
120
+ - `status`
121
+ - `handoff_in`
122
+ - `handoff_out`
70
123
 
71
- Required project metadata fields in `../metadata.json`:
124
+ Required project metadata fields in `../metadata.json` when relevant:
72
125
 
73
126
  - `prompt`
74
127
  - `project_type`
@@ -83,24 +136,33 @@ Required project metadata fields in `../metadata.json`:
83
136
  - fill known values immediately and keep the file current as the project becomes clearer
84
137
  - prefer explicit values; use `null` only when a field is genuinely unknown or not applicable
85
138
 
139
+ ## Bounded session model
140
+
141
+ Track up to three planned developer sessions:
142
+
143
+ 1. build
144
+ 2. stabilization
145
+ 3. remediation
146
+
147
+ Later session slots may remain unused if the workflow never needs them.
148
+
86
149
  ## Initial structure rule
87
150
 
88
151
  - parent-root `../docs/` is the owner-maintained external documentation directory
89
- - do not treat repo-local `docs/` as the active documentation location in `v3`
90
152
  - parent-root `../sessions/` is the session artifact directory for exported conversation traces
153
+ - do not treat repo-local `docs/` as the active external documentation location
91
154
 
92
155
  ## Recovery rule
93
156
 
94
- - orchestrator restart is handled externally
95
- - developer-session restart is your responsibility
96
- - on recovery, read `../.ai/metadata.json`, `../metadata.json`, current phase tracker item, latest `SESSION:` comment, latest unresolved `ISSUE:` comments, and any persistent session record before continuing
97
- - treat resume as deterministic state recovery, not guesswork
157
+ - if session records disagree, stop and resolve the inconsistency before continuing
158
+ - if the current phase already has an active developer session, recover that session instead of silently creating a new one
159
+ - treat resume as deterministic recovery, not guesswork
160
+ - on recovery, read `../.ai/metadata.json`, `../metadata.json`, current phase Beads item, latest `SESSION:` comment, latest unresolved `ISSUE:` comments, and any persistent session record before continuing
98
161
 
99
162
  ## Session persistence rule
100
163
 
101
- - store the main developer session id in the root tracker item comments using `SESSION:`
164
+ - store the active developer session id in Beads comments using `SESSION:`
102
165
  - mirror it in `../.ai/metadata.json`
103
- - mirror it in parent-root `../metadata.json` as `session_id`
104
- - once created, treat that session id as locked unless an explicit reset policy is introduced later
166
+ - mirror the active session id in parent-root `../metadata.json` as `session_id`
105
167
  - if these records disagree, stop and resolve the inconsistency before continuing
106
- - do not silently create a replacement main developer session if the existing one can still be resumed
168
+ - do not silently create a replacement developer session if the intended existing one can still be resumed
@@ -1,9 +1,9 @@
1
1
  ---
2
- name: development-guidance-v2
3
- description: Developer-facing slice execution and local verification guidance for slopmachine-v2.
2
+ name: development-guidance
3
+ description: Developer-facing slice execution and local verification guidance for slopmachine.
4
4
  ---
5
5
 
6
- # Development Guidance v2
6
+ # Development Guidance
7
7
 
8
8
  Use this skill during `P4 Development` before prompting the developer.
9
9
 
@@ -36,7 +36,7 @@ Use this skill during `P4 Development` before prompting the developer.
36
36
  - do not leave computed-but-unrendered or partially surfaced requirement behavior in place
37
37
  - do not treat a module as complete when a meaningful user-facing, release-facing, production-path, or build verification is known to be failing unless the owner explicitly scopes that check out
38
38
  - use the `frontend-design` skill for frontend component or page work
39
- - use the `frontend-design` skill during frontend/UI verification when reviewing Playwright screenshots and tightening the interface
39
+ - use the `frontend-design` skill during web or desktop UI verification when reviewing screenshots and tightening the interface
40
40
  - do not hardcode secrets or persist local sensitive values in the repo while implementing
41
41
  - explain behavior changes clearly enough that the documentation discipline can be satisfied accurately
42
42
  - verify the module against its planned behavior before trying to move on
@@ -45,11 +45,14 @@ Use this skill during `P4 Development` before prompting the developer.
45
45
  ## Verification model
46
46
 
47
47
  - use targeted local verification by default
48
- - use local Playwright on affected flows when UI is material
49
- - avoid broad Docker/full-suite commands during ordinary slice work
48
+ - use the selected stack's local UI/E2E tool on affected flows when UI is material
49
+ - avoid broad project-standard gate commands during ordinary slice work
50
50
  - prefer fast local language-native or framework-native test commands for the changed area during normal iteration
51
51
  - set up and use the local test environment inside the current working directory so normal verification does not depend on hidden global tooling assumptions
52
52
  - if the local toolchain is missing, try to install or enable it before falling back to the broad gate path
53
+ - for web UI projects, default local UI/E2E verification to Playwright when that stack is in use
54
+ - for mobile projects, default local UI testing to the selected mobile test stack and use a platform-appropriate mobile UI/E2E tool when device-flow proof matters
55
+ - for desktop projects, default local UI verification to Playwright's Electron support or another platform-appropriate desktop UI/E2E tool when window-flow proof matters
53
56
  - when the slice materially changes frontend code, frontend tooling, or release-facing build behavior, include production build health in meaningful local verification when practical
54
57
 
55
58
  ## Quality rules
@@ -1,9 +1,9 @@
1
1
  ---
2
- name: evaluation-triage-v2
3
- description: Owner-side evaluation report triage rules for slopmachine-v2.
2
+ name: evaluation-triage
3
+ description: Owner-side evaluation report triage rules for slopmachine.
4
4
  ---
5
5
 
6
- # Evaluation Triage v2
6
+ # Evaluation Triage
7
7
 
8
8
  Use this skill during `P7 Evaluation and Triage` after evaluation reports exist.
9
9
 
@@ -15,15 +15,54 @@ Use this skill during `P7 Evaluation and Triage` after evaluation reports exist.
15
15
  - do not enter remediation just because a report found something; enter it only when the accepted findings justify it
16
16
  - if no remediation is needed, move directly to the final human decision
17
17
 
18
+ ## Non-negotiable evaluation buckets
19
+
20
+ These areas are hard gates and should not be passed with known meaningful failures:
21
+
22
+ 1. prompt compliance
23
+ 2. requirement fulfillment / delivery completeness
24
+ 3. security-critical flaws
25
+
26
+ If evaluation finds a real issue in one of those buckets, the default outcome is remediation, not leniency.
27
+
28
+ Do not wave through:
29
+
30
+ - prompt drift or meaningful requirement mismatch
31
+ - missing core flows or partial delivery of prompt-critical functionality
32
+ - real security defects involving auth, authorization, ownership, isolation, exposure, or secret handling
33
+
34
+ ## Leniency buckets
35
+
36
+ These areas may pass with minor residual issues when the product is still clearly acceptable overall:
37
+
38
+ 1. testing cases / test sufficiency
39
+ 2. engineering architecture / engineering quality
40
+ 3. aesthetics
41
+
42
+ Leniency is allowed only when the issue is:
43
+
44
+ - minor in impact
45
+ - not hiding a likely blocker in another bucket
46
+ - not undermining overall confidence in the delivered product
47
+
48
+ High-severity findings in these leniency buckets may still be passed when they are not materially relevant to actual acceptance readiness, but that should be a deliberate exception backed by direct evidence.
49
+
50
+ If the hard gates pass cleanly, the leniency buckets should usually not force remediation unless the issue is a true `Blocker` or a materially relevant `High` finding.
51
+
18
52
  ## Triage rules
19
53
 
20
54
  - read both reports and merge the findings into one explicit triage set before deciding what happens next
21
55
  - use the evaluator priority ordering directly when triaging findings unless stronger direct evidence says otherwise
22
- - any finding marked `Blocker` or `High` should normally be returned for remediation
56
+ - any finding in the non-negotiable buckets should normally be returned for remediation if it is real
57
+ - findings marked `Blocker` should normally be returned for remediation
58
+ - findings marked `High` should normally be returned for remediation unless they fall in a leniency bucket and your direct evidence shows they are not materially relevant to acceptance
23
59
  - findings marked `Medium` may be passed in limited cases, but should usually be fixed when they materially improve confidence, correctness, or acceptance readiness
24
60
  - findings marked `Low` may be passed without remediation
25
61
  - do not treat complaints about test coverage depth, unverifiable tests, or evaluator inability to confirm a test path as automatic blockers by themselves
26
62
  - if your own direct evidence shows the tests run and the coverage is acceptable for qualification, defend the project and pass those findings instead of automatically remediating
63
+ - minor engineering-architecture quality issues may pass if the system is still structurally credible and maintainable overall
64
+ - minor aesthetics issues may pass if the UI is still clearly usable and credible for the actual use case
65
+ - if prompt compliance, requirement fulfillment, and security all pass, testing/engineering/aesthetics findings should generally be treated more leniently unless they are blocking or materially high-risk
27
66
  - if a report says it could not verify some behavior because of environment limits or avoidable verification setup issues, first decide whether you can remove that constraint and rerun the evaluation in a cleaner state
28
67
  - if the evaluator could not verify something but your own verified evidence already shows the behavior is acceptable, do not treat that as an automatic remediation trigger
29
68
  - challenge weak, random, or overreaching findings using your stronger project context and direct codebase knowledge