Skip to content

[Epic 7] Story 7.1 IDAM core service skeleton #284

@casibbald

Description

@casibbald

Part of Epic #279

Story 7.1 — IDAM core service skeleton

GitHub issue: #284
Epic: Epic 7 — IDAM core implementation

Overview

Create the IDAM core service skeleton: BRRTRouter codegen from the reference IDAM core OpenAPI (from Epic 6) or a shared library that an IDAM service uses. Config: GoTrue base URL and path prefix so the service can proxy to Supabase Auth.

Diagram: Build options (codegen vs library)

flowchart TB
  subgraph OptionA["Option A: Codegen"]
    SpecA["idam-core.openapi.yaml"]
    CodegenA["BRRTRouter codegen"]
    BinaryA["IDAM service binary"]
    SpecA --> CodegenA --> BinaryA
  end
  subgraph OptionB["Option B: Library"]
    Lib["idam_core library"]
    App["IDAM service app"]
    Ext["Extension routes"]
    App --> Lib
    App --> Ext
  end
Loading

Diagram: IDAM core service and config

flowchart LR
  subgraph IDAM["IDAM core service"]
    Routes["Generated / library routes"]
    Handlers["Handlers → GoTrue client"]
    Routes --> Handlers
  end
  Config["Config: GOTRUE_BASE_URL, path prefix"] --> IDAM
  IDAM --> GoTrue["Supabase GoTrue"]
Loading

Delivery

  • Option A: Run BRRTRouter codegen on reference idam-core.openapi.yaml → IDAM service binary with routes; handlers delegate to GoTrue client (Story 7.2).
  • Option B: Shared library (e.g. idam_core) that exposes the same route/handler surface; IDAM service depends on it and adds extension routes.
  • Config: GOTRUE_BASE_URL (or equivalent), path prefix if needed; document for local and K8s deployment.

Acceptance criteria

  • IDAM core service skeleton exists (codegen or library).
  • Config for GoTrue base URL (and optional path prefix) is documented and wired.
  • Service (or library) can be built and run; handlers can be stubbed or delegate to GoTrue client (Story 7.2).

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions