From 39f47a859bbf4880b9f09ddf2f331590b8b3b42c Mon Sep 17 00:00:00 2001 From: Julien Gautier Date: Tue, 2 Jun 2026 10:28:30 +0200 Subject: [PATCH] fix(gitignore): ignore infra/*-tenant.personas.json (ADR-0026) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The per-persona Entra oid map consumed by prisma/seed.ts was missing the matching ignore pattern when the personas seed work landed. infra/test-tenant.personas.json has been showing up as untracked (??) across multiple sessions, exposing it to an accidental 'git add .'. Mirror the existing *-tenant.entra.json pattern: ignore the tenant-private file, keep the .example.json template tracked. Verified via 'git log --all -- infra/test-tenant.personas.json' that no commit ever referenced this path, so no history rewrite needed — pure forward-only fix. --- .gitignore | 5 +++++ infra/README.md | 19 ++++++++++--------- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index 338bc35..97097aa 100644 --- a/.gitignore +++ b/.gitignore @@ -35,6 +35,11 @@ pnpm-debug.log* infra/*-tenant.entra.json !infra/*-tenant.entra.example.json +# Tenant-private Entra per-persona oids consumed by prisma/seed.ts +# (ADR-0026 §"Seed personas"). Same pattern — commit only the example. +infra/*-tenant.personas.json +!infra/*-tenant.personas.example.json + # OS / editor scrap .DS_Store Thumbs.db diff --git a/infra/README.md b/infra/README.md index 435a9c7..eae4337 100644 --- a/infra/README.md +++ b/infra/README.md @@ -2,15 +2,16 @@ Infrastructure-as-code artefacts for the project. Separate from application code and from documentation: this folder contains the recipes and configs that the team and ops use to stand up running infrastructure (CI runners, future local-dev databases, future on-prem deploy assets). -| Subject | File / Folder | ADR / Reference | -| -------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Self-hosted CI runners (Gitea Actions) | [`ci-runners.compose.yml`](ci-runners.compose.yml) | [ADR-0015 §"Runners"](../docs/decisions/0015-cicd-gitea-actions.md) | -| Shared `act_runner` configuration | [`runner-config.yaml`](runner-config.yaml) | [ADR-0015 §"Runners"](../docs/decisions/0015-cicd-gitea-actions.md) | -| CI runners convenience script | [`ci-runners.sh`](ci-runners.sh) | See "Convenience script" below | -| Runtime state of the runners | `data/` (git-ignored after `.gitignore`) | — | -| Env-vars template for the runners | `.env.example` (`.env` is git-ignored) | — | -| Local-dev runtime stack | [`local/`](local/) | [ADR-0006](../docs/decisions/0006-persistence-postgresql-prisma.md), [ADR-0010](../docs/decisions/0010-session-management-redis.md), [ADR-0012](../docs/decisions/0012-observability-pino-opentelemetry.md), [ADR-0013](../docs/decisions/0013-audit-trail-separated-postgres-append-only.md) | -| Entra group GUID → role slug map | [`test-tenant.entra.example.json`](test-tenant.entra.example.json) (`*-tenant.entra.json` is git-ignored) | [ADR-0025 §"Sources of truth — Entra-side configuration"](../docs/decisions/0025-authorization-model-privileges-roles-scopes.md) | +| Subject | File / Folder | ADR / Reference | +| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Self-hosted CI runners (Gitea Actions) | [`ci-runners.compose.yml`](ci-runners.compose.yml) | [ADR-0015 §"Runners"](../docs/decisions/0015-cicd-gitea-actions.md) | +| Shared `act_runner` configuration | [`runner-config.yaml`](runner-config.yaml) | [ADR-0015 §"Runners"](../docs/decisions/0015-cicd-gitea-actions.md) | +| CI runners convenience script | [`ci-runners.sh`](ci-runners.sh) | See "Convenience script" below | +| Runtime state of the runners | `data/` (git-ignored after `.gitignore`) | — | +| Env-vars template for the runners | `.env.example` (`.env` is git-ignored) | — | +| Local-dev runtime stack | [`local/`](local/) | [ADR-0006](../docs/decisions/0006-persistence-postgresql-prisma.md), [ADR-0010](../docs/decisions/0010-session-management-redis.md), [ADR-0012](../docs/decisions/0012-observability-pino-opentelemetry.md), [ADR-0013](../docs/decisions/0013-audit-trail-separated-postgres-append-only.md) | +| Entra group GUID → role slug map | [`test-tenant.entra.example.json`](test-tenant.entra.example.json) (`*-tenant.entra.json` is git-ignored) | [ADR-0025 §"Sources of truth — Entra-side configuration"](../docs/decisions/0025-authorization-model-privileges-roles-scopes.md) | +| Per-persona Entra `oid` map | [`test-tenant.personas.example.json`](test-tenant.personas.example.json) (`*-tenant.personas.json` is git-ignored) | [ADR-0026 §"Seed personas"](../docs/decisions/0026-person-user-portal-data-model.md) — consumed by `apps/portal-bff/prisma/seed.ts` | Future folders / files that will land here as the corresponding ADRs ship: