chore: rename CLAUDE.md to AGENTS.md, add symlink and docs/templates
Adds tool-agnostic AGENTS.md as canonical context file, CLAUDE.md symlink for Claude Code compatibility, and docs/templates/ with spec.md + adr.md. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
45
AGENTS.md
Normal file
45
AGENTS.md
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
# Music Hub
|
||||||
|
|
||||||
|
Webapp für Label-Kollaboration. Stack: SvelteKit + Hono + Postgres.
|
||||||
|
|
||||||
|
## Aktueller Stand
|
||||||
|
|
||||||
|
<!-- Zuletzt aktualisiert: 2026-04-13 via /save -->
|
||||||
|
|
||||||
|
**Sprint / Phase:** STEM-Feature + Bugfixes
|
||||||
|
|
||||||
|
**Zuletzt implementiert:**
|
||||||
|
- STEM-Support: Multi-File-Upload, ZIP-Download, StemList-Tab in Track-View
|
||||||
|
- Presigned URL fix: `ContentLength` entfernt (S3-Upload-Fehler)
|
||||||
|
- macOS Multi-Select fix: `accept="audio/*"` statt Extensions
|
||||||
|
- `/simplify`-Cleanup: async zip(), Null-Check, formatFileSize, Typ-Dedup
|
||||||
|
|
||||||
|
**Als nächstes:**
|
||||||
|
- STEM-Upload testen (Deploy läuft, noch nicht vom User bestätigt)
|
||||||
|
- RESEND_API_KEY setzen → echter E-Mail-Versand
|
||||||
|
- DB `is_public` nach Tests wieder deaktivieren
|
||||||
|
|
||||||
|
**Offene Punkte:**
|
||||||
|
- Upload-Fehler könnte noch S3-CORS sein (noch nicht ausgeschlossen)
|
||||||
|
|
||||||
|
## Decisions
|
||||||
|
|
||||||
|
`docs/decisions/` — Architecture Decision Records für nicht-offensichtliche Entscheidungen.
|
||||||
|
Template: `docs/templates/adr.md`
|
||||||
|
Anlegen wenn: Alternative verworfen, Constraint akzeptiert, Richtungsentscheidung getroffen.
|
||||||
|
|
||||||
|
## Specs
|
||||||
|
|
||||||
|
`specs/` — ein File pro Sprint oder Feature, bevor Code geschrieben wird.
|
||||||
|
Template: `docs/templates/spec.md`
|
||||||
|
|
||||||
|
Konvention:
|
||||||
|
- Neues Sprint/Feature → erst `specs/sprint-N.md` oder `specs/feature-name.md` anlegen
|
||||||
|
- Kanban-Task verlinkt auf die Spec-Datei
|
||||||
|
- Aktive Spec steht im `## Aktueller Stand`
|
||||||
|
|
||||||
|
## Kanban
|
||||||
|
|
||||||
|
Board-ID: `cfddb658-6f5b-4d36-b311-369307a5fc51`
|
||||||
|
|
||||||
|
Konvention: Bei Session-Start `get-board-info` aufrufen und offene Tasks zeigen. Aktive Tasks nach In Progress ziehen, erledigte nach Done.
|
||||||
45
CLAUDE.md
45
CLAUDE.md
@@ -1,45 +0,0 @@
|
|||||||
# Music Hub
|
|
||||||
|
|
||||||
Webapp für Label-Kollaboration. Stack: SvelteKit + Hono + Postgres.
|
|
||||||
|
|
||||||
## Aktueller Stand
|
|
||||||
|
|
||||||
<!-- Zuletzt aktualisiert: 2026-04-13 via /save -->
|
|
||||||
|
|
||||||
**Sprint / Phase:** Deploy + erster Klienten-Test
|
|
||||||
|
|
||||||
**Zuletzt implementiert:**
|
|
||||||
- App live auf hub.mydrugismusic.com (Registrierung, Login funktionieren)
|
|
||||||
- Coolify-Deploy via Webhook-Script (kein UI nötig, im Memory dokumentiert)
|
|
||||||
- DATABASE_URL auf public port umgestellt (interner Coolify-Hostname war nicht erreichbar)
|
|
||||||
- README geschrieben und gepusht
|
|
||||||
|
|
||||||
**Als nächstes:**
|
|
||||||
- RESEND_API_KEY setzen → echter E-Mail-Versand
|
|
||||||
- App-Bugs fixen (User: „man kann quasi nichts machen außer Profil/Karte")
|
|
||||||
- DB `is_public` nach Tests wieder deaktivieren
|
|
||||||
|
|
||||||
**Offene Punkte:**
|
|
||||||
- Interner Coolify-Netzwerkfehler (API→DB via UUID-Hostname) ungeklärt
|
|
||||||
|
|
||||||
## Decisions
|
|
||||||
|
|
||||||
`docs/decisions/` — Architecture Decision Records für nicht-offensichtliche Entscheidungen.
|
|
||||||
Template: `~/.claude/templates/adr.md`
|
|
||||||
Anlegen wenn: Alternative verworfen, Constraint akzeptiert, Richtungsentscheidung getroffen.
|
|
||||||
|
|
||||||
## Specs
|
|
||||||
|
|
||||||
`specs/` — ein File pro Sprint oder Feature, bevor Code geschrieben wird.
|
|
||||||
Template: `~/.claude/templates/spec.md`
|
|
||||||
|
|
||||||
Konvention:
|
|
||||||
- Neues Sprint/Feature → erst `specs/sprint-N.md` oder `specs/feature-name.md` anlegen
|
|
||||||
- Kanban-Task verlinkt auf die Spec-Datei
|
|
||||||
- Aktive Spec steht im `## Aktueller Stand`
|
|
||||||
|
|
||||||
## Kanban
|
|
||||||
|
|
||||||
Board-ID: `cfddb658-6f5b-4d36-b311-369307a5fc51`
|
|
||||||
|
|
||||||
Konvention: Bei Session-Start `get-board-info` aufrufen und offene Tasks zeigen. Aktive Tasks nach In Progress ziehen, erledigte nach Done.
|
|
||||||
21
docs/templates/adr.md
vendored
Normal file
21
docs/templates/adr.md
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
# ADR-[Nummer]: [Titel]
|
||||||
|
|
||||||
|
**Datum:** [YYYY-MM-DD]
|
||||||
|
**Status:** Proposed | Accepted | Deprecated | Superseded by ADR-[N]
|
||||||
|
|
||||||
|
## Kontext
|
||||||
|
|
||||||
|
Was war die Situation, warum musste eine Entscheidung getroffen werden?
|
||||||
|
|
||||||
|
## Entscheidung
|
||||||
|
|
||||||
|
Was wurde entschieden?
|
||||||
|
|
||||||
|
## Alternativen die verworfen wurden
|
||||||
|
|
||||||
|
- **[Alternative A]** — warum nicht
|
||||||
|
- **[Alternative B]** — warum nicht
|
||||||
|
|
||||||
|
## Konsequenzen
|
||||||
|
|
||||||
|
Was wird durch diese Entscheidung einfacher, was schwieriger?
|
||||||
29
docs/templates/spec.md
vendored
Normal file
29
docs/templates/spec.md
vendored
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
# [Feature- oder Sprint-Name]
|
||||||
|
|
||||||
|
**Status:** Draft | Active | Done
|
||||||
|
**Repo:** [repo]
|
||||||
|
**Erstellt:** [YYYY-MM-DD]
|
||||||
|
|
||||||
|
## Ziel
|
||||||
|
|
||||||
|
Ein Satz.
|
||||||
|
|
||||||
|
## Warum
|
||||||
|
|
||||||
|
Warum jetzt, warum das.
|
||||||
|
|
||||||
|
## In Scope
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Out of Scope
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Erfolgskriterien
|
||||||
|
|
||||||
|
- [ ]
|
||||||
|
|
||||||
|
## Implementierungsnotizen
|
||||||
|
|
||||||
|
<!-- Schlüsselentscheidungen, Constraints, offene Fragen -->
|
||||||
Reference in New Issue
Block a user