# Java bundle producer Maven output lookup

The bundle producer's default ZIP lookup now retains Maven's published
`bench/java/fixbench/target` suffix under `LIBHFT_BUILD_ROOT` in both source
layouts. Without a build root, a stripped archive retains its ordinary
`java/fixbench/target` location. Explicit ZIP inputs, source staging, freshness,
provenance and admission rules are unchanged. Shared build/layout APIs are
consumed without modification.

Source **b35fad9d972e** is retained on
`s/codex-fullbench-java-bundle-output-source-20261003`. Exact original producer
and tests remain under
`internal/bench/java/fixbench/scripts/native-producer-before-maven-prefix-20261003/`.
The existing path assertion now checks the actual Maven suffix in both layouts;
all five preparation tests remain and pass without skips locally and from a
fresh complete **750-file** stripped archive on HP.

The foreground archive verification uses a high-priority shared CPU lease after
host/process preflight. An actual Maven effective-POM invocation, with a build
root containing spaces, supplies the build directory independently. The new
default ZIP path agrees with it. Executing the exact original lookup function
reproduces its flat-prefix mismatch; the unset-root legacy path also passes.
Every source byte/mode remains unchanged, no output lands inside the archive,
and the materialization is removed.

Source maps/archive, both lookup paths, actual effective POM, controller and
logs are sealed in `~/archive/libhft/java-bundle-output-20261003-b35fad9d972e`
and [repository evidence](evidence/java-bundle-output-20261003/SHA256SUMS).
This is output lookup and preparation-test qualification. Standalone engine
source staging, new SDK build/ABI evidence, physical Stage 5, timing/report
and public release admission remain separate unfinished work.
