Skip to content

chore(create-openora): let consumer sessions make any core change in an OSS worktree - #216

Merged
zaxovaiko merged 2 commits into
devfrom
chore/BF-0/single-session-oss-changes
Sep 24, 2026
Merged

zaxovaiko merged 2 commits into
devfrom
chore/BF-0/single-session-oss-changes

Conversation

@zaxovaiko

Copy link
Copy Markdown
Member

Summary

The consumer template now lets a consumer session make any core change, new features included, in an OSS worktree. It also configures Claude Code so that --add-dir loads the OSS repo's CLAUDE.md and rules. BF-0.

Why

The oss-boundaries rule, cross-repo.md, and the review and handoff skills sent every new core feature to a separate session rooted in the OSS repo. A paired change (a core feature plus the consumer's adaptation) therefore always took two agent sessions and a handoff prompt. The guard-core hook already limits core edits to .worktrees/, so the extra session added friction but no safety. The genericity test, the verify step, and the OSS review step before any push are unchanged.

The Claude settings template also changes:

  • It sets CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1. Without it, --add-dir loads the OSS repo's skills and agents but not its CLAUDE.md or .claude/rules/. additionalDirectories on its own grants file access only.
  • It drops the Write(./node_modules/**) deny rule. Claude Code ignores Write(...) path rules and warns about them at startup; Edit(./node_modules/**) already covers every file-editing tool.

Alternatives considered

  • Keep the separate-session rule and rely on handoff. Rejected: the handoff prompt carries context the consumer session already has, and it doubles the sessions for every paired feature.
  • A per-developer local override. Rejected: it leaves two contradictory rules in context.

Risks

  • Larger core changes can now start from a consumer session. The genericity test and the OSS verify and review steps still apply before any push, and the review skill still checks the paired OSS diff against the OSS repo's own rules.
  • Existing consumers pick this up on their next @openora/* bump. Their hand-kept .claude/settings.json does not change until they apply the env entry themselves.

…an OSS worktree

The consumer template sent new core features to a separate session rooted in
the OSS repo, so a paired change always needed two sessions and a handoff.
Any core change may now be made in place, in the worktree the guard-core hook
already allows; handoff stays for work that should run elsewhere.

The Claude settings template sets CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD
so --add-dir also loads the OSS repo's CLAUDE.md and rules, and drops the
Write(./node_modules/**) deny rule, which Claude Code ignores (Edit covers it).
@zaxovaiko zaxovaiko self-assigned this Sep 24, 2026
@zaxovaiko
zaxovaiko merged commit af715df into dev Sep 24, 2026
2 checks passed
@zaxovaiko
zaxovaiko deleted the chore/BF-0/single-session-oss-changes branch September 24, 2026 09:56
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