Skip to content

test: begin API v2 fixture and contract migration - #1

Merged
stefan-ernst merged 28 commits into
Windshiftapp:mainfrom
Optic00:codex/api-v2-suite-migration
Oct 2, 2026
Merged

stefan-ernst merged 28 commits into
Windshiftapp:mainfrom
Optic00:codex/api-v2-suite-migration

Conversation

@Optic00

@Optic00 Optic00 commented Sep 7, 2026 •

Copy link
Copy Markdown
Contributor

Draft: migrate existing fixtures to API v2. core.ref remains unchanged and unverified; this is not a completed full-suite migration.

HTTP fixtures exercise both v2 mounts through real requests. Identity setup retains /api/auth/me. CLI/MCP fixtures use current response shapes and HTTP workflows. Worklogs check UTC timestamps and persistence; pagination crosses a 101-item boundary.

Coverage includes comments, page labels, test management, assets, diagrams, labels, item links, link types, priorities and iterations. Tests retain ownership, role denials, cross-workspace isolation, rejected-write persistence and granular bearer scopes. All nine V1 asset scenarios remain alongside V2 equivalents. Creator-email privacy still requires Core #249; it fails against current unmodified main.

Iteration changes include path-selected scope, local workspace lists, invalid-status rejection and inaccessible-workspace creation returning 404 for nonadmins. Four matrix representatives exercise eight actors on both mounts; this is not complete route-policy coverage.

Frontend fixtures now match current API methods, arrays/envelopes and v2 pagination. Notification acknowledgement remains server-authoritative even when the local inbox looks read. Board tests check automatic background pages with rank/bubble ordering, refresh and workspace changes. Time tests cover overnight durations and equal times representing 24 hours. Updated UI mocks include portal customization, agent connection overview and localized workflow editing; temporary globals are restored.

Latest validation uses main 8608da08 plus the two remaining fixes in Core #243. The complete frontend run passes all 1,268 tests in 209 files. The quick suite passes five Go packages and 123 frontend tests. Both targeted Chromium deletion scenarios pass, plus setup, with no skips or retries. PostgreSQL was not rerun in this update.

Remaining: legacy internal/handlers compile failures, complete route-policy/PostgreSQL/browser coverage and a verified compatibility pin. Keep draft.

@stefan-ernst
stefan-ernst merged commit 14baf86 into Windshiftapp:main Oct 2, 2026
@stefan-ernst

Copy link
Copy Markdown
Contributor

Thanks @Optic00 — this is now integrated into main via 14baf86, on top of a full suite sync against current Core main (core.ref = 2d16aa91).

What was taken:

  • The whole net-new v2 contract suite (assets, comments, diagrams, labels, link types, page labels, priorities, item links, test management, OpenAPI exposure, v2 helpers, fixture identity) — adapted where it predated current Core contracts, and all of it passes against the pinned commit.
  • Page-label repository unique-violation tests, the action definition capability test, and the pagination-boundary fixture test (backed by a page-walking v2 helper, since main's GetItemsByWorkspace is v1-shaped and widely used).
  • Your asset fixture helpers were renamed with a v2 prefix to coexist with the v1 suite's same-named helpers.

What was superseded:

  • Changes to files the maintained internal-suite sync had already updated (76 files) — main's current versions won.
  • The permission-matrix rewrite, iteration scope tests, test-management route parity check, and the wscli task suite target pre-navigation Core contracts and fail against the pinned commit; those areas already have current coverage on main.
  • The legacy internal/handlers compile failures you noted are gone — those obsolete files were removed on main.

Feel free to close this draft, or reopen against current main if you want to continue the remaining route-policy/PostgreSQL/browser coverage on the new baseline.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants