chore: fix CHANGELOG.md formatting
This commit is contained in:
parent
da00f6cf8e
commit
ed5a8dff8a
@ -336,7 +336,6 @@ Docs: https://docs.openclaw.ai
|
|||||||
- macOS: fix cron payload summary rendering and ISO 8601 formatter concurrency safety.
|
- macOS: fix cron payload summary rendering and ISO 8601 formatter concurrency safety.
|
||||||
- Discord: enforce DM allowlists for agent components (buttons/select menus), honoring pairing store approvals and tag matches. (#11254) Thanks @thedudeabidesai.
|
- Discord: enforce DM allowlists for agent components (buttons/select menus), honoring pairing store approvals and tag matches. (#11254) Thanks @thedudeabidesai.
|
||||||
|
|
||||||
|
|
||||||
## 2026.2.2-3
|
## 2026.2.2-3
|
||||||
|
|
||||||
### Fixes
|
### Fixes
|
||||||
|
|||||||
@ -10,26 +10,17 @@ function clean(value?: string): string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** Shallow-merge known nested config sub-objects so partial overrides inherit base values. */
|
/** Shallow-merge known nested config sub-objects so partial overrides inherit base values. */
|
||||||
function deepMergeConfig(
|
function deepMergeConfig<T extends Record<string, unknown>>(base: T, override: Partial<T>): T {
|
||||||
base: Record<string, unknown>,
|
const merged = { ...base, ...override } as Record<string, unknown>;
|
||||||
override: Record<string, unknown>,
|
|
||||||
): Record<string, unknown> {
|
|
||||||
const merged = { ...base, ...override };
|
|
||||||
// Merge known nested objects (dm, actions) so partial overrides keep base fields
|
// Merge known nested objects (dm, actions) so partial overrides keep base fields
|
||||||
for (const key of ["dm", "actions"] as const) {
|
for (const key of ["dm", "actions"] as const) {
|
||||||
if (
|
const b = base[key];
|
||||||
typeof base[key] === "object" &&
|
const o = override[key];
|
||||||
base[key] !== null &&
|
if (typeof b === "object" && b !== null && typeof o === "object" && o !== null) {
|
||||||
typeof override[key] === "object" &&
|
merged[key] = { ...(b as Record<string, unknown>), ...(o as Record<string, unknown>) };
|
||||||
override[key] !== null
|
|
||||||
) {
|
|
||||||
merged[key] = {
|
|
||||||
...(base[key] as Record<string, unknown>),
|
|
||||||
...(override[key] as Record<string, unknown>),
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return merged;
|
return merged as T;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -59,8 +50,7 @@ export function resolveMatrixConfigForAccount(
|
|||||||
|
|
||||||
// Deep merge: account-specific values override top-level values, preserving
|
// Deep merge: account-specific values override top-level values, preserving
|
||||||
// nested object inheritance (dm, actions, groups) so partial overrides work.
|
// nested object inheritance (dm, actions, groups) so partial overrides work.
|
||||||
const useAccountConfig = accountConfig !== undefined;
|
const matrix = accountConfig ? deepMergeConfig(matrixBase, accountConfig) : matrixBase;
|
||||||
const matrix = useAccountConfig ? deepMergeConfig(matrixBase, accountConfig) : matrixBase;
|
|
||||||
|
|
||||||
const homeserver = clean(matrix.homeserver) || clean(env.MATRIX_HOMESERVER);
|
const homeserver = clean(matrix.homeserver) || clean(env.MATRIX_HOMESERVER);
|
||||||
const userId = clean(matrix.userId) || clean(env.MATRIX_USER_ID);
|
const userId = clean(matrix.userId) || clean(env.MATRIX_USER_ID);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user