agenr 0.9.77 → 0.9.78
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 +7 -0
- package/dist/openclaw-plugin/index.js +19 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.9.78] - 2026-03-08
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- Restored OpenClaw session-start continuity for legacy TUI session keys that expose `family=tui` without explicit lane metadata by deriving a narrow compatibility lane from safe structured key forms such as `agent:main:tui` and `agent:main:macbook_tui`.
|
|
8
|
+
- Added regression coverage ensuring legacy plain and aliased TUI keys recover same-lane explicit and fallback predecessors, while ambiguous non-lane identifiers still fail closed.
|
|
9
|
+
|
|
3
10
|
## [0.9.77] - 2026-03-08
|
|
4
11
|
|
|
5
12
|
### Fixed
|
|
@@ -3126,6 +3126,21 @@ function resolveCompactLaneIdFromIdentifierPart(identifierPart, family) {
|
|
|
3126
3126
|
}
|
|
3127
3127
|
return null;
|
|
3128
3128
|
}
|
|
3129
|
+
function resolveCompatibilityLaneIdFromIdentifierPart(identifierPart, family) {
|
|
3130
|
+
const trimmedPart = identifierPart.trim();
|
|
3131
|
+
const normalizedPart = trimmedPart.toLowerCase();
|
|
3132
|
+
if (!trimmedPart || family !== "tui") {
|
|
3133
|
+
return null;
|
|
3134
|
+
}
|
|
3135
|
+
if (normalizedPart === "tui") {
|
|
3136
|
+
return trimmedPart;
|
|
3137
|
+
}
|
|
3138
|
+
const legacyTuiAliasPattern = /^[a-z0-9_]+_tui$/i;
|
|
3139
|
+
if (legacyTuiAliasPattern.test(trimmedPart)) {
|
|
3140
|
+
return trimmedPart;
|
|
3141
|
+
}
|
|
3142
|
+
return null;
|
|
3143
|
+
}
|
|
3129
3144
|
function resolveLaneIdFromStructuredIdentifier(identifier, family) {
|
|
3130
3145
|
const trimmedIdentifier = identifier.trim();
|
|
3131
3146
|
if (!trimmedIdentifier || family === "unknown") {
|
|
@@ -3145,6 +3160,10 @@ function resolveLaneIdFromStructuredIdentifier(identifier, family) {
|
|
|
3145
3160
|
if (laneParts.length > 0) {
|
|
3146
3161
|
return laneParts.join(":");
|
|
3147
3162
|
}
|
|
3163
|
+
const compatibilityLaneId = resolveCompatibilityLaneIdFromIdentifierPart(part, family);
|
|
3164
|
+
if (compatibilityLaneId) {
|
|
3165
|
+
return compatibilityLaneId;
|
|
3166
|
+
}
|
|
3148
3167
|
}
|
|
3149
3168
|
return null;
|
|
3150
3169
|
}
|