@jabworks/condux 0.29.0 → 0.30.0
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.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jabworks/condux",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.30.0",
|
|
4
4
|
"description": "OpenCode plugin for the condux workflow toolkit — bundles the condux skills and injects the specialist agents (coder, explorer, planner, researcher) plus an opt-in plan-review listener.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"publishConfig": {
|
|
@@ -49,6 +49,12 @@ Run through this checklist. Every item must be answered honestly — not optimis
|
|
|
49
49
|
│ No console.log, no debug code, no TODO comments that │
|
|
50
50
|
│ weren't there before, no commented-out blocks. │
|
|
51
51
|
│ │
|
|
52
|
+
│ □ NO WORKAROUNDS │
|
|
53
|
+
│ Did anything here bypass a convention, widen a type, │
|
|
54
|
+
│ disable a rule, or special-case around a design just to │
|
|
55
|
+
│ make it land? Report it — the user decides whether it │
|
|
56
|
+
│ ships. Nothing bypassed → N/A, no commentary. │
|
|
57
|
+
│ │
|
|
52
58
|
│ □ READY FOR FINALIZE │
|
|
53
59
|
│ All the above are yes → call /finalize │
|
|
54
60
|
│ Any are no → fix first, then re-check │
|
|
@@ -100,6 +106,7 @@ a preflight failure like any other.
|
|
|
100
106
|
| "The edge cases are unlikely" | They happen in production. Consider them now. |
|
|
101
107
|
| "The plan steps were mostly done" | Mostly done is not done. |
|
|
102
108
|
| "I only changed one line, nothing could break" | One-line changes cause regressions too. |
|
|
109
|
+
| "It's a small workaround, I'll do it properly later" | Later is a PR nobody opens. Report it; the user chooses. |
|
|
103
110
|
|
|
104
111
|
## Output
|
|
105
112
|
|
|
@@ -112,6 +119,7 @@ a preflight failure like any other.
|
|
|
112
119
|
□ Spec drift ✓ / ✗ / N/A [notes] (N/A = no spec for this task)
|
|
113
120
|
□ No regressions ✓ / ✗ [notes]
|
|
114
121
|
□ Nothing left behind ✓ / ✗ [notes]
|
|
122
|
+
□ No workarounds ✓ / ✗ / N/A [notes] (N/A = nothing bypassed)
|
|
115
123
|
|
|
116
124
|
→ Ready for /finalize [YES / NO — list blockers if NO]
|
|
117
125
|
```
|
package/skills/workflow/SKILL.md
CHANGED
|
@@ -42,6 +42,11 @@ Condux is **lean and proportional** — the opposite of "always run every gate."
|
|
|
42
42
|
6. **House style rides along.** Before the first line of code in any tier, load
|
|
43
43
|
the `coding-directive` skill if it is installed — skip silently when it
|
|
44
44
|
isn't. Codebase mimicry and repo config still win over the directive.
|
|
45
|
+
7. **Two tracks, one of them triggered.** Tactical is the task in front of you.
|
|
46
|
+
Strategic is the environment that produced it — would a narrower type, a
|
|
47
|
+
lint rule, or a written convention have made this task's bug impossible?
|
|
48
|
+
The strategic track is *not* a standing obligation; that would violate rule
|
|
49
|
+
1. It fires on a trigger, and the triggers are in Environment Hardening.
|
|
45
50
|
|
|
46
51
|
## Entry Contract
|
|
47
52
|
|
|
@@ -253,6 +258,38 @@ Scope turns out bigger than the confirmed tier? Stop immediately, report what yo
|
|
|
253
258
|
found ("this touches auth middleware, not just the UI"), re-confirm the tier before
|
|
254
259
|
continuing. Never silently expand scope.
|
|
255
260
|
|
|
261
|
+
## Environment Hardening
|
|
262
|
+
|
|
263
|
+
The strategic track, fired by a trigger rather than run on every task. Two
|
|
264
|
+
triggers, both observed rather than imagined:
|
|
265
|
+
|
|
266
|
+
- **Repeated friction.** The same obstacle cost time twice — twice in this
|
|
267
|
+
task, or once here and once earlier in the session.
|
|
268
|
+
- **A workaround taken.** You bypassed a convention, widened a type, disabled a
|
|
269
|
+
rule, or special-cased around a design to make the change land. `preflight`'s
|
|
270
|
+
no-workarounds box catches the ones you stopped noticing.
|
|
271
|
+
|
|
272
|
+
When one fires, spend a sentence on the cause rather than the symptom. Agents
|
|
273
|
+
succeed in a **pit of success** — an environment where the wrong thing is hard
|
|
274
|
+
to express:
|
|
275
|
+
|
|
276
|
+
| Lever | Looks like |
|
|
277
|
+
|---|---|
|
|
278
|
+
| Constrained surface | a narrower type, a smaller public API, an argument that cannot be passed wrong |
|
|
279
|
+
| Rules that force correctness | a lint rule, a stricter compiler flag, a test that fails on the shape and not just the value |
|
|
280
|
+
| Written convention | a line in `AGENTS.md` / `CLAUDE.md` or the house-style skill, so a reviewer cites it instead of re-deriving it |
|
|
281
|
+
| Data the agent lacks | dev-server or production logs, a test database, browser access to watch the thing actually render |
|
|
282
|
+
|
|
283
|
+
**The output is a sentence to the user, or a backlog item — never a new
|
|
284
|
+
artifact.** Name the hardening and let the user decide. If a backlog skill
|
|
285
|
+
(`record`, or the repo's own convention) is installed and they want it kept,
|
|
286
|
+
file it there. Do not create a file for it, do not add a `.condux/` directory
|
|
287
|
+
for it, and do not implement it inside the current task — that is scope
|
|
288
|
+
expansion, which Escalating Mid-Task already forbids.
|
|
289
|
+
|
|
290
|
+
**Silence is the correct output when neither trigger fired.** A clean SMALL
|
|
291
|
+
task gets no hardening commentary at all.
|
|
292
|
+
|
|
256
293
|
## Red Flags
|
|
257
294
|
|
|
258
295
|
Stop if you catch yourself doing any of these:
|
|
@@ -271,6 +308,7 @@ Stop if you catch yourself doing any of these:
|
|
|
271
308
|
| Auto-running code-review, commits, or agents | They're checkpoint choices; run only when picked |
|
|
272
309
|
| Verifying live without loading `live-verification` | Load it — its `report.md` is the evidence (9 of 11 ad-hoc runs in a mobile eval left none) |
|
|
273
310
|
| Auto-advancing past a checkpoint on MEDIUM/LARGE | The user owns every transition |
|
|
311
|
+
| Absorbing a workaround silently so the change lands | Name it — that's a hardening trigger, and preflight asks for it anyway |
|
|
274
312
|
| Expanding scope past the confirmed tier | Stop, report, re-confirm |
|
|
275
313
|
|
|
276
314
|
## Tips
|