You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-`CliParameters` converts explicit PowerShell parameters to snake_case keys and skips `$null`、empty strings and `ExcludeKeys`.
40
42
-`MarkdownFrontMatter` returns parsed metadata plus `__content` for the Markdown body.
41
43
-`Get-ConfigValue` performs shallow case-insensitive lookup only; it must not expand paths, environment variables, nested paths, or normalize key names.
44
+
-`Resolve-ConfigEnvPlaceholder` expands `${VAR}` and `%VAR%`; missing `${VAR}` throws with context instead of silently preserving the placeholder.
45
+
-`Resolve-ConfigPath` expands env placeholders, supports `~`, resolves relative paths against `BasePath`, and returns an absolute path. It does not validate existence or create directories.
42
46
- Missing file sources return an empty table by default; `-ErrorOnMissing` changes that to `配置文件不存在: <path>`.
43
47
-`Invoke-WithScopedEnvironment` must restore overwritten variables and remove newly created variables even when the script block throws.
44
48
-`psutils/modules/config.psm1` must export public resolver functions and must not contain a second implementation of the parser.
@@ -54,6 +58,8 @@
54
58
| Missing file source with `-ErrorOnMissing`| Throw `配置文件不存在: <path>`|
55
59
| Unknown source `Type`| Throw `不支持的配置来源类型`|
56
60
| CLI parameter value is `$null` or whitespace | Omit it from merged config |
61
+
|`${VAR}` placeholder references a missing env var | Throw `环境变量未设置: VAR(context)`|
62
+
|`Resolve-ConfigPath` receives an empty path | Throw `路径配置不能为空: context`|
0 commit comments