Peter Steinberger
adace58505
test: reclassify local helper suites out of agents e2e
2026-02-22 10:53:40 +00:00
Peter Steinberger
9131b22a28
test: migrate suites to e2e coverage layout
2026-02-13 14:28:22 +00:00
Seb Slight
db137dd65d
fix(paths): respect OPENCLAW_HOME for all internal path resolution ( #12091 )
...
* fix(paths): respect OPENCLAW_HOME for all internal path resolution (#11995 )
Add home-dir module (src/infra/home-dir.ts) that centralizes home
directory resolution with precedence: OPENCLAW_HOME > HOME > USERPROFILE > os.homedir().
Migrate all path-sensitive callsites: config IO, agent dirs, session
transcripts, pairing store, cron store, doctor, CLI profiles.
Add envHomedir() helper in config/paths.ts to reduce lambda noise.
Document OPENCLAW_HOME in docs/help/environment.md.
* fix(paths): handle OPENCLAW_HOME '~' fallback (#12091 ) (thanks @sebslight)
* docs: mention OPENCLAW_HOME in install and getting started (#12091 ) (thanks @sebslight)
* fix(status): show OPENCLAW_HOME in shortened paths (#12091 ) (thanks @sebslight)
* docs(changelog): clarify OPENCLAW_HOME and HOME precedence (#12091 ) (thanks @sebslight)
2026-02-08 16:20:13 -05:00
Oleg Kossoy
ebe5730401
fix: use STATE_DIR instead of hardcoded ~/.openclaw for identity and canvas ( #4824 )
...
* fix: use STATE_DIR instead of hardcoded ~/.openclaw for identity and canvas
device-identity.ts and canvas-host/server.ts used hardcoded
path.join(os.homedir(), '.openclaw', ...) ignoring OPENCLAW_STATE_DIR
env var and the resolveStateDir() logic from config/paths.ts.
This caused ~/.openclaw/identity and ~/.openclaw/canvas directories
to be created even when state dir was overridden or resided elsewhere.
* fix: format and remove duplicate imports
* fix: scope state-dir patch + add regression tests (#4824 ) (thanks @kossoy)
* fix: align state-dir fallbacks in hooks and agent paths (#4824 ) (thanks @kossoy)
---------
Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com >
2026-02-07 22:16:59 -05:00
Yida-Dev
4216449405
fix: guard resolveUserPath against undefined input ( #10176 )
...
* fix: guard resolveUserPath against undefined input
When subagent spawner omits workspaceDir, resolveUserPath receives
undefined and crashes on .trim(). Add a falsy guard that falls back
to process.cwd(), matching the behavior callers already expect.
Closes #10089
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* fix: harden runner workspace fallback (#10176 ) (thanks @Yida-Dev)
* fix: harden workspace fallback scoping (#10176 ) (thanks @Yida-Dev)
* refactor: centralize workspace fallback classification and redaction (#10176 ) (thanks @Yida-Dev)
* test: remove explicit any from utils mock (#10176 ) (thanks @Yida-Dev)
* security: reject malformed agent session keys for workspace resolution (#10176 ) (thanks @Yida-Dev)
---------
Co-authored-by: Yida-Dev <reyifeijun@gmail.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com >
2026-02-06 13:16:58 -05:00