@elvatis_com/openclaw-self-healing-elvatis 0.2.9 → 0.2.10
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/.ai/handoff/CONVENTIONS.md +29 -0
- package/.ai/handoff/STATUS.md +13 -16
- package/README.md +10 -1
- package/SKILL.md +2 -0
- package/openclaw.plugin.json +2 -2
- package/package.json +2 -2
|
@@ -65,3 +65,32 @@ scripts/ ← one-off utilities (roadmap issue creation, etc.)
|
|
|
65
65
|
- `SKILL.md` — if commands or config changed
|
|
66
66
|
|
|
67
67
|
Skipping documentation = incomplete release. No exceptions.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## 🚨 Release-Regel: Erst fertig, dann publishen (gilt für ALLE Plattformen)
|
|
72
|
+
|
|
73
|
+
**IMMER erst alles fertigstellen, danach publishen. Kein einziger Commit mehr dazwischen.**
|
|
74
|
+
Gilt für GitHub, npm, ClawHub, PyPI — egal ob ein Projekt auf einer oder mehreren Plattformen ist.
|
|
75
|
+
Sonst divergieren die Tarballs/Releases zwangsläufig.
|
|
76
|
+
|
|
77
|
+
### Reihenfolge (nie abweichen)
|
|
78
|
+
1. Alle Änderungen + Versionsbumps in **einem einzigen Commit** abschließen
|
|
79
|
+
2. `git push` → Plattform 1 (z.B. GitHub)
|
|
80
|
+
3. `npm publish` / `clawhub publish` / etc. — alle weiteren Plattformen
|
|
81
|
+
4. Kein weiterer Commit bis zum nächsten Release (außer reine interne Doku)
|
|
82
|
+
|
|
83
|
+
### Vor jedem Release: Alle Versionsstellen prüfen
|
|
84
|
+
```bash
|
|
85
|
+
grep -rn "X\.Y\.Z\|Current version\|Version:" \
|
|
86
|
+
--include="*.md" --include="*.json" \
|
|
87
|
+
--exclude-dir=node_modules --exclude-dir=dist --exclude-dir=.git
|
|
88
|
+
```
|
|
89
|
+
Typische vergessene Stellen: `README.md` Header, `SKILL.md` Footer, `package.json`,
|
|
90
|
+
`openclaw.plugin.json`, `.ai/handoff/STATUS.md` (Header + Plattform-Zeilen), Changelog-Eintrag.
|
|
91
|
+
|
|
92
|
+
### Secrets & private Pfade — NIEMALS in Repos
|
|
93
|
+
- Keine API Keys, Tokens, Passwörter, Secrets in Code oder Docs
|
|
94
|
+
- Keine absoluten lokalen Pfade (`/home/user/...`) in publizierten Dateien
|
|
95
|
+
- Keine `.env`-Dateien committen — immer in `.gitignore`
|
|
96
|
+
- Vor jedem Push: `git diff --staged` auf Secrets prüfen
|
package/.ai/handoff/STATUS.md
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# STATUS.md — openclaw-self-healing-elvatis
|
|
2
2
|
|
|
3
|
-
_Last updated: 2026-03-
|
|
3
|
+
_Last updated: 2026-03-08 by Akido (claude-sonnet-4-6)_
|
|
4
4
|
|
|
5
|
-
## Current Version: 0.2.
|
|
5
|
+
## Current Version: 0.2.10 — STABLE
|
|
6
6
|
|
|
7
7
|
## What is done
|
|
8
8
|
|
|
9
9
|
- ✅ Repo: `https://github.com/elvatis/openclaw-self-healing-elvatis`
|
|
10
|
-
- ✅ npm: `@elvatis_com/openclaw-self-healing-elvatis@0.2.
|
|
11
|
-
- ✅ ClawHub: `openclaw-self-healing-elvatis@0.2.
|
|
10
|
+
- ✅ npm: `@elvatis_com/openclaw-self-healing-elvatis@0.2.10`
|
|
11
|
+
- ✅ ClawHub: `openclaw-self-healing-elvatis@0.2.10`
|
|
12
12
|
- ✅ Model failover: rate-limit + auth-scope cooldown, configurable fallback order
|
|
13
13
|
- ✅ WhatsApp reconnect: disconnect streak detection + gateway restart
|
|
14
14
|
- ✅ Cron failure: consecutive fail threshold → disable + GitHub issue
|
|
@@ -18,20 +18,17 @@ _Last updated: 2026-03-07 by Akido (claude-sonnet-4-6)_
|
|
|
18
18
|
- ✅ Status snapshot: written to file on every tick for external monitoring
|
|
19
19
|
- ✅ Active recovery probing: polls limited models to detect early recovery
|
|
20
20
|
- ✅ Dry-run mode: full behavior simulation without side effects
|
|
21
|
-
- ✅
|
|
22
|
-
- ✅ Atomic state writes: tmp file + rename to avoid partial writes
|
|
23
|
-
- ✅ 181 tests across 2 suites (unit + integration)
|
|
24
|
-
- ✅ TypeScript build + typecheck pipeline
|
|
25
|
-
- ✅ `.clawhubignore` + rsync-based ClawHub publish documented in CONVENTIONS.md
|
|
21
|
+
- ✅ Backup path: `~/.openclaw/backups/openclaw.json/openclaw.json.<timestamp>.bak`
|
|
26
22
|
|
|
27
|
-
##
|
|
23
|
+
## Backup Behavior
|
|
28
24
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
25
|
+
The plugin creates timestamped backups before any action that could restart the gateway
|
|
26
|
+
or change cron/plugin state. Backups are written to:
|
|
27
|
+
`~/.openclaw/backups/openclaw.json/openclaw.json.<ISO-timestamp>.bak`
|
|
28
|
+
|
|
29
|
+
Note: Files like `openclaw.json.bak` in `~/.openclaw/` are from the manual config-change
|
|
30
|
+
checklist procedure, not from this plugin.
|
|
33
31
|
|
|
34
32
|
## Open Risks
|
|
35
33
|
|
|
36
|
-
-
|
|
37
|
-
- ClawHub publish via `clawhub publish <dir>` ignores `.clawhubignore` — use rsync workaround (see CONVENTIONS.md)
|
|
34
|
+
- ClawHub publish ignores `.clawhubignore` — use rsync workaround (see CONVENTIONS.md)
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# openclaw-self-healing-elvatis
|
|
2
2
|
|
|
3
|
-
**Current version: `0.2.
|
|
3
|
+
**Current version: `0.2.10`**
|
|
4
4
|
|
|
5
5
|
OpenClaw plugin that improves resilience by automatically fixing reversible failures.
|
|
6
6
|
|
|
@@ -13,6 +13,15 @@ OpenClaw plugin that improves resilience by automatically fixing reversible fail
|
|
|
13
13
|
|
|
14
14
|
## Changelog
|
|
15
15
|
|
|
16
|
+
### v0.2.10 — 2026-03-08
|
|
17
|
+
Docs fix: README and STATUS.md version headers were stuck at 0.2.8 after v0.2.9 bump; SKILL.md missing version footer; add universal release-rule to CONVENTIONS.md.
|
|
18
|
+
|
|
19
|
+
### v0.2.9 — 2026-03-07
|
|
20
|
+
**Fix: Plugin health monitoring JSON parsing**
|
|
21
|
+
Extract JSON from stdout before parsing — channels subprocess output includes
|
|
22
|
+
non-JSON log lines (e.g. `[INFO] ...`) before the JSON payload, causing parse
|
|
23
|
+
failures in plugin health checks.
|
|
24
|
+
|
|
16
25
|
### v0.2.8 — 2026-03-07
|
|
17
26
|
**Fix: Infinite gateway restart loop**
|
|
18
27
|
`lastRestartAt` and `disconnectStreak` are now saved to disk **before** calling
|
package/SKILL.md
CHANGED
package/openclaw.plugin.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "openclaw-self-healing-elvatis",
|
|
3
3
|
"name": "OpenClaw Self Healing",
|
|
4
|
-
"version": "0.2.
|
|
4
|
+
"version": "0.2.10",
|
|
5
5
|
"description": "Self-healing health checks + guardrails + auto-fix for reversible failures (rate limits, auth errors, stuck session pins).",
|
|
6
6
|
"configSchema": {
|
|
7
7
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
@@ -107,4 +107,4 @@
|
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
|
-
}
|
|
110
|
+
}
|
package/package.json
CHANGED