Project Config And Tests
This is a composable project overlay, not a standalone implementation workflow.
Use it with matching language or discipline guidance when the main task is a
configuration contract or deterministic tests at that boundary.
For review, inspect these contracts and report findings without editing config,
tests, or process state. For implementation, apply only the requested changes
and use isolated fixtures for validation.
When to use
The task involves configuration sources or precedence, defaults, parsing,
normalization, path resolution, or deterministic tests around those seams.
Not for
Do not use this for general feature work (use the matching principle skill and
add project-core-dev only when repository-specific completion evidence is not
concrete), general test strategy (tester-mindset), framework-specific test
implementation, vendored dependency changes (project-vendor-boundary),
release-only work (project-release-maintainer), or environment diagnosis whose
cause has not been isolated (project-platform-diagnose).
Workflow
- Establish the contract before editing: sources, precedence, defaults, and
the behavior of missing, empty, malformed, and unsupported values.
- Preserve help, version, and recovery paths when they can operate safely
without valid config. Fail fast or fail closed when continuing would be
unsafe or would silently apply misleading behavior.
- Separate pure parsing and normalization from environment, filesystem, and
process-global lookup when the existing design permits it.
- Make tests independent of ambient environment, current directory, user home,
wall-clock time, and shared filesystem state. Use the repo's fixtures and
temporary-directory helpers, and clean up any remaining state.
- Cover precedence and representative missing, empty, invalid, override,
relative, absolute, and platform-sensitive path cases that belong to the
supported contract. Do not simulate unsupported platforms and present the
result as observed evidence.
- Keep defaults, example config, help text, and documentation aligned. Avoid
printing secret values in diagnostics or test output.
Completion
- Run the narrowest relevant config and path tests plus the checks required by
any selected principle skill.
- Use coverage or benchmarks only when they answer a concrete risk; do not make
percentage coverage or routine benchmarking the objective.
- Report untested platform behavior, unavailable tooling, and any remaining
dependence on ambient state.
1---2name: project-config-and-tests3description: Project overlay for config precedence, defaults, parsing, normalization, path helpers, and deterministic tests at those seams. Not for general test strategy or unrelated test implementation.4---56# Project Config And Tests78This is a composable project overlay, not a standalone implementation workflow.9Use it with matching language or discipline guidance when the main task is a10configuration contract or deterministic tests at that boundary.1112For review, inspect these contracts and report findings without editing config,13tests, or process state. For implementation, apply only the requested changes14and use isolated fixtures for validation.1516## When to use1718The task involves configuration sources or precedence, defaults, parsing,19normalization, path resolution, or deterministic tests around those seams.2021## Not for2223Do not use this for general feature work (use the matching principle skill and24add `project-core-dev` only when repository-specific completion evidence is not25concrete), general test strategy (`tester-mindset`), framework-specific test26implementation, vendored dependency changes (`project-vendor-boundary`),27release-only work (`project-release-maintainer`), or environment diagnosis whose28cause has not been isolated (`project-platform-diagnose`).2930## Workflow31321. Establish the contract before editing: sources, precedence, defaults, and33 the behavior of missing, empty, malformed, and unsupported values.342. Preserve help, version, and recovery paths when they can operate safely35 without valid config. Fail fast or fail closed when continuing would be36 unsafe or would silently apply misleading behavior.373. Separate pure parsing and normalization from environment, filesystem, and38 process-global lookup when the existing design permits it.394. Make tests independent of ambient environment, current directory, user home,40 wall-clock time, and shared filesystem state. Use the repo's fixtures and41 temporary-directory helpers, and clean up any remaining state.425. Cover precedence and representative missing, empty, invalid, override,43 relative, absolute, and platform-sensitive path cases that belong to the44 supported contract. Do not simulate unsupported platforms and present the45 result as observed evidence.466. Keep defaults, example config, help text, and documentation aligned. Avoid47 printing secret values in diagnostics or test output.4849## Completion5051- Run the narrowest relevant config and path tests plus the checks required by52 any selected principle skill.53- Use coverage or benchmarks only when they answer a concrete risk; do not make54 percentage coverage or routine benchmarking the objective.55- Report untested platform behavior, unavailable tooling, and any remaining56 dependence on ambient state.