@azure-id/orc 1.9.1 โ 2.0.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.
- package/CHANGELOG.md +390 -0
- package/README-id.md +20 -36
- package/README.md +24 -34
- package/bin/build-agents.js +206 -109
- package/bin/cli.js +760 -62
- package/bin/gotcha-import.js +1081 -0
- package/bin/gotcha.js +1286 -0
- package/bin/graph-query.js +1 -1
- package/bin/graph.js +717 -717
- package/bin/habit.js +1453 -0
- package/bin/mockrun-catalog.js +281 -276
- package/bin/onboarding-content.js +4 -4
- package/bin/pricing.json +207 -200
- package/bin/run-undo.js +398 -0
- package/bin/trace-write.js +657 -0
- package/bin/verify-contracts.js +527 -81
- package/bin/verify-package.js +58 -11
- package/bin/webui/api.js +26 -0
- package/bin/webui/app.html +239 -232
- package/bin/webui/css/00-tokens.css +110 -92
- package/bin/webui/css/04-motion.css +249 -152
- package/bin/webui/css/06-responsive.css +203 -178
- package/bin/webui/css/panels/behaviour.css +205 -0
- package/bin/webui/css/panels/knowledge.css +563 -116
- package/bin/webui/fixtures/behaviour.js +532 -0
- package/bin/webui/fixtures/extra.js +2036 -2036
- package/bin/webui/fixtures/hookui.js +5 -5
- package/bin/webui/fixtures/index.js +34 -0
- package/bin/webui/fixtures/knowledge.js +7 -1
- package/bin/webui/fixtures/settings.js +305 -305
- package/bin/webui/fixtures/stats.js +16 -0
- package/bin/webui/i18n/en/behaviour.json +143 -0
- package/bin/webui/i18n/en/knowledge.json +117 -2
- package/bin/webui/i18n/en/nav.json +25 -24
- package/bin/webui/i18n/en/tour.json +37 -35
- package/bin/webui/i18n/id/behaviour.json +143 -0
- package/bin/webui/i18n/id/knowledge.json +117 -2
- package/bin/webui/i18n/id/nav.json +25 -24
- package/bin/webui/i18n/id/tour.json +37 -35
- package/bin/webui/js/01-i18n.js +155 -154
- package/bin/webui/js/90-tour.js +498 -494
- package/bin/webui/js/91-shortcuts.js +126 -126
- package/bin/webui/js/99-boot.js +121 -118
- package/bin/webui/js/panels/behaviour.js +1022 -0
- package/bin/webui/js/panels/knowledge.js +552 -7
- package/bin/webui/js/panels/overview.js +13 -4
- package/mock-run/INDEX.md +109 -107
- package/mock-run/context-combiner.md +100 -100
- package/mock-run/gotcha-import.md +118 -0
- package/mock-run/habits.md +129 -0
- package/mock-run/orc-budget.md +534 -534
- package/mock-run/orc-challenge-council.md +262 -262
- package/mock-run/orc-quick.md +6 -1
- package/mock-run/orc-ultra.md +103 -103
- package/package.json +1 -1
- package/templates/agents/MODEL-MAPPING.md +49 -49
- package/templates/agents/orc-advisor-opus-5-xhigh.md +50 -56
- package/templates/agents/orc-analyze-mini-opus-5-med.md +55 -60
- package/templates/agents/orc-analyze-mini-sonnet-5-high.md +55 -58
- package/templates/agents/orc-challenge-advisor-opus-5-med.md +75 -75
- package/templates/agents/orc-challenge-contrarian-opus-5-high.md +110 -110
- package/templates/agents/orc-challenge-executor-opus-5-med.md +114 -114
- package/templates/agents/orc-challenge-expansionist-opus-5-med.md +112 -112
- package/templates/agents/orc-challenge-judge-opus-5-high.md +132 -132
- package/templates/agents/orc-challenge-outsider-opus-5-low.md +109 -109
- package/templates/agents/orc-challenge-principles-opus-5-high.md +109 -109
- package/templates/agents/orc-challenge-reader-opus-5-low.md +90 -90
- package/templates/agents/orc-claude-writer-opus-4-8-high.md +48 -53
- package/templates/agents/orc-claude-writer-opus-5-med.md +48 -55
- package/templates/agents/orc-context-combiner-opus-5-high.md +78 -88
- package/templates/agents/orc-doc-checker-opus-5-low.md +108 -108
- package/templates/agents/orc-doc-writer-opus-5-med.md +134 -134
- package/templates/agents/orc-executor-haiku-4-5.md +14 -6
- package/templates/agents/orc-executor-opus-4-7-high.md +14 -6
- package/templates/agents/orc-executor-opus-4-7-med.md +14 -6
- package/templates/agents/orc-executor-opus-4-8-high.md +14 -6
- package/templates/agents/orc-executor-opus-5-high.md +15 -7
- package/templates/agents/orc-executor-opus-5-low.md +15 -7
- package/templates/agents/orc-executor-opus-5-med.md +15 -7
- package/templates/agents/orc-executor-sonnet-4-6-high.md +14 -6
- package/templates/agents/orc-executor-sonnet-4-6-med.md +14 -6
- package/templates/agents/orc-executor-sonnet-5-high.md +14 -6
- package/templates/agents/orc-graph-noter-sonnet-4-6-med.md +1 -10
- package/templates/agents/orc-judge-opus-5-xhigh.md +81 -85
- package/templates/agents/orc-learn-writer-opus-5-low.md +67 -73
- package/templates/agents/orc-pattern-codifier-opus-5-med.md +58 -65
- package/templates/agents/orc-pattern-codifier-sonnet-5-high.md +58 -63
- package/templates/agents/orc-planner-mini-opus-5-med.md +4 -7
- package/templates/agents/orc-planner-mini-sonnet-5-high.md +2 -3
- package/templates/agents/orc-planner-opus-5-med.md +157 -160
- package/templates/agents/orc-recon-opus-5-low.md +3 -10
- package/templates/agents/orc-recon-sonnet-4-6-med.md +1 -8
- package/templates/agents/orc-retro-opus-5-med.md +8 -10
- package/templates/agents/orc-retro-sonnet-5-high.md +6 -7
- package/templates/agents/orc-reviewer-opus-5-med.md +96 -60
- package/templates/agents/orc-scout-opus-5-low.md +35 -40
- package/templates/agents/orc-scout-sonnet-4-6-high.md +35 -39
- package/templates/agents/orc-system-analyst-opus-5-high.md +115 -120
- package/templates/agents/orc-test-author-opus-5-med.md +70 -71
- package/templates/agents/orc-test-designer-opus-5-high.md +158 -158
- package/templates/agents/orc-test-interpreter-opus-5-low.md +130 -130
- package/templates/agents/orc-trace-writer-haiku-4-5.md +3 -7
- package/templates/agents/orc-verifier-opus-5-med.md +77 -69
- package/templates/agents/orc-wiki-scanner-opus-4-8-high.md +74 -79
- package/templates/agents/orc-wiki-scanner-opus-5-med.md +74 -81
- package/templates/agents/orc-wiki-scanner-sonnet-5-high.md +97 -106
- package/templates/commands/orc-analyze.md +13 -21
- package/templates/commands/orc-fast.md +10 -15
- package/templates/commands/orc-poly.md +12 -21
- package/templates/commands/orc-pr-driver.md +11 -30
- package/templates/commands/orc-pr-setup.md +10 -31
- package/templates/commands/orc-route.md +11 -41
- package/templates/commands/orc-test.md +5 -60
- package/templates/commands/orc-ultra.md +17 -17
- package/templates/commands/orc-verify.md +11 -11
- package/templates/hooks/README.md +36 -2
- package/templates/hooks/orc-effort-guard.js +178 -178
- package/templates/hooks/orc-session-hook.js +264 -0
- package/templates/hooks/orc-statusline.js +9 -7
- package/templates/skills/_shared/README.md +9 -0
- package/templates/skills/_shared/code-graph.md +48 -56
- package/templates/skills/_shared/config-precedence.md +200 -198
- package/templates/skills/_shared/extra-dispatch.md +1331 -1346
- package/templates/skills/_shared/gotchas.md +228 -177
- package/templates/skills/_shared/habits.md +101 -0
- package/templates/skills/_shared/lane-contract.md +84 -0
- package/templates/skills/_shared/opus5-only.md +8 -8
- package/templates/skills/_shared/phases/README.md +142 -83
- package/templates/skills/_shared/phases/analyst-gates.md +125 -136
- package/templates/skills/_shared/phases/execution.md +8 -14
- package/templates/skills/_shared/phases/house-rules.md +27 -32
- package/templates/skills/_shared/phases/intake.md +127 -133
- package/templates/skills/_shared/phases/mock-example.md +46 -56
- package/templates/skills/_shared/phases/plan-handoff.md +91 -97
- package/templates/skills/_shared/phases/planning.md +7 -17
- package/templates/skills/_shared/phases/preflight.md +19 -42
- package/templates/skills/_shared/phases/review.md +23 -27
- package/templates/skills/_shared/phases/rules.md +18 -42
- package/templates/skills/_shared/phases/scoring.md +55 -65
- package/templates/skills/_shared/phases/security-checklist.md +46 -50
- package/templates/skills/_shared/phases/security.md +45 -55
- package/templates/skills/_shared/phases/ship.md +6 -15
- package/templates/skills/_shared/phases/stop-resume.md +2 -5
- package/templates/skills/_shared/phases/summary.md +73 -48
- package/templates/skills/_shared/phases/testgen.md +41 -51
- package/templates/skills/_shared/phases/trace-verbs.md +433 -0
- package/templates/skills/_shared/phases/trace.md +136 -367
- package/templates/skills/_shared/phases/verify.md +62 -70
- package/templates/skills/_shared/phases/wave-grouping.md +128 -133
- package/templates/skills/_shared/phases/wiki-consult.md +10 -6
- package/templates/skills/_shared/read-ladder.md +2 -55
- package/templates/skills/_shared/return-validation.md +17 -70
- package/templates/skills/_shared/review-slice.md +79 -0
- package/templates/skills/_shared/smoke-gate.md +46 -28
- package/templates/skills/context-combiner/SKILL.md +16 -45
- package/templates/skills/context-combiner/schemas/combined-report.md +78 -78
- package/templates/skills/orc/README.md +2 -2
- package/templates/skills/orc/SKILL.md +41 -69
- package/templates/skills/orc/config.md +9 -9
- package/templates/skills/orc/examples/full-run-mock.md +73 -73
- package/templates/skills/orc/references/effort-and-mode.md +222 -222
- package/templates/skills/orc/references/pattern-gate.md +89 -89
- package/templates/skills/orc/references/phases/intake.md +41 -47
- package/templates/skills/orc/references/phases/integration.md +13 -19
- package/templates/skills/orc/references/preflight-report.md +10 -11
- package/templates/skills/orc/references/ultra-mode.md +11 -9
- package/templates/skills/orc/subskills/orc-execution/SKILL.md +27 -73
- package/templates/skills/orc/subskills/orc-execution/core.md +12 -99
- package/templates/skills/orc/subskills/orc-execution/subagent.md +14 -13
- package/templates/skills/orc/subskills/orc-planner/SKILL.md +2 -2
- package/templates/skills/orc/subskills/orc-planner-mini/SKILL.md +121 -121
- package/templates/skills/orc/subskills/orc-review-verify/SKILL.md +35 -76
- package/templates/skills/orc/subskills/orc-review-verify/core.md +52 -135
- package/templates/skills/orc/subskills/orc-review-verify/subagent.md +7 -7
- package/templates/skills/orc/subskills/orc-testgen/SKILL.md +34 -45
- package/templates/skills/orc/subskills/orc-testgen/core.md +20 -59
- package/templates/skills/orc/subskills/orc-testgen/subagent.md +7 -7
- package/templates/skills/orc-advisor/SKILL.md +56 -60
- package/templates/skills/orc-analyze/SKILL.md +32 -68
- package/templates/skills/orc-analyze/examples/analyze-mock.md +42 -42
- package/templates/skills/orc-analyze/schemas/report-audit.md +84 -83
- package/templates/skills/orc-analyze/schemas/report-prose.md +64 -63
- package/templates/skills/orc-analyze/schemas/report-requirement.md +78 -78
- package/templates/skills/orc-analyze-mini/SKILL.md +35 -70
- package/templates/skills/orc-challenge/README.md +142 -142
- package/templates/skills/orc-challenge/examples/council-full-roster.md +273 -273
- package/templates/skills/orc-challenge/references/council.md +315 -315
- package/templates/skills/orc-challenge/references/intake.md +171 -171
- package/templates/skills/orc-claude/SKILL.md +14 -14
- package/templates/skills/orc-diy/README.md +174 -143
- package/templates/skills/orc-diy/SKILL.md +23 -74
- package/templates/skills/orc-diy/references/blocks/pattern.md +18 -18
- package/templates/skills/orc-diy/references/flow-schema.md +1 -1
- package/templates/skills/orc-doc/README.md +229 -229
- package/templates/skills/orc-doc/examples/orc-doc-prd-run.md +325 -325
- package/templates/skills/orc-doc/references/chunking.md +527 -527
- package/templates/skills/orc-fast/SKILL.md +45 -73
- package/templates/skills/orc-judge/SKILL.md +77 -82
- package/templates/skills/orc-learn/SKILL.md +14 -14
- package/templates/skills/orc-learn/examples/learn-run-mock.md +61 -61
- package/templates/skills/orc-mini/SKILL.md +65 -113
- package/templates/skills/orc-pattern/SKILL.md +27 -48
- package/templates/skills/orc-poly/SKILL.md +32 -61
- package/templates/skills/orc-pr-driver/SKILL.md +25 -51
- package/templates/skills/orc-pr-driver/references/green-gate.md +113 -105
- package/templates/skills/orc-pr-setup/SKILL.md +20 -45
- package/templates/skills/orc-quick/README.md +43 -2
- package/templates/skills/orc-quick/SKILL.md +76 -107
- package/templates/skills/orc-quick/references/dispatch-gate.md +16 -5
- package/templates/skills/orc-quick/references/gh-mode.md +48 -1
- package/templates/skills/orc-quick/references/look.md +3 -1
- package/templates/skills/orc-retro/SKILL.md +19 -18
- package/templates/skills/orc-retro/examples/retro-mock.md +1 -1
- package/templates/skills/orc-route/SKILL.md +25 -45
- package/templates/skills/orc-test/SKILL.md +16 -37
- package/templates/skills/orc-verify/SKILL.md +21 -39
- package/templates/skills/orc-verify/examples/verify-mock.md +33 -33
- package/templates/skills/orc-wait/SKILL.md +156 -163
- package/templates/skills/orc-wiki/references/extra.md +1 -1
- package/templates/skills/orc-wiki/references/phases/phase-0.md +1 -6
- package/templates/skills/orc-wiki/references/phases/phase-1.md +1 -6
- package/templates/skills/orc-wiki/references/phases/phase-2.md +1 -6
- package/templates/skills/orc-wiki/references/phases/phase-3.md +1 -6
- package/templates/skills/orc-wiki/references/phases/phase-3c.md +1 -6
|
@@ -25,17 +25,17 @@ const red = (s) => E + "[31m" + s + R;
|
|
|
25
25
|
// The rendered bar, in its four forms. Line 3 is deliberately the shortest โ
|
|
26
26
|
// the board's third line usually is.
|
|
27
27
|
const previewText =
|
|
28
|
-
amber("๐") + " " + dim("ORC ") + "1.3.0 ยท Opus 5/high ยท " + dim("context ") + green("38%") + " ยท " + amber("โโโโโโโโโโ") + "\n" +
|
|
28
|
+
amber("๐") + " " + dim("ORC ") + "1.3.0 ยท Opus 5.5/high ยท " + dim("context ") + green("38%") + " ยท " + amber("โโโโโโโโโโ") + "\n" +
|
|
29
29
|
" โฐ " + dim("status ") + "quick ยท Q3 DO ยท " + dim("agents ") + " 7 ยท " + dim("Dur ") + " 48m ยท main\n" +
|
|
30
30
|
" " + dim("cache ") + "โ" + " " + green("โโโโโโโโโโ") + " ยท " + dim("MTok ") + "412K ยท " + red("โ");
|
|
31
31
|
|
|
32
32
|
const previewNoColor =
|
|
33
|
-
"๐ ORC 1.3.0 ยท Opus 5/high ยท context 38% ยท โโโโโโโโโโ\n" +
|
|
33
|
+
"๐ ORC 1.3.0 ยท Opus 5.5/high ยท context 38% ยท โโโโโโโโโโ\n" +
|
|
34
34
|
" โฐ status quick ยท Q3 DO ยท agents 7 ยท Dur 48m ยท main\n" +
|
|
35
35
|
" cache โ โโโโโโโโโโ ยท MTok 412K ยท โ";
|
|
36
36
|
|
|
37
37
|
const previewAscii =
|
|
38
|
-
"++ ORC 1.3.0 - Opus 5/high - context 38% - ######....\n" +
|
|
38
|
+
"++ ORC 1.3.0 - Opus 5.5/high - context 38% - ######....\n" +
|
|
39
39
|
" = status quick - Q3 DO - agents 7 - Dur 48m - main\n" +
|
|
40
40
|
" cache o #######|.. - MTok 412K - -";
|
|
41
41
|
|
|
@@ -288,7 +288,7 @@ const presets = {
|
|
|
288
288
|
ok: true,
|
|
289
289
|
presets: [
|
|
290
290
|
{ name: "orc-default", summary: "Today's two lines, exactly. The byte-identical baseline.", active: false, preview: previewNoColor.split("\n").slice(0, 2).join("\n") },
|
|
291
|
-
{ name: "minimal", summary: "One line, four slots, the dim theme. The support answer for a busy terminal.", active: false, preview: dim("๐ ORC 1.3.0 ยท Opus 5/high ยท ") + amber("โโโโ ") + dim(" ยท main") },
|
|
291
|
+
{ name: "minimal", summary: "One line, four slots, the dim theme. The support answer for a busy terminal.", active: false, preview: dim("๐ ORC 1.3.0 ยท Opus 5.5/high ยท ") + amber("โโโโ ") + dim(" ยท main") },
|
|
292
292
|
{ name: "cost-watch", summary: "What this session is spending, in every unit the payload gives for free.", active: true, preview: previewText.split("\n").slice(0, 2).join("\n") },
|
|
293
293
|
{ name: "mono", summary: "No colour anywhere โ shapes and emphasis only. The right preset for a README screenshot.", active: false, preview: previewNoColor },
|
|
294
294
|
],
|
|
@@ -424,7 +424,7 @@ const subPresets = {
|
|
|
424
424
|
presets: [
|
|
425
425
|
{ name: "agent-default", board: "subagent", summary: "What the agent is, what it is running at, and what it has cost so far.", active: true, preview: "orc-executor-opus-5-low ยท " + dim("O5/low") + " ยท 84K ยท " + dim("for ") + " 17m" },
|
|
426
426
|
{ name: "agent-watch", board: "subagent", summary: "For a run you are watching: status, its own context window, and the clock.", active: false, preview: amber("โ") + " orc-executor-opus-5-low ยท " + green("โโโโโโโโ") + " ยท " + dim("for ") + " 17m" },
|
|
427
|
-
{ name: "agent-tier", board: "subagent", summary: "The downgrade check, made visible: the model and effort ORC actually got, per agent.", active: false, preview: "orc-executor-opus-5-low ยท claude-opus-5 ยท low ยท " + amber("running") },
|
|
427
|
+
{ name: "agent-tier", board: "subagent", summary: "The downgrade check, made visible: the model and effort ORC actually got, per agent.", active: false, preview: "orc-executor-opus-5-low ยท claude-opus-5-5 ยท low ยท " + amber("running") },
|
|
428
428
|
],
|
|
429
429
|
};
|
|
430
430
|
|
|
@@ -25,6 +25,7 @@ const { wiki, wikiDocs, wikiShow, wikiCoverage, wikiCoverageFull, wikiUnregister
|
|
|
25
25
|
const { runs, runDetail, runDetailClosed, aftermath } = require("./runs.js");
|
|
26
26
|
const { stats, budgetForecast, budgetRates } = require("./stats.js");
|
|
27
27
|
const { pact } = require("./pact.js");
|
|
28
|
+
const B = require("./behaviour.js");
|
|
28
29
|
const { boundary } = require("./boundary.js");
|
|
29
30
|
const { usage, waitLanes, waitStatus } = require("./wait.js");
|
|
30
31
|
const hookui = require("./hookui.js");
|
|
@@ -339,6 +340,30 @@ module.exports.get = function get(route, q) {
|
|
|
339
340
|
return gotchaPrunePreview;
|
|
340
341
|
case "/api/stats":
|
|
341
342
|
return stats;
|
|
343
|
+
// v2.0.0 W7 โ the Behaviour panel. The `habits` mode is the one fixture
|
|
344
|
+
// with STATE: the learning switch posts `/api/config/set` (below), and
|
|
345
|
+
// the next read answers in that mode, so off ยท observe ยท propose are all
|
|
346
|
+
// reachable from the panel itself. The 30d window is the EMPTY answer
|
|
347
|
+
// (no ASK lines yet, and below the review floor) โ a window with nothing
|
|
348
|
+
// in it is exactly where those two states happen on a real machine.
|
|
349
|
+
case "/api/habits":
|
|
350
|
+
if (HABITS_MODE.value === "off") return B.habitsOff;
|
|
351
|
+
if (q && q.window === "30d") return B.habitsEmpty;
|
|
352
|
+
return HABITS_MODE.value === "observe" ? B.habitsObserve : B.habitsPropose;
|
|
353
|
+
case "/api/habits/log":
|
|
354
|
+
return HABITS_MODE.value === "off" ? B.habitLogEmpty : B.habitLog;
|
|
355
|
+
case "/api/habits/states":
|
|
356
|
+
return B.habitStates;
|
|
357
|
+
case "/api/habits/points":
|
|
358
|
+
return B.habitPoints;
|
|
359
|
+
// A path under a scope some gotcha holds answers the card; anything else is
|
|
360
|
+
// the zero-match ANSWER, which is the CLI's exit 1 and "no card".
|
|
361
|
+
case "/api/gotcha/card":
|
|
362
|
+
return /src\/routes\/|tests\/|client\/src\/i18n\//.test(String((q && q.files) || "")) ? B.gotchaCard : B.gotchaCardNone;
|
|
363
|
+
case "/api/gotcha/quality":
|
|
364
|
+
return q && q.window === "30d" ? B.gotchaQualityLow : B.gotchaQuality;
|
|
365
|
+
case "/api/gotcha/candidates":
|
|
366
|
+
return B.gotchaCandidates;
|
|
342
367
|
case "/api/diy":
|
|
343
368
|
return diy;
|
|
344
369
|
case "/api/crosslink":
|
|
@@ -549,7 +574,16 @@ module.exports.get = function get(route, q) {
|
|
|
549
574
|
// outcome is a file on disk, not a state.
|
|
550
575
|
const TEST_ENV = { "api-users": [1, testEnvUnhealthy], "orders-api": [1, testEnvAbsent], "staging-checkout": [2, testEnvRemote] };
|
|
551
576
|
|
|
577
|
+
// The one piece of fixture STATE: which `habits` mode the Behaviour panel sees.
|
|
578
|
+
// Only the `habits` key is canned โ every other config write still answers
|
|
579
|
+
// "nothing ran", because its outcome is a file on disk, not a state.
|
|
580
|
+
const HABITS_MODE = { value: "propose" };
|
|
581
|
+
|
|
552
582
|
module.exports.post = function post(route, body) {
|
|
583
|
+
if (route === "/api/config/set" && body && body.key === "habits" && ["off", "observe", "propose"].includes(String(body.value))) {
|
|
584
|
+
HABITS_MODE.value = String(body.value);
|
|
585
|
+
return { exit_code: 0, data: { ok: true, key: "habits", value: HABITS_MODE.value } };
|
|
586
|
+
}
|
|
553
587
|
// `add` answers OK so the CONNECT FLOW can be walked end to end in fixture
|
|
554
588
|
// mode โ the add is only the step before the test, and the test's outcome is
|
|
555
589
|
// the state worth designing. Every other write still answers "nothing ran".
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
fixture is worse than no fixture. */
|
|
13
13
|
|
|
14
14
|
const { PROJECT } = require("./shell.js");
|
|
15
|
+
const { gotchaExtraEntries, gotchaPanel } = require("./behaviour.js");
|
|
15
16
|
|
|
16
17
|
const wiki = {
|
|
17
18
|
state: "registered",
|
|
@@ -251,7 +252,7 @@ const patterns = {
|
|
|
251
252
|
|
|
252
253
|
const gotchas = {
|
|
253
254
|
file: PROJECT + "/.claude/orc/gotchas.md",
|
|
254
|
-
count:
|
|
255
|
+
count: 11,
|
|
255
256
|
// v0.49.1: the cap is what makes the count mean anything, and only `prune`
|
|
256
257
|
// used to print it โ so "11 of 40" was not renderable from this payload.
|
|
257
258
|
gotchas_max: 40,
|
|
@@ -262,7 +263,12 @@ const gotchas = {
|
|
|
262
263
|
{ id: "G-001", area: "express", kind: "repair", hits: 7, last_seen: "05-08-2026", trigger: "Jest suite hangs unless the server handle is closed in afterAll", fields: { trigger: "Jest suite hangs unless the server handle is closed in afterAll", symptom: "`npm test` never exits; CI times out at 10 minutes", fix: "close the http server in afterAll and await it", why: "supertest keeps the listener open, and Jest waits for the handle", first_seen: "14-05-2026", hits: "7", last_seen: "05-08-2026" } },
|
|
263
264
|
{ id: "G-002", area: "react", kind: "review", hits: 2, last_seen: "22-07-2026", trigger: "Date pickers must use the tz-aware helper, never new Date(string)", fields: { trigger: "Date pickers must use the tz-aware helper, never new Date(string)", symptom: "bookings land one day early for users west of UTC", fix: "use parseInZone from src/time/zone.ts", why: "new Date(string) parses as UTC and then renders local", first_seen: "02-06-2026", hits: "2", last_seen: "22-07-2026" } },
|
|
264
265
|
{ id: "G-003", area: "build", kind: "verify", hits: 0, last_seen: "14-06-2026", trigger: "`npm run build` needs NODE_OPTIONS=--max-old-space-size=4096 on CI", fields: { trigger: "`npm run build` needs NODE_OPTIONS=--max-old-space-size=4096 on CI", symptom: "the CI build is OOM-killed with no error line", fix: "set NODE_OPTIONS in the workflow, not in package.json", why: "the runner has less memory than a dev laptop", first_seen: "14-06-2026", hits: "0", last_seen: "14-06-2026" } },
|
|
266
|
+
// v2.0.0 W7 โ eight more, so every source and status the Behaviour
|
|
267
|
+
// panel's Gotchas tab draws is designable. They live in behaviour.js.
|
|
268
|
+
...gotchaExtraEntries,
|
|
265
269
|
],
|
|
270
|
+
// v2.0.0 W7 โ the panel view `orc gotcha list --json` carries.
|
|
271
|
+
panel: gotchaPanel,
|
|
266
272
|
};
|
|
267
273
|
|
|
268
274
|
// STALE, so the Flow panel's gated state is designable.
|