Convention: Architecture Component IDs

convention-architecture-ids Convention

active convention

Principle

Every board item carries an arch: label identifying which part of the system it touches. Labels are grouped by category. Use the most specific label that fits; fall back to the category-level label when nothing specific applies.

Naming Pattern

  • Lowercase, hyphenated: board-api, tailscale-funnel, ci-pipeline
  • Must be unique across all projects
  • No UUIDs — human-readable always

Infrastructure

IaC provisioning, deployment tooling, cluster operations.
Label Component
<code>arch:iac</code> IaC provisioning (tofu apply, service onboarding, DNS records)
<code>arch:infra</code> General infrastructure (catch-all for infra work)
<code>arch:terraform</code> Terraform/OpenTofu module or provider work
<code>arch:k3s</code> k3s cluster operations
<code>arch:k8s-deploy</code> ArgoCD + Kustomize deployment
<code>arch:deploy</code> Deployment pipeline (build → push → deploy)
<code>arch:kustomize</code> Kustomize overlays and patches
<code>arch:edge-proxy</code> Hetzner edge VPS + Caddy reverse proxy
<code>arch:salt</code> Salt states and pillars (Mac bootstrap, Caddy config)
<code>arch:secrets</code> SOPS, secret management

Platform Services

Shared services running on the cluster.
Label Component
<code>arch:postgres</code> CloudNativePG cluster
<code>arch:cnpg</code> CNPG operator-level work
<code>arch:harbor</code> Container registry
<code>arch:forgejo</code> Git hosting
<code>arch:argocd</code> GitOps controller
<code>arch:keycloak</code> SSO / identity provider
<code>arch:minio</code> Object storage
<code>arch:woodpecker</code> CI runner

Networking

Ingress, egress, network policies, DNS.
Label Component
<code>arch:tailscale-funnel</code> Public HTTPS ingress
<code>arch:tailscale-subnet</code> Subnet router for dev/CI access
<code>arch:network-policy</code> Kubernetes NetworkPolicy rules
<code>arch:network-security</code> Firewall, egress controls, hardening

Observability

Monitoring, alerting, dashboards.
Label Component
<code>arch:observability</code> General observability (catch-all)
<code>arch:monitoring</code> Monitoring stack configuration
<code>arch:grafana</code> Dashboards
<code>arch:prometheus</code> Metrics collection and rules
<code>arch:alertmanager</code> Alert routing (Telegram, etc.)
<code>arch:blackbox</code> Blackbox uptime probes
<code>arch:servicemonitor</code> ServiceMonitor resources

Agent / Automation

Claude Code harness, hooks, skills, agent system.
Label Component
<code>arch:agent</code> Agent definitions and behavior
<code>arch:agent-spawn</code> Agent spawn conventions and validation
<code>arch:hooks</code> Hook enforcement layer (PreToolUse, PostToolUse, SessionStart)
<code>arch:skills</code> Claude Code skills (review-ticket, validate-ticket, etc.)
<code>arch:enforcement</code> Defense-in-depth enforcement mechanisms
<code>arch:context-inject</code> Session and subagent personality/context injection
<code>arch:claude-custom</code> Claude Code configuration repo
<code>arch:worktree</code> Git worktree isolation

Pipelines

Automated workflows and quality gates.
Label Component
<code>arch:ci-pipeline</code> Woodpecker CI pipeline
<code>arch:review-pipeline</code> Scope review pipeline (backlog→todo gate)
<code>arch:validation-pipeline</code> Production validation pipeline (needs_approval→done gate)
<code>arch:ticket-authoring</code> Ticket creation and scope authoring

Application

App-level code, auth, APIs.
Label Component
<code>arch:app</code> Application code (catch-all)
<code>arch:api</code> API layer
<code>arch:frontend</code> Frontend / UI
<code>arch:auth</code> Authentication flow
<code>arch:rails</code> Rails application (models, controllers, views)

pal-e-docs

Knowledge base internals.
Label Component
<code>arch:board-api</code> Board/BoardItem entity and CRUD
<code>arch:note-system</code> Note/Block entity and rendering
<code>arch:mcp-tools</code> MCP server tools layer
<code>arch:kanban</code> Kanban board system

Docs / Process

Documentation, conventions, SOPs.
Label Component
<code>arch:docs</code> Documentation work
<code>arch:convention</code> Convention notes
<code>arch:process</code> Process and workflow changes

Usage on Board Items

  • template-ticket — documents arch: in Label Conventions
  • convention-blocker-labels — blocker: label patterns
  • sop-board-workflow — board items carry these labels