Skip to content

Experiments

Experimental Flags

How to read Origin's opt-in main-branch flags without mistaking them for released defaults.

Qi-Xuan LuUpdated 6 min read

At a glance

01

Experimental flags are for source checkouts, evaluation runs, and maintainer testing. They are not stable product defaults.

02

Use release notes and the changelog to decide what installed users can rely on.

01

Status first

Origin's main branch often carries opt-in work before a release promotes it. A flag on main means the code path exists for testing; it does not mean normal users receive that behavior after npx setup.

When writing docs, bug reports, or benchmark notes, describe the flag, the branch or release, and whether it is enabled by default.

02

Retrieval and context flags

Recent main-branch work explores how to retrieve and assemble smaller, more useful context bundles: graph activation, temporal filtering, FTS hardening, session diversity, salience priors, episode and fact channels, PRF, k-hop graph traversal, global preludes, iterative retrieval, LLM routing, and read-time context compression.

These flags can change ranking, context composition, token cost, or evaluation labels. Do not compare results across flag sets without naming the active flags.

Retrieval flags

ORIGIN_ENABLE_GRAPH_GATE
ORIGIN_ENABLE_GRAPH_SEED
ORIGIN_ENABLE_TEMPORAL_FILTER
ORIGIN_ENABLE_QUERY_INTENT
ORIGIN_MAGNITUDE_FUSION
ORIGIN_ENABLE_FTS_HARDENING
ORIGIN_ENABLE_SESSION_DIVERSITY
ORIGIN_ENABLE_SALIENCE_PRIOR
ORIGIN_ENABLE_EPISODE_CHANNEL
ORIGIN_ENABLE_FACT_CHANNEL
ORIGIN_PRF_ROUNDS
ORIGIN_ENABLE_GRAPH_KHOP
ORIGIN_ENABLE_GLOBAL_PRELUDE
ORIGIN_ENABLE_COT_RETRIEVAL
ORIGIN_LLM_ROUTE
ORIGIN_ENABLE_CONTEXT_COMPRESS
Read advanced retrieval

03

Memory maintenance flags

Other experiments target write-time and background maintenance: temporal grounding, entity near-dedup, page rewrite shrink guards, dual-pool dedup/contradiction resolution, soft eviction, and debounced reflection.

These are especially sensitive because they affect what becomes durable context. Use them on isolated development data unless a release note says the behavior is ready for normal installs.

Maintenance flags

ORIGIN_ENABLE_TEMPORAL_GROUNDING
ORIGIN_ENABLE_ENTITY_MINHASH
ORIGIN_MERGE_SHRINK_GUARD
ORIGIN_ENABLE_DUAL_POOL_RESOLVE
ORIGIN_ENABLE_EVICTION
ORIGIN_ENABLE_REFLECTION_DEBOUNCE

04

Eval discipline

Every flag that changes retrieval, compression, graph expansion, or maintenance can also change benchmark meaning. A result is only useful if it records the fixture, schema, model, run count, and active flags.

If a flag is eval-only or not wired into the normal daemon path yet, say so plainly. Context compression is an example of a main-branch experiment that should not be described as default chat-context behavior until release notes promote it.

Read evaluation

05

Safe local testing

Do not test experimental maintenance flags against your normal product data unless you mean to. Run a source checkout on a separate port and data directory so experiments cannot rewrite the memory store you rely on daily.

After a flag test, capture the exact command, environment, and git commit. That makes the result reproducible and keeps later docs from turning a local experiment into a product claim.

Isolated daemon

ORIGIN_PORT=7879
ORIGIN_DATA_DIR=/tmp/origin-test
cargo run -p origin-server
Read environment variables

Next

Data and Privacy

Where Origin keeps data, what stays local, and how Markdown records work with the local index.

Read next