Decisions

  • Pending: Which rules belong in .claude/rules/ (global) vs CLAUDE.md?
  • Pending: Keep path-scoped rules as a pattern for later, or global-only?

User Tasks


Summary

Move previously path-scoped rules into .claude/rules/ as global rules, keeping all .claude/ config in the project root.

Problem / Motivation

Two path-scoped rule files existed (vault/10_features/.claude/rules and src/.claude/rules) containing valuable conventions for feature requests and Python coding. They were removed because the user wants a single .claude/ folder at the project root. The knowledge in those files is now unloaded.

Content to Restore

Feature request rules (was vault/10_features/.claude/rules)

  • Naming: FR-XXX-short-description.md (lowercase, hyphens). Increment from highest existing FR number.
  • Lifecycle stages: ideas → new → planned → in-progress → done
  • Gates: new → planned requires user approval. Never implement without approval.
  • Dashboard sync on stage changes
  • Open questions tracked in decision log
  • Design doc extraction to vault/00_system/designs/
  • Template usage: copy _templates/feature-request.md

Coding standards (was src/.claude/rules)

  • Read existing code before modifying. Check decision log before architectural decisions.
  • Stack: Python 3.12+, uv, ruff, pytest, mypy (strict)
  • Monorepo layout: src/<package>/ with own pyproject.toml
  • Code style: type hints on public functions, absolute imports, no bare except, dataclasses/Pydantic over dicts
  • Testing: tests/ at root, pytest fixtures, parametrize, reproducing tests for bugs
  • Post-change: update FR status + dashboards, write changelog

Proposed Solution

Create global rule files in .claude/rules/:

  • .claude/rules/feature-rules.md — feature request conventions
  • .claude/rules/coding-standards.md — Python coding standards

Open Questions

1. Global vs CLAUDE.md

Question: Should these be .claude/rules/ files or sections in CLAUDE.md?

OptionDescription
A) .claude/rules/ filesKeeps CLAUDE.md concise, rules auto-load, easy to manage separately
B) CLAUDE.md sectionsEverything in one place, but bloats the master file

Recommendation: Option A — CLAUDE.md stays high-level, rules handle the details.

Decision:


Phase Overview

PhaseDescriptionStatus
Phase 1Create global rule files from saved content

Phase 1: Create Global Rules —

Goal: Restore the removed rules as global rules in .claude/rules/.

File / FeatureDetailsOwnerStatus
.claude/rules/feature-rules.mdFeature request naming, lifecycle, gatesopus
.claude/rules/coding-standards.mdPython coding standards, testing, stackopus
.claude/rules/README.mdUpdate with new rule filesopus

Test

Manual tests

TestExpectedOwnerActualLast
Rules load in new sessionBoth rule files appear in contextmvpending-
No .claude/ folders outside project rootOnly Opus/.claude/ existsopuspending-

AI-verified tests

ScenarioExpected behaviorVerification method

E2E tests

ScenarioAssertion

Integration tests

ComponentCoverage

Unit tests

ComponentTestsCoverage

History

DateEventDetails
2026-03-12CreatedRemoved path-scoped rules, saved content for restoration

References

  • .claude/rules/README.md
  • FR-008 (Design Review Workflow) — design gate rule to be included