Skip to content

Only require JIXIA_PATH for the subcommand that uses it - #31

Merged
Gabrielebattimelli merged 1 commit into
mainfrom
fix/jixia-path-optional
Aug 27, 2026
Merged

Only require JIXIA_PATH for the subcommand that uses it#31
Gabrielebattimelli merged 1 commit into
mainfrom
fix/jixia-path-optional

Conversation

@Gabrielebattimelli

Copy link
Copy Markdown
Member

Why

database/__main__.py read os.environ["JIXIA_PATH"] at import time, so schema, informal, and vector-db all died with KeyError: 'JIXIA_PATH' — none of which shell out to the jixia binary. Only the jixia subcommand needs it.

This blocked running any of those commands standalone (it came up while re-embedding the ChromaDB index by hand).

What

  • Guard the import-time assignment.
  • Have the jixia subcommand validate the variable itself, with a message naming what to set it to rather than a bare KeyError.

Verified

old: KeyError 'JIXIA_PATH'   <- broke schema/informal/vector-db
new: import-time guard passed cleanly

jixia subcommand -> SystemExit: JIXIA_PATH is not set.
                    It must point at the jixia binary, e.g. jixia/.lake/build/bin/jixia

database/__main__.py read os.environ["JIXIA_PATH"] at import time, so schema,
informal and vector-db all failed with KeyError even though none of them shell
out to the jixia binary. Guard the assignment, and have the jixia subcommand
validate the variable itself with a message that says what to set it to,
instead of surfacing a bare KeyError.
@Gabrielebattimelli
Gabrielebattimelli merged commit 1b887cc into main Aug 27, 2026
1 check failed
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