Commit Graph

4 Commits

Author SHA1 Message Date
Egutierrez 1d3744f2d7 test(e2e): Playwright UI smoke + Go integration tests against MAS
- Playwright e2e against Vite dev server (LoginScreen renders, homeserver
  visible, version pinned). Fallback documented to swap to `wails dev
  -browser` via WAILS_DEV_URL when full backend bindings are required.
- Go integration tests (//go:build integration,goolm) for Start +
  ListRooms + LoadTimeline + SendText + GetDiagnostics against real
  Synapse. Skip cleanly if MATRIX_INTEGRATION_TOKEN/USER env vars unset
  so CI never breaks unattended.
- pnpm e2e/e2e:ui/e2e:report scripts. Per-run keyring namespace +
  t.TempDir XDG_CONFIG_HOME so integration tests don't clobber the
  production keyring entry.

E2E.md explains how to run each layer + limits (OIDC not automated).
2026-05-25 17:20:05 +02:00
egutierrez 1a2e9b2cc0 test: Vitest + RTL component tests with mocked Wails bindings
- vitest + jsdom + @testing-library/react setup
- mocked wailsjs/go/main/MatrixService + runtime
- tests for: LoginScreen, App routing, HomeScreen auto-relogin,
  RoomList, Composer, EventBubble
- pnpm test runs the suite

Frontend coverage for matrix_client_pc (flow 0010 PC client).
2026-05-25 12:20:32 +02:00
egutierrez f28c2b121e feat: login MAS OIDC end-to-end (issue 0147)
Backend Go:
- MatrixService with Login/GetSession/Logout bindings
- Uses 3 registry helpers via go.work:
  - mas_oidc_loopback_go_infra (PKCE flow)
  - keyring_token_store_go_infra (SO keychain)
  - matrix_client_init_go_infra (mautrix client)
- whoami helper to discover user_id+device_id pre-init

Frontend React+Vite+TS:
- Mantine v7 + @tabler/icons-react
- LoginScreen with 'Sign in with Matrix' button
- HomeScreen with profile card + logout
- Dark theme violet accent
- @mantine/notifications wired

Wails config:
- Switched to pnpm (workspace: protocol)
- Bindings auto-generated for MatrixService
- 1280x800 default window

Build: 68MB linux/amd64 binary in build/bin/
2026-05-24 23:23:35 +02:00
egutierrez 42adfdfd97 feat: scaffold matrix_client_pc (Wails + React-TS + mautrix-go + keyring)
Initial scaffold for issue 0147. App lives at
projects/element_agents/apps/matrix_client_pc/.

Deps:
- github.com/wailsapp/wails/v2 v2.11.0
- maunium.net/go/mautrix v0.25.2
- github.com/zalando/go-keyring v0.2.6

Next: MatrixService bindings + Login/Home React screens + helpers
(matrix_client_init, mas_oidc_loopback, keyring_token_store).
2026-05-24 23:08:58 +02:00