ActivitySummary

This commit is contained in:
2026-05-03 18:47:39 +02:00
parent eccfe74dc0
commit 359ac0c723
2 changed files with 5 additions and 3 deletions

View File

@@ -1,6 +1,6 @@
# CLAUDE.md – peakUp Project Guidelines
**Last updated:** 2026-04-06 | Single source of truth. Strict compliance required.
**Last updated:** 2026-05-03 | Single source of truth. Strict compliance required.
## 1. Core Rules
@@ -21,7 +21,8 @@
- **Backend**: Quarkus (Java 21), Hibernate, PostgreSQL/TimescaleDB
- **Frontend**: Vite + React 18 + TS + Tailwind + shadcn/ui
- **Model**: Shared domain models
- **Tools**: `peakup-maven` – Maven plugin with two mojos: `PackageInfoGeneratorMojo` (generates `package-info.java` with `@NonNull` per package) and `TypeScriptClientGeneratorMojo` (generates TS client from REST endpoints)
- **Tools**: `peakup-maven` – Maven plugin with two mojos: `PackageInfoGeneratorMojo` (generates `package-info.java`
with `@NonNull` per package) and `TypeScriptClientGeneratorMojo` (generates TS client from REST endpoints)
**Backend Architecture**:
@@ -37,6 +38,7 @@
- Strict NullAway + mandatory `final` where possible
- Lombok: `@Data`, `@NoArgsConstructor`, `@AllArgsConstructor`, `@Slf4j`
- Checkstyle: 4 spaces, 120 char, K&R braces, no star imports
- **Type safety is mandatory**: use native types throughout — `Instant`/`LocalDate` for dates, `Long`/`Integer` for IDs and counts, enums for fixed value sets. Never pass dates, IDs, or enums as `String` across layer boundaries. REST DTOs are the only exception — parse to native types immediately at the boundary.
- Use `AbstractEntity` and `AbstractTimestampedEntity`
- TimescaleDB hypertables via `AbstractTimescaleEntity`

View File

@@ -21,4 +21,4 @@ public abstract class AbstractTimestampedReadonlyService<E extends AbstractTimes
}
protected abstract D getDAO();
}
}