Skip to content

Refine %catalog context resolution: strict use(), optional list() path - #58

Merged
oskaresparza merged 2 commits into
stagingfrom
development
Sep 18, 2026
Merged

oskaresparza merged 2 commits into
stagingfrom
development

Conversation

@oskaresparza

Copy link
Copy Markdown
Collaborator

Summary

  • use() now only accepts a whole, absolute path and never resolves it against the existing context (previously it accepted dot-optional/../ relative paths like every other verb) — pointing context somewhere always means saying exactly where, with the same live existence check as before.
  • list()'s own path is now optional — omitted (or ""), it lists the current context itself, raising CatalogSessionError if none is set.
  • Every other single-path verb's bare path now stays absolute instead of getting silently appended to an existing context when it already starts with catalog (this deployment's one real root source) — previously the only way to mix a full absolute path into an already-use()d session was to clear context first.

Test plan

  • pytest — 357 passed
  • ruff check / ruff format --check — clean on touched files

🤖 Generated with Claude Code

oskaresparza and others added 2 commits September 18, 2026 10:01
use() now only accepts a whole, absolute path and never resolves it
against the existing context (previously it accepted dot-optional/`../`
relative paths like every other verb) — pointing context somewhere always
means saying exactly where.

list()'s own path is now optional (defaults to listing the current
context itself), and every other single-path verb's bare path now stays
absolute instead of getting silently appended to an existing context when
it already starts with `catalog`, this deployment's one real root source
— previously the only way to mix an absolute path into an already-`use()`d
session was to clear context first.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Refine %catalog context resolution: strict use(), optional list() path
@oskaresparza
oskaresparza merged commit d31780f into staging Sep 18, 2026
9 checks passed
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