Commit Graph

  • 9671345634 Wait for the event and meeting point counts together in the direct sign-up tests fp-001-inscription-directe Sylvain Duchesne 2026-11-06 23:30:05 +01:00
  • ebcf5f4266 Run the direct sign-up e2e scenarios on disposable accounts deleted after each scenario Sylvain Duchesne 2026-11-06 23:24:57 +01:00
  • 9169a5817c Report a Join on an event without an attendees list as not recorded, and trim redundant comments Sylvain Duchesne 2026-11-06 23:21:38 +01:00
  • 5540d361c7 Implement direct sign-up to an event with registration derived from meeting point memberships Sylvain Duchesne 2026-11-06 23:16:29 +01:00
  • af0cba6920 Adapt the failing direct sign-up tests to the declarer notification decision Sylvain Duchesne 2026-11-06 23:09:48 +01:00
  • 9cbe78948b Record direct sign-up to an event as a decision, with the declarer notified and confidentiality unchanged, and amend the doctrine that forbade it Sylvain Duchesne 2026-11-06 23:02:36 +01:00
  • 4abab5a55a Write the failing tests for direct sign-up to an event Sylvain Duchesne 2026-11-06 22:57:46 +01:00
  • f45fc564ec Design direct sign-up to an event, with registration derived from meeting point memberships Sylvain Duchesne 2026-11-06 22:45:52 +01:00
  • 9e2df2478b Deliver Join and Leave to the app's inbox instead of an unaddressed outbox post main Sylvain Duchesne 2026-11-03 18:31:24 +01:00
  • ea359488b6 Load the backend's env files from its own directory Sylvain Duchesne 2026-11-02 21:50:24 +01:00
  • 223059c629 Run the pod provider from images with make start, and fix what a fresh stack exposed Sylvain Duchesne 2026-11-02 21:46:37 +01:00
  • 5e3e821e2a Run locally like the sibling apps: fixed ports, the pod provider in Docker, the app outside Sylvain Duchesne 2026-11-01 11:40:27 +01:00
  • 908f7ea973 Keep sign-ups unlinkable on ActivityPods, and land the pending coherence-pass work Sylvain Duchesne 2026-10-30 17:06:38 +01:00
  • f90651eb9a Name the datasets as the sibling apps do Sylvain Duchesne 2026-10-19 17:52:15 +02:00
  • 5b61ce9905 Compute the dataset names in the compose, with no overridable wrapper Sylvain Duchesne 2026-10-19 17:44:51 +02:00
  • a28a318c24 Deploy to the Coolify test server: docker-compose.coolify.yml Sylvain Duchesne 2026-10-19 16:44:09 +02:00
  • 738d59596a Serve the backend under a base path: one URL per environment, the backend under /api Sylvain Duchesne 2026-10-19 16:44:09 +02:00
  • 8d0670a637 The backend image starts: approve the native builds, compile sharp against the system libvips Sylvain Duchesne 2026-10-19 16:44:09 +02:00
  • 812844e99d Never show a raw identifier as a person's name, handle or initials Sylvain Duchesne 2026-10-13 20:58:06 +02:00
  • 6ee95c9e68 Record the public-data and rights-matrix work in the handoff, the usage declaration and the doctrine Sylvain Duchesne 2026-10-13 18:11:34 +02:00
  • 9381c206df One sign-in drive for every e2e, the public surface and visibility in the rights matrix, and the stack gates in validate Sylvain Duchesne 2026-10-13 18:11:34 +02:00
  • 88f23b7023 Harden the backend's trust surface: an allow-listed public surface, decisions taken on data re-read from the pod Sylvain Duchesne 2026-10-13 16:30:52 +02:00
  • d38f8a7384 Add the end-to-end rights matrix as a runnable gate: bun run test:e2e-rights Sylvain Duchesne 2026-10-13 14:49:39 +02:00
  • 6bcf40306b Keep a join or a leave on screen until a read taken after it confirms it Sylvain Duchesne 2026-10-13 10:57:21 +02:00
  • f14cc37f4c List only Festipod-public events in the catalog, and only let an owner change their entry Sylvain Duchesne 2026-10-12 17:08:24 +02:00
  • fbb1f6f61b Open another user's event from Découvrir: detail, meeting points, counts and join Sylvain Duchesne 2026-10-12 17:00:42 +02:00
  • a0d2cb8f73 Make events and meeting points readable by anyone only when Festipod marks them public Sylvain Duchesne 2026-10-12 16:59:00 +02:00
  • d4fcb7e311 Log out when the app was removed from the pod instead of re-asking consent Sylvain Duchesne 2026-10-12 16:27:02 +02:00
  • f32e166601 Persist the catalog index across backend restarts and de-index deleted events Sylvain Duchesne 2026-10-12 16:15:58 +02:00
  • 4fc856fa7e Detect a revoked or stale app registration and leave the broken connected view Sylvain Duchesne 2026-10-12 16:07:14 +02:00
  • e21c408dc1 List other users' events in Découvrir: own pod events joined with the backend catalog Sylvain Duchesne 2026-10-12 15:22:30 +02:00
  • 706ee132da Bank the full login flow as an e2e gate and un-suspend join-to-collection: 5/5 smoke, programmatic app install for the test user Sylvain Duchesne 2026-10-12 14:02:36 +02:00
  • a61c8704c9 Close the login loop end-to-end: client_id is the app actor uri, actor path serves the OIDC client document via a boot-safe service, startup heals the access-need-group link, stack aligned on pod provider v2.3.12 Sylvain Duchesne 2026-10-12 13:12:38 +02:00
  • 18fc71ff36 Record the verify drift shim and the reinstall step in the handoff Sylvain Duchesne 2026-10-12 11:24:50 +02:00
  • 6b48b24350 Shim the app-registrations verify for the pod provider drift: satisfiesAccessNeed lives on DataGrants Sylvain Duchesne 2026-10-12 11:23:45 +02:00
  • 77d567b445 Cap the sign-in column on desktop — full-width buttons stay right on mobile Sylvain Duchesne 2026-10-12 11:04:18 +02:00
  • 799de590aa Record the cleared client_id half of the app-install blocker in the handoff Sylvain Duchesne 2026-10-12 11:02:21 +02:00
  • 3aa9131a01 Serve a Solid-OIDC Client ID Document at /app for the OIDC adapter fetch, keeping the app actor for SAI Sylvain Duchesne 2026-10-12 11:01:34 +02:00
  • 84a0882d32 Document the root .env copy for manual app serving — without it the app falls back to the local demo Sylvain Duchesne 2026-10-12 10:37:35 +02:00
  • 659d7652c4 Move the Festipod app to :4000 — :5000 belongs to the pod provider frontend in the local stack Sylvain Duchesne 2026-10-12 10:33:07 +02:00
  • 8dfc574346 Close the adversarial review round: auth hardening, data fidelity against the platform context, backend grants and docker coherence Sylvain Duchesne 2026-10-10 09:54:53 +02:00
  • 13d9f179ef Record the executed state of the ActivityPods integration at the T04 tree close Sylvain Duchesne 2026-10-09 21:21:27 +02:00
  • f8c2e3b809 Suspend the NextGraph suites, and smoke the ActivityPods stack Sylvain Duchesne 2026-10-09 21:18:51 +02:00
  • c195211629 Rewrite FestipodDataContext over the Refine seam, meeting-point centric Sylvain Duchesne 2026-10-09 21:04:35 +02:00
  • b09884d586 ActivityPods Solid-OIDC auth flow in AuthGate with pod provider picker and /login callback Sylvain Duchesne 2026-10-09 14:07:47 +02:00
  • e17398d86d T04.f: backend Festipod ActivityPods + dockerisation Sylvain Duchesne 2026-10-09 13:51:02 +02:00
  • e27cfa4e0a The ActivityPods backend registers as the default behind the seam Sylvain Duchesne 2026-10-09 13:37:28 +02:00
  • 9823a45bab Decide the participation arbitration route, and document the local platform setup Sylvain Duchesne 2026-10-09 11:28:46 +02:00
  • 21b1223b84 Add ActivityPods refine-providers dependency and backend package Sylvain Duchesne 2026-10-09 11:12:55 +02:00
  • b1add6d8c8 Record the registration precedent, and the event-in-event feasibility without new shapes Sylvain Duchesne 2026-10-09 10:26:25 +02:00
  • 184998a343 Record the ActivityPods-first directives, and what the reference reconnaissance established Sylvain Duchesne 2026-10-09 09:48:52 +02:00
  • df1db790ad The URL says which provider set runs, and the seam stops claiming otherwise Sylvain Duchesne 2026-10-08 10:08:40 +02:00
  • e282384e00 The Refine seam travels to this base, deliberately unwired Sylvain Duchesne 2026-10-05 18:46:32 +02:00
  • 412e5d63e7 Observe the ActivityPods providers instead of asking them what they do festipod-refine Sylvain Duchesne 2026-10-02 11:38:23 +02:00
  • d48297fe94 Declare what Festipod needs from ActivityPods, rather than guess it Sylvain Duchesne 2026-10-01 20:14:37 +02:00
  • a5f6e01562 Persist the meeting point, and absorb the prefix the generator drops Sylvain Duchesne 2026-10-01 19:58:21 +02:00
  • 33b4588da4 Remove what the migration left unreachable, and record what it left broken Sylvain Duchesne 2026-10-01 19:24:57 +02:00
  • 0c4f6b6650 Derive the participant count instead of incrementing it Sylvain Duchesne 2026-10-01 18:35:24 +02:00
  • b25bafbb90 Correct what the contract says about the participant count Sylvain Duchesne 2026-10-01 16:38:16 +02:00
  • 3de86c8be2 Withdraw the ng-org backend, keep the seam that will carry the next two Sylvain Duchesne 2026-10-01 16:26:11 +02:00
  • 4b4dfa6cad Put every persisted entity on Refine, and the test bridge on the app's view Sylvain Duchesne 2026-10-01 15:45:55 +02:00
  • 974d251079 Rotate the bloated test profile before opening the wallet Sylvain Duchesne 2026-10-01 15:45:41 +02:00
  • fd02570b8b Widen the backend contract from one entity to the set Sylvain Duchesne 2026-10-01 12:29:30 +02:00
  • efdfcac4c1 Make the Refine backend a choice rather than a wiring Sylvain Duchesne 2026-09-28 16:08:13 +02:00
  • 750538bd73 Take the sibling branch's answer for the seed step, instead of a rewrite Sylvain Duchesne 2026-09-21 16:47:37 +02:00
  • 20b3ef8712 Seed only what the tests need, and record that it did not speed anything up Sylvain Duchesne 2026-09-21 15:52:31 +02:00
  • ff285455d2 Say where the auto-seed flag can actually arrive Sylvain Duchesne 2026-09-21 14:12:03 +02:00
  • 35df3e9110 Decide the seed on the caller's view, and take the sibling branch's answers Sylvain Duchesne 2026-09-21 14:08:58 +02:00
  • db483726af Install with pnpm, as the sibling branch does Sylvain Duchesne 2026-09-21 13:55:32 +02:00
  • 46abbf2e64 Wait for the ORM subscription before seeding into it Sylvain Duchesne 2026-09-21 13:53:19 +02:00
  • 753282c7b1 Absorb the useShape contract change the provider versions require Sylvain Duchesne 2026-09-21 12:17:40 +02:00
  • d237753916 Mount the @data harness inside Refine, and stop the bundle leaking globals Sylvain Duchesne 2026-09-21 12:13:12 +02:00
  • 33d54c6e3e WIP: events read and written through Refine Sylvain Duchesne 2026-09-21 11:58:32 +02:00
  • c7cda38235 Name the script for what it does, now that it serves two providers ng-eventually Sylvain Duchesne 2026-08-17 12:35:28 +02:00
  • 7124750874 The indexing package installs, and there is still one verifier Sylvain Duchesne 2026-08-17 12:30:25 +02:00
  • 319e7082cc Re-pin the indexing engagement on the version that can be installed Sylvain Duchesne 2026-08-17 12:26:21 +02:00
  • 279faa4541 Retire a caveat the fix made false, and turn a stale warning into a technique Sylvain Duchesne 2026-08-17 11:40:33 +02:00
  • 9e4374b678 Persist the dates the form always collected and always threw away Sylvain Duchesne 2026-08-17 11:30:57 +02:00
  • 32c2302c91 Deployed, and it signs people in Sylvain Duchesne 2026-08-17 10:48:35 +02:00
  • 61cbe6905d Trigger a redeploy: first run with the injected wallet and the external data layer Sylvain Duchesne 2026-08-17 10:34:49 +02:00
  • 95479ebe77 The image builds, serves the injected wallet, and asks for its configuration Sylvain Duchesne 2026-08-17 10:22:07 +02:00
  • c3d64555d9 The data layer is a real external dependency, pinned to a commit Sylvain Duchesne 2026-08-17 10:17:53 +02:00
  • ac29735d20 A deployment can carry the wallet in its environment, not on a mounted disk Sylvain Duchesne 2026-08-17 09:34:19 +02:00
  • e780c5246c The count defect was two things; only the one that is not ours is left Sylvain Duchesne 2026-08-17 00:10:16 +02:00
  • 0d925c7cb9 One inbox per document: the sign-up's deposit now lands where the owner is looking Sylvain Duchesne 2026-08-17 00:02:27 +02:00
  • ff26f26e60 Close the fixed blocker, and record what withdrawal converging faster does NOT mean Sylvain Duchesne 2026-08-16 22:40:08 +02:00
  • ac55dc96a4 A refreshed data-layer package never reaches a running dev server Sylvain Duchesne 2026-08-16 22:06:52 +02:00
  • 4148df8fcb Record what running the flow proved, and fix the leaf that caused one defect Sylvain Duchesne 2026-08-16 16:46:10 +02:00
  • fa934ccdc6 Production serves from source, so it must fetch its config like everything else Sylvain Duchesne 2026-08-16 16:27:00 +02:00
  • cebd54c978 The doctrine says what the code does again Sylvain Duchesne 2026-08-16 15:25:34 +02:00
  • 13eb2c4a15 Waits that say ten seconds now wait ten seconds, and editing checks you may Sylvain Duchesne 2026-08-16 15:16:46 +02:00
  • db3dbba294 No fixture seed, no event host, and the edit affordance stops lying Sylvain Duchesne 2026-08-16 14:50:34 +02:00
  • 9740841820 A demo wallet keeps working: pick one of my own profiles, and say it is arbitrary Sylvain Duchesne 2026-08-16 13:53:00 +02:00
  • df971df135 Who I am comes from signing in; my profile is the document I own Sylvain Duchesne 2026-08-16 13:50:50 +02:00
  • 53c0e095cf Code against the polyfill's published contract, and nothing else Sylvain Duchesne 2026-08-16 12:33:14 +02:00
  • 47af46fd09 Probe a protected ENTITY, not the protected store, in the connections scenario Sylvain Duchesne 2026-08-03 14:10:44 +02:00
  • c1817607b4 Migrate Festipod onto the rebuilt @ng-eventually/client surface Sylvain Duchesne 2026-08-03 13:53:32 +02:00
  • 05ee576d7d refactor(comments): retirer les raisonnements sur l'état de NextGraph du code app Sylvain Duchesne 2026-07-28 17:17:47 +02:00
  • 7459d49e83 docs+fix: recadrer le polyfill comme compensateur d'écart, corriger la doctrine périmée Sylvain Duchesne 2026-07-28 16:49:27 +02:00
  • b6a6b14fad docs(concept): passer les 59 fiches de doctrine en anglais Sylvain Duchesne 2026-07-28 16:27:24 +02:00