Files
suaveplan/openspec/changes/enterprise-testing-fixtures-expansion/tasks.md
2026-05-27 23:29:53 +01:00

3.6 KiB

0. Pre-flight (non-negotiable)

  • 0.1 Confirm clean working tree (git status reports nothing) and no in-flight worktrees with uncommitted work (git worktree list then git status in each)
  • 0.2 If any worktrees exist under .claude/worktrees/, account for each one: still-active agent, work-pending-merge, or stale-and-prune. Stale worktrees MUST be removed (git worktree remove) before opening a new one — code that has been lost twice on main is the failure mode this guards against.
  • 0.3 Confirm the package set in MANIFEST.md matches find packages -maxdepth 3 -name package.json count. Drift here means a prior change archived without regenerating the manifest.

1. Pre-conditions

  • 1.1 Confirm @suaveplan/testing-integration is published to Verdaccio at https://npmjs.fq.io/ and resolves as workspace:^.
  • 1.2 Confirm testcontainers exists in the root package.json catalog.integration block.
  • 1.3 Confirm the existing six testing-integration-* plugins still pass bunx turbo lint typecheck test --filter=@suaveplan/testing-integration-*.
  • 1.4 Confirm the audit doc at /mnt/s/web/genesis/docs/superpowers/specs/2026-04-25-test-suite-audit.md is current and §1 still tracks these five plugins.

2. Spec deltas (this change)

  • 2.1 Land specs/testing-integration-oidc/spec.md with image policy, env-bridge, healthcheck, config, error prefix, fakes, scenarios.
  • 2.2 Land specs/testing-integration-mongodb/spec.md with replica-set + auth modes.
  • 2.3 Land specs/testing-integration-mysql/spec.md with charset/collation overrides.
  • 2.4 Land specs/testing-integration-minio/spec.md with AWS-S3 parity scenarios.
  • 2.5 Land specs/testing-integration-nats/spec.md with core + JetStream + cluster + auth modes.

3. Capability registration

  • 3.1 On archive, fold each delta into openspec/specs/<capability>/spec.md (five new capability folders).
  • 3.2 Move this change folder to openspec/archive/<yyyy-mm-dd>-enterprise-testing-fixtures-expansion/.

4. Implementation hand-off (separate plans, not part of this change)

  • 4.1 Author docs/superpowers/plans/<date>-testing-integration-oidc.md mirroring the six-plugin plan structure.
  • 4.2 Author corresponding plans for mongodb, mysql, minio, nats.
  • 4.3 Each plan must include: package skeleton, fixture impl, fakes, integration smoke test guarded by skipIfUnavailable(), README, sibling .md per implementation file, 100% Istanbul coverage, root README.md table update, CLAUDE.md package-list entry.

5. Pre-publish gate (per plugin, executed inside the implementation plan)

  • 5.1 bunx turbo lint typecheck test --filter=@suaveplan/testing-integration-<name> green.
  • 5.2 bunx turbo test:coverage --filter=@suaveplan/testing-integration-<name> at 100/100/100/100 (Istanbul).
  • 5.3 bunx turbo build --filter=@suaveplan/testing-integration-<name> green.
  • 5.4 Banned-pattern scan zero (per openspec/AGENTS.md §2).
  • 5.5 Sibling-.md scan zero misses (per AGENTS.md §4).
  • 5.6 bun scripts/publish.ts --package @suaveplan/testing-integration-<name> after gates green.

6. Documentation propagation

  • 6.1 Add each new package to the CLAUDE.md package list with one-paragraph blurb (image, env vars, healthcheck, error prefix, deps).
  • 6.2 Add each new package row to the root README.md package table.
  • 6.3 Update docs/superpowers/specs/2026-04-24-enterprise-testbed-design.md §4 fixture inventory.
  • 6.4 Cross-reference each new plugin from the relevant consumer package's README (oauth-client, events, future db-mongodb/db-mysql).