rename(phase 1): CapaKraken → Nexus across code, UI, docs, CI (#61)
CI / Architecture Guardrails (push) Successful in 2m38s
CI / Assistant Split Regression (push) Successful in 3m33s
CI / Typecheck (push) Successful in 3m51s
CI / Lint (push) Successful in 5m2s
CI / E2E Tests (push) Has been cancelled
CI / Fresh-Linux Docker Deploy (push) Has been cancelled
CI / Release Images (push) Has been cancelled
CI / Build (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled

rename(phase 1): CapaKraken → Nexus across code, UI, docs, CI (#61)

Co-authored-by: Hartmut Nörenberg <hn@hartmut-noerenberg.com>
Co-committed-by: Hartmut Nörenberg <hn@hartmut-noerenberg.com>
This commit was merged in pull request #61.
This commit is contained in:
2026-05-21 16:28:40 +02:00
committed by Hartmut
parent d9a7ec0338
commit b41c1d2501
943 changed files with 24548 additions and 16832 deletions
+48 -48
View File
@@ -6,7 +6,7 @@
## Problem
The Dispo Categories file defines a rich set of EID (employee) attributes that CapaKraken's Resource model currently does not cover. These attributes are needed for chargeability reporting, resource filtering, and organizational grouping.
The Dispo Categories file defines a rich set of EID (employee) attributes that Nexus's Resource model currently does not cover. These attributes are needed for chargeability reporting, resource filtering, and organizational grouping.
## Current Resource Model (relevant fields)
@@ -21,40 +21,40 @@ Resource {
### Attributes that need DB storage
| Attribute | Type | Source | Notes |
|---|---|---|---|
| Enterprise ID | String | manual/import | ACN-style username (e.g. "a.kasperovich") |
| Country | FK → Country | manual | See plan-country-sah-fte.md |
| Metro City | FK → MetroCity | manual | See plan-country-sah-fte.md |
| Org Unit (L7) | FK → OrgUnit | manual | See plan-org-unit-hierarchy.md |
| Management Level Group | FK → ManagementLevel | manual | See below |
| Management Level | derived from group | - | Sub-level within group |
| FTE | Float | manual | Already exists, ensure 2+ decimal precision |
| Resource Type | Enum | manual | Apprentice, Employee, Freelancer, Intern, Student |
| Chg Responsibility | Boolean | manual | Default: true. Drives "Accenture" resource type derivation |
| Rolled Off | Boolean | manual | Status flag, default: false |
| Departed | Boolean | manual | Status flag, default: false |
| Client Unit | FK → Client? or String | manual | Primary client assignment for reporting |
| Attribute | Type | Source | Notes |
| ---------------------- | ---------------------- | ------------- | ---------------------------------------------------------- |
| Enterprise ID | String | manual/import | ACN-style username (e.g. "a.kasperovich") |
| Country | FK → Country | manual | See plan-country-sah-fte.md |
| Metro City | FK → MetroCity | manual | See plan-country-sah-fte.md |
| Org Unit (L7) | FK → OrgUnit | manual | See plan-org-unit-hierarchy.md |
| Management Level Group | FK → ManagementLevel | manual | See below |
| Management Level | derived from group | - | Sub-level within group |
| FTE | Float | manual | Already exists, ensure 2+ decimal precision |
| Resource Type | Enum | manual | Apprentice, Employee, Freelancer, Intern, Student |
| Chg Responsibility | Boolean | manual | Default: true. Drives "Accenture" resource type derivation |
| Rolled Off | Boolean | manual | Status flag, default: false |
| Departed | Boolean | manual | Status flag, default: false |
| Client Unit | FK → Client? or String | manual | Primary client assignment for reporting |
### Attributes that are derived (no DB input)
| Attribute | Derivation Rule |
|---|---|
| Long-term absence | Derived from vacation/absence system (extended leave) |
| Chapter | Derived from OrgUnit L7 → name |
| Department | Derived from OrgUnit L6 → name |
| MV Ressource Type (reporting) | Derived: see resource type derivation rules |
| Attribute | Derivation Rule |
| ----------------------------- | ----------------------------------------------------- |
| Long-term absence | Derived from vacation/absence system (extended leave) |
| Chapter | Derived from OrgUnit L7 → name |
| Department | Derived from OrgUnit L6 → name |
| MV Ressource Type (reporting) | Derived: see resource type derivation rules |
### Resource Type Derivation for Reporting
The chargeability report uses a "MV Ressource Type" that differs from the stored Resource Type:
| Reporting Type | Derivation Rule |
|---|---|
| Production Studios | `chgResponsibility = true` AND country is Germany |
| Near&Offshore | Country is NOT Germany AND resource type is Employee/Freelancer |
| Accenture | `chgResponsibility = false` (regardless of country) |
| Long-term absence | Has active long-term absence flag |
| Reporting Type | Derivation Rule |
| ------------------ | --------------------------------------------------------------- |
| Production Studios | `chgResponsibility = true` AND country is Germany |
| Near&Offshore | Country is NOT Germany AND resource type is Employee/Freelancer |
| Accenture | `chgResponsibility = false` (regardless of country) |
| Long-term absence | Has active long-term absence flag |
These are computed at query time, not stored. An admin UI can make the country→reporting-type mapping configurable.
@@ -91,14 +91,14 @@ model ManagementLevel {
### Seed Data
| Group | Target % | Levels |
|---|---|---|
| Accenture Leadership | 36.5% | *(levels 1-4, names TBD)* |
| Senior Manager | 54.6% | 5-Associate Director, 6-Senior Manager |
| Manager | 74.7% | 7-Manager |
| Consultant | 80.8% | 8-Associate Manager, 9-Team Lead/Consultant |
| Analyst | 80.5% | 10-Senior Analyst, 11-Analyst |
| Associate | 77.0% | 12-Associate, 13-New Associate |
| Group | Target % | Levels |
| -------------------- | -------- | ------------------------------------------- |
| Accenture Leadership | 36.5% | _(levels 1-4, names TBD)_ |
| Senior Manager | 54.6% | 5-Associate Director, 6-Senior Manager |
| Manager | 74.7% | 7-Manager |
| Consultant | 80.8% | 8-Associate Manager, 9-Team Lead/Consultant |
| Analyst | 80.5% | 10-Senior Analyst, 11-Analyst |
| Associate | 77.0% | 12-Associate, 13-New Associate |
## Schema Changes on Resource
@@ -140,19 +140,19 @@ enum ResourceType {
Add to `ResourceModal.tsx`:
| Field | UI Element | Notes |
|---|---|---|
| Enterprise ID | Text input | Optional, unique |
| Country | Dropdown | Required for SAH |
| Metro City | Dropdown (filtered by country) | Optional |
| Org Unit | Cascading L5→L6→L7 picker | Stores L7 |
| Management Level Group | Dropdown | Drives target % |
| Management Level | Dropdown (filtered by group) | Specific level |
| Resource Type | Dropdown (5 values) | Default: Employee |
| Chg Responsibility | Toggle | Default: on |
| Client Unit | Client picker | Primary client for reporting |
| Rolled Off | Toggle | Status |
| Departed | Toggle | Status |
| Field | UI Element | Notes |
| ---------------------- | ------------------------------ | ---------------------------- |
| Enterprise ID | Text input | Optional, unique |
| Country | Dropdown | Required for SAH |
| Metro City | Dropdown (filtered by country) | Optional |
| Org Unit | Cascading L5→L6→L7 picker | Stores L7 |
| Management Level Group | Dropdown | Drives target % |
| Management Level | Dropdown (filtered by group) | Specific level |
| Resource Type | Dropdown (5 values) | Default: Employee |
| Chg Responsibility | Toggle | Default: on |
| Client Unit | Client picker | Primary client for reporting |
| Rolled Off | Toggle | Status |
| Departed | Toggle | Status |
### Admin: Management Level Management (`/admin/management-levels`)