ContextLab / ContextLab/claude-skill-compounder
E2E: run under a genuinely fresh CLAUDE_CONFIG_DIR once a token can be handed in
- Dominant language
- Python
- Stars
- 1
- Forks
- 0
- Avg merge
- 1h 29m
- Merged PRs (30d)
- 1
Description
`tests/e2e/journey.py` cannot use a genuinely isolated `CLAUDE_CONFIG_DIR`: a throwaway config directory has no stored credentials, so a session started against it cannot authenticate. The current run works around this by keeping the real `HOME`/`CLAUDE_CONFIG_DIR` (so auth is available) and using `--settings ` plus `--setting-sources ''` to swap in the throwaway hooks, skills and `CLAUDE.md` for that one call (`docs/e2e.md:56,69,76-77`). That is documented as a real limitation, not hidden: three consequences follow from it (`docs/e2e.md:77-89`), including that the throwaway personal skills directory is on no session's roster because only `CLAUDE_CONFIG_DIR` would put it there.
Filed from #36's closing comment, on 2026-09-03, against the tree at `a2aa2d4` (tag v0.3.0).
## What to build
Once there is a way to hand a session a token without touching the real `~/.claude` credential store (a scoped API key, a throwaway OAuth token, or whatever mechanism becomes available), re-run the journey under a `CLAUDE_CONFIG_DIR` that carries no borrowed identity from the real config, and confirm the three consequences listed in `docs/e2e.md` no longer apply once the personal skills directory and the rest of the config are genuinely isolated.
## Acceptance
- The E2E journey runs with `CLAUDE_CONFIG_DIR` pointed at a throwaway directory that authenticates on its own, not via `--settings` against the real config.
- The three consequences documented in `docs/e2e.md` (`~77-89`) are re-checked under that isolation and the doc is updated to say whether they still hold.
Contributor guide
Research direction
Read docs/e2e.md:56,69,76-89 and tests/e2e/journey.py first; identify the available token handoff before changing the test setup. Run the E2E journey with a throwaway CLAUDE_CONFIG_DIR and re-check the three documented consequences. Done means the isolated run authenticates without --settings against the real config and docs/e2e.md records whether those consequences still hold.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- authentication, documentation, testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100