Found while applying a review fix in systemfsoftware/symphony-effect (feat/symphony-service, finding #41).
What happened. A pure function that is not a workflow (a secret redactor that always returns one outcome) needed a property-based test. The template gives it no place where the gates accept one:
- The test-discipline lint accepts property tests only at
src/__tests__/<stem>.workflow.property.test.ts, which means next to a workflow.
- The architect-workflow rules (G1/J1) forbid turning a function with a single outcome into a workflow just to get that slot.
- The lint's alternative for non-workflow code is an in-source
if (import.meta.vitest) block. But the template's vitest config does not set includeSource, so such a block never runs. Enabling it means editing a judgment surface (CONST-E9).
So the laws were written and passed locally but could not be committed. The fix shipped with example rows only.
Ask. Pick one supported home for properties of non-workflow pure functions and make the lint, the vitest config and the property-test skill agree on it. Two candidates: enable includeSource in the template, or allow src/__tests__/<stem>.property.test.ts for any module.
Found while applying a review fix in systemfsoftware/symphony-effect (feat/symphony-service, finding #41).
What happened. A pure function that is not a workflow (a secret redactor that always returns one outcome) needed a property-based test. The template gives it no place where the gates accept one:
src/__tests__/<stem>.workflow.property.test.ts, which means next to a workflow.if (import.meta.vitest)block. But the template's vitest config does not setincludeSource, so such a block never runs. Enabling it means editing a judgment surface (CONST-E9).So the laws were written and passed locally but could not be committed. The fix shipped with example rows only.
Ask. Pick one supported home for properties of non-workflow pure functions and make the lint, the vitest config and the property-test skill agree on it. Two candidates: enable
includeSourcein the template, or allowsrc/__tests__/<stem>.property.test.tsfor any module.