fix: portable observer mktemp template (#2417) + correct false attribution-disabled doc claim (#2426)#2430
Conversation
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
|
ECC bundle files are already tracked in this repository. Skipping generation of another bundle PR. |
|
| Filename | Overview |
|---|---|
| skills/continuous-learning-v2/agents/observer-loop.sh | Updates the observer analysis temp-file template so BSD/macOS mktemp can randomize it correctly. |
| tests/hooks/observer-loop-mktemp.test.js | Adds a test that checks quoted observer-loop mktemp templates end with the random X run. |
| rules/common/git-workflow.md | Changes the attribution note from a global-state claim to a user setting instruction. |
Reviews (3): Last reviewed commit: "fix(observer): portable mktemp template ..." | Re-trigger Greptile
|
ECC bundle files are already tracked in this repository. Skipping generation of another bundle PR. |
… false attribution-disabled claim in git-workflow docs (#2426) Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
f2a99ec to
4d8fa0b
Compare
|
ECC bundle files are already tracked in this repository. Skipping generation of another bundle PR. |
1 similar comment
|
ECC bundle files are already tracked in this repository. Skipping generation of another bundle PR. |
What Changed
Two small, independent reliability/correctness fixes. Stacked on #2408 (base branch
devin/1782854552-cleanup-issue-cluster) becausemainis currently red — see note at the bottom.#2417 — observer wedges on macOS (malformed
mktemptemplate)skills/continuous-learning-v2/agents/observer-loop.sh: the analysis temp template wasecc-observer-analysis.XXXXXX.jsonl. BSD/macOSmktemponly substitutes a trailing run ofX, so the suffix after theXs produced a literal, non-random filename — the second cycle then failed withFile existsand permanently wedged the observer. Moved the random run to the end:ecc-observer-analysis.jsonl.XXXXXX.tests/hooks/observer-loop-mktemp.test.js: static regression that scans everymktemp "..."template inobserver-loop.shand asserts the template ends inX+(fails the old shape, passes the fixed one).--max-turns 20too low) are already fixed onmain(bug: observer archives observations even when Claude analysis fails, dropping the batch from re-analysis #2370, Observer default MAX_TURNS=20 insufficient for MAX_ANALYSIS_LINES=500 #2035); only themktemptemplate remained.#2426 — false "attribution disabled globally" claim
Attribution disabled globally via ~/.claude/settings.json, but ECC ships no such setting, so the statement is false for anyone installing the rules. Reworded it into an instruction (set "includeCoAuthoredBy": falsein~/.claude/settings.json) across every copy:rules/common/git-workflow.md, the.cursorand.kiromirrors, and the 7 doc translations (ja-JP, es, pt-BR, zh-TW, zh-CN, tr, ko-KR). Code token and path kept verbatim; prose translated per locale.Why This Change
Both are documentation/reliability drift: the observer silently stopped producing instincts on macOS after one interrupted cycle, and the rule pack asserted a harness state it never establishes.
Testing Done
node tests/run-all.js) — 2947 passed, 0 failed (on the stacked branch)npm ci --ignore-scriptssucceeds locallyType of Change
fix:Bug fixdocs:DocumentationNote on base branch / CI
mainis currently red on the full matrix from four pre-existing infra breakages, all fixed by #2408: (1)package-lock.jsoneslint desync (npm ci), (2)yarn.lockdesync under Yarn 4 (YN0028), (3) missingpyyaml(Python TestsModuleNotFoundError: No module named 'yaml'), (4) Windows bash-probe inplugin-hook-bootstrap.js. Rather than duplicate all four here (they'd conflict with #2408), this PR is stacked on #2408 so its diff stays limited to the two fixes above. Once #2408 merges tomain, this can be retargeted tomaincleanly.Link to Devin session: https://app.devin.ai/sessions/408d7d92c162491d98c736d2a144a96c