ci: make the deferred planning benchmark non-blocking

Run the unchanged benchmark as a separate advisory job while #78 is open.
Keep functional coverage and other checks required, and retain the 2 GB heap
and 300-second protocol limit. Record #78's obligation to restore the gate.

Refs: #75, #78
This commit is contained in:
nessar committed 2026-10-10 16:36:11 +02:00
1 parent 6811142299
commit 98e87fecee
5 files changed
+31 -14

No files matched your search

+13 -7
View File
@@ -7,18 +7,24 @@ the benchmark fixtures. The latest full functional coverage run passes 652 tests
across 34 files under the 2 GB Node heap limit, excluding the separate benchmark.
This does not establish a passing performance protocol.
The most recent seven-scenario protocol attempt timed out at its unchanged
300-second limit without an out-of-memory failure. The loaded-year warm-up took
184.36 seconds; its first measured repetition began about 251.78 seconds into
the protocol. These measurements precede the final period-projection cache and
the planned original-decision-trace removal, and are not a result for either.
MR pipeline 320 passed all 652 functional tests in 109.43 seconds, then the
seven-scenario protocol timed out at its unchanged 300-second limit without an
out-of-memory failure. In an earlier diagnostic run, the loaded-year warm-up took
184.36 seconds and its first measured repetition began about 251.78 seconds into
the protocol. Those diagnostic timings precede the final period-projection cache
and the planned original-decision-trace removal, and are not a result for either.
At the user's request, #75 finishes on saved-rule migration and functional
verification. #78 owns benchmark verification and implementation of further
optimizations when needed, after #76 removes tracing and #77 verifies the retained
behavior. All seven scenarios, one warm-up and two measured repetitions per
scenario, the 2 GB heap limit and the 300-second timeout remain required. No
automatic elapsed-time planning cutoff or weaker CI gate is introduced.
scenario, the 2 GB heap limit and the 300-second timeout remain required for #78.
At the user's request, CI runs the benchmark in a separate job with
`allow_failure: true` while #78 is open. Functional coverage tests and all other
required checks remain blocking. #78 must restore the required benchmark gate
after the unchanged protocol passes. A green pipeline during this exception
does not establish a passing benchmark. No automatic elapsed-time planning
cutoff is introduced.
The results below document earlier implementations and protocols. They are
historical measurements rather than the performance result for composable rules.
+5 -2
View File
@@ -279,5 +279,8 @@ Ticket #75 covers saved-rule migration and functional integration of #70–#75.
Performance acceptance and any further optimization are tracked in #78, after
original-decision-trace removal in #76 and functional verification in #77. The
seven-scenario benchmark, its warm-up and two measured repetitions, the 2 GB heap
limit and the 300-second timeout remain unchanged. Completing the functional
migration does not establish that these performance gates pass.
limit and the 300-second timeout remain unchanged. CI runs the benchmark as a
separate non-blocking job at the user's request while #78 is open; functional
tests and other checks remain required. #78 must restore the required benchmark
gate after the protocol passes. Completing the functional migration or passing
CI during this exception does not establish a passing benchmark.