Create native organizations and external projects #20

Merged
Gilles merged 1 commit from feat/15-native-orgs-external-projects into master 2026-10-28 22:55:24 +00:00
Owner

Closes #15

Frontend for argus/backend#26 (PR argus/backend#30) and the /me fields of argus/backend#27 (PR argus/backend#31). Merge after those are deployed.

Changes

  • API types: Organization.kind, Project.kind, Me.groups / Me.is_argus_admin; createNativeOrganization() and createExternalProject().
  • Project list: "Créer une organisation Argus" form, shown to Argus admins only; native organizations are labelled "Argus".
  • Organization page: kind label ("Organisation Argus" / "Organisation Forgejo"), "Créer un projet externe" form (errors explained: admin on the organization, free slug), Forgejo discovery hidden for native organizations, external projects labelled in the list.
  • Project page: "projet externe" label (from GET /projects/<o>/<r>/, non-blocking).
  • Report card: coverage files link to the Forgejo source view only when the report has a commit (a source/external report has none).
  • Tests: src/__tests__/ExternalProjects.spec.ts; default MSW handler for the project detail.

Checks

pnpm run test:unit (78 passed), vue-tsc -b, pnpm run build.

🤖 Generated with Claude Code

https://claude.ai/code/session_014BSmBtGWeFBD9z4mYm9SjA

Closes #15 Frontend for argus/backend#26 (PR argus/backend#30) and the `/me` fields of argus/backend#27 (PR argus/backend#31). Merge after those are deployed. ## Changes - API types: `Organization.kind`, `Project.kind`, `Me.groups` / `Me.is_argus_admin`; `createNativeOrganization()` and `createExternalProject()`. - Project list: "Créer une organisation Argus" form, shown to Argus admins only; native organizations are labelled "Argus". - Organization page: kind label ("Organisation Argus" / "Organisation Forgejo"), "Créer un projet externe" form (errors explained: admin on the organization, free slug), Forgejo discovery hidden for native organizations, external projects labelled in the list. - Project page: "projet externe" label (from `GET /projects/<o>/<r>/`, non-blocking). - Report card: coverage files link to the Forgejo source view only when the report has a commit (a source/external report has none). - Tests: `src/__tests__/ExternalProjects.spec.ts`; default MSW handler for the project detail. ## Checks `pnpm run test:unit` (78 passed), `vue-tsc -b`, `pnpm run build`. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_014BSmBtGWeFBD9z4mYm9SjA
feature: create native organizations and external projects
All checks were successful
ci / unit (pull_request) Successful in 1m25s
ci / publish (pull_request) Has been skipped
9afa5ede9c
- Argus admins (is_argus_admin from /me) get a form to create a native
  organization on the project list; native organizations are labelled.
- An organization page can create an external project (admin on the
  organization, enforced server-side), labels its kind and skips
  Forgejo discovery when native.
- The project page labels external projects; coverage files only link
  to the Forgejo source view when the report has a commit.

Closes #15

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014BSmBtGWeFBD9z4mYm9SjA
Author
Owner
<!-- argus-link-bot:argus/frontend --> 📊 [Rapports Argus pour cette PR](https://reports.stationmyr.net/argus/frontend/pr/20)
Gilles merged commit 2d995d7ec5 into master 2026-10-28 22:55:24 +00:00
Gilles deleted branch feat/15-native-orgs-external-projects 2026-10-28 22:55:25 +00:00
Sign in to join this conversation.
No description provided.