chore(skills): add dev-cycle profile and switch docs to counter-prefix naming

Activate the skills plugin for this project with a project profile at
.claude/dev-cycle-profile.yml: server-focused inner-loop build/test,
scripts/check.sh as the audit regression gate, and the Gitea tracker
wired as the boss forward queue.

Set the naming policy to stable_per_directory_4digit (0001-slug.md) for
docs/specs and docs/plans, and rename the existing date-prefixed
artefacts to match. The one internal spec cross-link is updated.
This commit is contained in:
2026-06-01 13:56:58 +02:00
parent f957d9ddc6
commit a4ecad08ba
4 changed files with 69 additions and 1 deletions
+68
View File
@@ -0,0 +1,68 @@
# Project profile for the skills plugin (~/dev/skills).
# Schema: ~/dev/skills/docs/profile-schema.md
# The skill bodies read this file at the start of each invocation;
# there is no template-render step.
paths:
spec_dir: docs/specs
plan_dir: docs/plans
# Code roots the architect / quality reviewer walk. experiments/ is a
# deliberate sandbox (iterated autonomously) and stays out of review scope.
code_roots: [server, common, clients/desktop]
naming:
# 4-digit zero-padded counter prefix per directory (0001-slug.md). The
# counter is assigned in creation order and stable for the life of the
# file; deleted numbers are not recycled. brainstorm/planner scan the
# directory for the next free number before writing.
counter_dirs: [docs/specs, docs/plans]
policy: stable_per_directory_4digit
slug_separator: "-"
commands:
# Inner-loop build/test stay server-focused: the business logic lives in
# server/, and common/ is pulled in via path-dep, so a server build covers
# both. The full multi-world + Gradle sweep runs at cycle close (regression).
build: "cargo build --manifest-path server/Cargo.toml"
test: "cargo test --manifest-path server/Cargo.toml -j 4"
# CLAUDE.md: "cargo clippy hat immer Recht".
lint: "cargo clippy"
regression:
# Canonical integrity gate: fmt + clippy + build + test across all four
# Cargo worlds plus the Wear OS Gradle build. Exit code = number of FAIL
# stages.
- "scripts/check.sh"
# regress_whisper.sh is intentionally NOT here: it needs a live Whisper
# service (network) and is run on demand, not as a hermetic audit gate.
vocabulary:
cycle: cycle
subcycle: iteration
milestone: milestone
ledger_entry: contract
standing_reading:
always:
- CLAUDE.md
- "git log -10 --format=full"
# docs/projektplan.md is intentionally omitted here: at ~150 KB it is far
# too heavy to re-read on every agent dispatch. Read it explicitly when a
# task needs it.
git:
main_sacrosanct: true
only_orchestrator_commits: true
protected_branches: [main]
issue_tracker:
kind: gitea
close_marker: "closes #N"
url: "http://192.168.178.103:3000/Brummel/doctate"
list_cmd: "tea issues ls --repo Brummel/doctate --state open"
pipeline:
brainstorm: { gates: [planner] }
planner: { gates: [implement] }
implement: {}
audit: { mandatory_at: cycle_close }
debug: { trigger: bug, red_first: true }
boss: { user_invoked: true }
@@ -8,7 +8,7 @@
**Tech Stack:** Bash (zero new deps), Gradle/Kotlin DSL, Kotlin/Compose for the optional dev badge, Android manifest placeholders. **Tech Stack:** Bash (zero new deps), Gradle/Kotlin DSL, Kotlin/Compose for the optional dev badge, Android manifest placeholders.
**Spec:** [docs/specs/2026-05-20-watch-multi-profile-design.md](../specs/2026-05-20-watch-multi-profile-design.md) **Spec:** [docs/specs/0001-watch-multi-profile-design.md](../specs/0001-watch-multi-profile-design.md)
--- ---