Skip to content

chore: add Claude Code project scaffolding#3

Merged
ChrisonSimtian merged 1 commit into
developfrom
chore/claude-setup
May 18, 2026
Merged

chore: add Claude Code project scaffolding#3
ChrisonSimtian merged 1 commit into
developfrom
chore/claude-setup

Conversation

@ChrisonSimtian

Copy link
Copy Markdown
Collaborator

Summary

Adds the baseline Claude Code project scaffolding so the repo is ready to be AI-driven from day one of the takeover.

  • CLAUDE.md — project overview, solution layout, build commands, GitFlow notes, tool-wrapper conventions, "what not to do" guardrails. Authored against the current state (10.1.0); will evolve as we shift to trunk-based and the enterprise direction.
  • .claude/settings.json — shared permission allowlist for safe dotnet/build.ps1/git/gh reads, denies destructive ops (force-push, hard reset, rm -rf).
  • .gitignore — ignores .claude/settings.local.json & credentials so teammates can keep personal Claude overrides local while sharing the project-level config.

Test plan

  • No code changes; pure docs/config
  • .claude/settings.json parses (used live this session)

🤖 Generated with Claude Code

Adds CLAUDE.md (project overview, solution layout, build commands,
conventions) and .claude/settings.json (shared permission allowlist for
safe dotnet/build.ps1/git/gh reads, denies destructive ops). Ignores
.claude/settings.local.json and credentials so teammates keep personal
overrides local while sharing the project-level config.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ChrisonSimtian ChrisonSimtian merged commit f5bd5ea into develop May 18, 2026
@ChrisonSimtian ChrisonSimtian deleted the chore/claude-setup branch May 18, 2026 04:02
ChrisonSimtian added a commit that referenced this pull request Jun 3, 2026
Host.Default now probes an overridable Host.IsActive member instead of
reflecting for the magic-string IsRunning{TypeName} static. The default
IsActive falls back to that legacy convention, so all existing hosts work
unchanged; new adapters override IsActive directly (no static, no name match).
Host ctors are side-effect-free, so construct-then-probe is cheap and the
active host (constructed last) remains Host.Instance.

Covers ADR-0005 #3. Tests exercise both the override and fallback paths.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
ChrisonSimtian added a commit that referenced this pull request Jun 3, 2026
First adapter built on the finished ADR-0005 seam, proving it generalizes:
- Runtime host overrides Host.IsActive (no IsRunning{Name} static — first user
  of the #3 detection style) and implements both ports (IBuildHost context via
  GitHub-compatible GITHUB_* vars; IBuildReporter reporting).
- Config generation composes the GitHub config model + a shared WorkflowCommands
  helper for the ::cmd:: dialect, rather than inheriting GitHubActionsAttribute
  (which is blocked anyway by ConfigurationAttributeBase.Build's internal set).
  Common-case scaffold; full parity needs the GH model-builder extracted.
- Detection (FORGEJO_ACTIONS) is a naive guess pending the live instance.

Tests assert both ports, the IsActive detection path, and non-inheritance from
the GitHubActions adapter.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant