Follow-up to #203. The @autoSet timestamp stamping shipped across all five ports (Python / C# / Java / Kotlin CRUD stamping + TS insertPreserving), each with per-port tests proving insert→both stamped==now(), update/patch→updatedAt bumped + createdAt unchanged, insertPreserving→verbatim. So the behavior is gated per port.
What's not yet landed is the shared cross-port api-contract parity gate (the plan's step 3, docs/superpowers/plans/2026-07-16-issue-203-autoset-stamping-plan.md): a single @autoSet-bearing entity + api-contract scenarios (POST asserts created_at == updated_at; PATCH asserts updated_at bumped, created_at unchanged) that ALL five ports' generated-artifact lanes pass — the parity lock (like #195's coordinated registration). It's additional assurance (per-port tests already cover correctness), but it's the pattern the repo uses to prevent cross-port drift.
Note for whoever picks this up: the timestamp assertions need care in the scenario DSL — comparing two response fields (created_at == updated_at) and comparing a field across two requests (PATCH bumps updated_at). And it must be verified green on all five ports' api-contract lanes (both reference + generated) before landing, or it reds the laggards.
Follow-up to #203. The
@autoSettimestamp stamping shipped across all five ports (Python / C# / Java / Kotlin CRUD stamping + TSinsertPreserving), each with per-port tests proving insert→both stamped==now(), update/patch→updatedAtbumped +createdAtunchanged,insertPreserving→verbatim. So the behavior is gated per port.What's not yet landed is the shared cross-port api-contract parity gate (the plan's step 3,
docs/superpowers/plans/2026-07-16-issue-203-autoset-stamping-plan.md): a single@autoSet-bearing entity + api-contract scenarios (POST assertscreated_at == updated_at; PATCH assertsupdated_atbumped,created_atunchanged) that ALL five ports' generated-artifact lanes pass — the parity lock (like #195's coordinated registration). It's additional assurance (per-port tests already cover correctness), but it's the pattern the repo uses to prevent cross-port drift.Note for whoever picks this up: the timestamp assertions need care in the scenario DSL — comparing two response fields (
created_at == updated_at) and comparing a field across two requests (PATCH bumpsupdated_at). And it must be verified green on all five ports' api-contract lanes (both reference + generated) before landing, or it reds the laggards.