Settings resolve from the environment, then a gitignored .env, then a default — and there is
currently no way to see what actually got resolved without running a command that uses them.
That matters most for ES_INFERENCE_ID, which is baked into the index mapping at creation
time. Get it wrong and you do not find out when you set it; you find out later, when
retrieval behaves oddly against an index that has to be rebuilt to fix it.
A config subcommand should print the resolved configuration, and — in the spirit of a project
about provenance — say where each value came from: the environment, the .env file, or the
built-in default.
gctx config
ES_URL https://… (.env)
ES_API_KEY set (.env)
ES_INDEX grounded-context-corpus (default)
ES_INFERENCE_ID .elser-2-elasticsearch (default)
Done when
Useful for two audiences: an adopting team checking their own cluster is wired correctly, and a
pre-demo sanity check that takes one command instead of a rebuilt index.
Settings resolve from the environment, then a gitignored
.env, then a default — and there iscurrently no way to see what actually got resolved without running a command that uses them.
That matters most for
ES_INFERENCE_ID, which is baked into the index mapping at creationtime. Get it wrong and you do not find out when you set it; you find out later, when
retrieval behaves oddly against an index that has to be rebuilt to fix it.
A
configsubcommand should print the resolved configuration, and — in the spirit of a projectabout provenance — say where each value came from: the environment, the
.envfile, or thebuilt-in default.
Done when
.env, or defaultconfig dump must not leak a credential, which is why the key is package-private on the
JVM side and never returned by the Python accessor
than an error
Useful for two audiences: an adopting team checking their own cluster is wired correctly, and a
pre-demo sanity check that takes one command instead of a rebuilt index.