Skip to content

KinKal stability knobs to allow bfcorr=true for CentralHelix extrap to CRV - #2021

Merged
brownd1978 merged 5 commits into
Mu2e:mainfrom
RobMina:kinkal-stability-plumbing
Oct 8, 2026
Merged

brownd1978 merged 5 commits into
Mu2e:mainfrom
RobMina:kinkal-stability-plumbing

Conversation

@RobMina

@RobMina RobMina commented Sep 30, 2026

Copy link
Copy Markdown
Contributor

This is the followup to a KinKal PR: KFTrack/KinKal#224

Note this will fail to build until the Offline build environment is updated with the KinKal changes from the PR linked above.

This PR includes the Offline side configuration changes that are necessary to allow CentralHelix extrapolation to the CRV with bfcorr=true.

@FNALbuild

Copy link
Copy Markdown
Collaborator

Hi @RobMina,
You have proposed changes to files in these packages:

  • Mu2eKinKal
  • Mu2eG4
  • GeometryService
  • BFieldGeom
  • scripts

which require these tests: build.

@Mu2e/write, @Mu2e/fnalbuild-users have access to CI actions on main.

⌛ The following tests have been triggered for 71a5cc1: build (Build queue - API unavailable)

About FNALbuild. Code review on Mu2e/Offline.

@FNALbuild

Copy link
Copy Markdown
Collaborator

☔ The build is failing at 71a5cc1.

scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KKFitSettings.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KKBField.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/CentralHelixFit_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KKTruthSeed_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KinematicLineFit_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/LoopHelixFit_module.os] Error 1
Test Result Details
test with ✅ Command did not list any other PRs to include
merge ✅ Merged 71a5cc1 at ff9b517
build (prof) ❌ Log file.
ceSimReco 〰️ Log file.
g4test_03MT 〰️ Log file.
transportOnly 〰️ Log file.
POT 〰️ Log file.
g4study 〰️ Log file.
cosmicSimReco 〰️ Log file.
cosmicOffSpill 〰️ Log file.
ceSteps 〰️ Log file.
ceDigi 〰️ Log file.
muDauSteps 〰️ Log file.
ceMix 〰️ Log file.
rootOverlaps 〰️ Log file.
g4surfaceCheck 〰️ Log file.
trigger ❗ Log file.
check_cmake 〰️ Log file.
FIXME, TODO ➡️ TODO (8) FIXME (7) in 10 files
clang-tidy ➡️ 16 errors 124 warnings
whitespace check ✅ no whitespace errors found

N.B. These results were obtained from a build of this Pull Request at 71a5cc1 after being merged into the base branch at ff9b517.

For more information, please check the job page here.
Build artifacts are deleted after 5 days. If this is not desired, select Keep this build forever on the job page.

@oksuzian oksuzian left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Review Summary — #2021

Reviewed at head 71a5cc1c. first pass

Decision

  • 🟡 comment only

Two things hold this at comment. It cannot build yet: the only blocker is getting the KinKal changes into a build environment, which is a merge-order issue, not a defect in this diff. Two 🟡 items are worth settling before merge. One is about how a misconfiguration fails; the other is an unannounced change to what KKCHmu saves. With both done and a green build, I would approve.

Scope understood

  • This is the Offline side of KFTrack/KinKal#224, which merged 2026-09-29 as dbc9aef7. It adds:
    • bfield.minUsableField, read from the BField geometry file into BFieldConfig and passed to KinKal::BFieldMap by every KKBField;
    • the MinDomainTimeStep and DomainMargin fit settings;
    • hasTraj() guards on saving in the three fit modules;
    • a re-check of goodFit after CentralHelix extrapolation;
    • guards in KKTruthSeed against building a helix where the field is unusable.
  • Two new BField geometry files, bfgeom_v01_minfield.txt (1e-6 T) and bfgeom_v01_minfield0p3.txt (0.3 T), each include bfgeom_v01.txt.
  • All three new settings default to off: minUsableField 0, MinDomainTimeStep 0, and DomainMargin negative, which means unconfined.

Merge prerequisite (not a finding against the diff)

  • The build at 71a5cc1c fails, as the PR body says it will. I pulled scons.log from build 3410: all 11 compile errors are #224 API calls missing from the environment's KinKal. The missing calls are BFieldMap(double), Config::mindtstep_/domainmargin_, Track::hasTraj, BFieldMap::usable and CentralHelix::constructible.
  • No KinKal tag contains #224. v3.7.0 (2011f342) is still the newest tag, and #224 is 13 commits after it. So this needs a KinKal release and a Mu2e envset that picks it up.
  • Until then I don't see a point in re-triggering the build. I'll re-check once the envset is bumped.

Findings

  1. 🟡 [S2] If MinDomainTimeStep is larger than the extrapolation's MaxDtStep, CentralHelixFit silently produces no tracks instead of failing the job.

    • Evidence: #224 checks this pair in Track::extrapolate (Fit/Track.hh:941 at dbc9aef7), but only when bfcorr_ is on, and it does so by throwing std::invalid_argument on every track. In CentralHelixFit_module.cc the extrapolation is inside the per-track try (:345), whose catch (std::invalid_argument const&) (:386) prints only if print_ > 0. CHXTRAP has MaxDtStep : 1.0, so the very configuration this PR enables would drop every KKCHmu track with no message: bfcorr=true with any MinDomainTimeStep above 1 ns. LoopHelixFit and KinematicLineFit have no such catch, so there the same error stops the job.
    • Impact: a misconfiguration looks like an empty collection. KKTruthSeed copies exconfig_.mindtstep_ onto the truth fit (KKTruthSeed_module.cc:300), so it inherits the same pairing.
    • Suggested fix: check the pair once, in the module constructors. If bfieldCorr is on and MinDomainTimeStep > ExtrapolationSettings.MaxDtStep, throw cet::exception. The per-event throw in KinKal then becomes unreachable in Mu2e configurations.
  2. 🟡 [S2] CentralHelixFit now drops tracks whose extrapolation fails. Before this PR it saved them with FitOK cleared. The change is unconditional, and the PR body does not mention it.

    • Evidence: CentralHelixFit_module.cc:364-370 now recomputes goodfit after extrap_->extrapolate and saves only when goodfit || saveall_. Before, goodfit was fixed before extrapolation, and KKFit::createSeed (KKFit.hh:678-686) cleared FitOK when the status had become unusable. So the track was kept, flagged as not OK. KKCHmu runs in Production JobConfig/reco/prolog.fcl (the OffSpill CentralHelixReco sequence), and mdc2025/reco.json writes a CentralHelixOutput.
    • Impact: in production, cosmic tracks whose tracker fit is fine but whose extrapolation to the CRV fails are now missing entirely. Before, they were present with FitOK off. This matches what KinematicLineFit already does (:317-320), so it is defensible, but it changes the count of a production collection. LoopHelixFit still saves after a failed extrapolation (:409-418), so the three modules now differ in how they treat that case.
    • Suggested fix: add a sentence to the PR description. Ideally, also give the KKCHmu count before and after on a cosmic sample using the production config (CHDRIFTEXT has BFieldCorrection : false). Alternatively, keep the old behaviour and let FitOK carry the result.
  3. 🟡 [S2] A sentinel value and C++ defaults for fit settings that the rest of the table leaves to the prolog.

    • Evidence: in KKFitSettings.hh:38-39, DomainMargin defaults to -1.0 and means "unconfined" (KKFitSettings.cc:26); MinDomainTimeStep defaults to 0.0. Every other fhicl::Atom in this struct, lines 27-37, has no C++ default and is set in Mu2eKinKal/fcl/prolog.fcl.
    • Impact: a negative number meaning "off" is exactly the case fhicl::OptionalAtom exists for. A C++ default hides the setting from fhicl-dump of the prolog tables.
    • Suggested fix: make DomainMargin a fhicl::OptionalAtom<double>, so that absent means unconfined and a present value must be ≥ 0 (throw otherwise). Also set MinDomainTimeStep : 0.0 in the *SEEDFIT/*EXT prolog tables, as BCorrTolerance already is.
  4. 🟡 [S2] A reconstruction threshold that lives in the BField geometry file only works for jobs on the field configuration its file includes.

    • Evidence: minUsableField is read through SimpleConfig (BFieldConfigMaker.cc:50), and the only way to set it is a whole new geometry file. Both new files include bfgeom_v01.txt only. Production jobs also use bfgeom_DSOff.txt (JobConfig/common/Run1B.fcl:12), bfgeom_no_field.txt (cosmic/ExtractedCRY.fcl:11) and the DS50 and DSMap variants. Enabling the protection for any of those means yet another _minfield copy of each file. A GitHub code search of the Mu2e organisation finds no consumer of either new file.
    • The 0.3 T value has no source. The comment says it "trades extrapolation accuracy for stability", but no measurement says how much.
    • The 1e-6 T file restates KinKal's BFieldMap::zeroField(). usableField already takes max(minfield_, zeroField()), so any value up to 1e-6 T behaves identically.
    • Impact: the threshold multiplies with every field file, and the new files are unused. The rationale for putting it there ("every module in a job shares it") is sound, but a single job-level setting would give the same guarantee without depending on which field file is used.
    • Suggested fix: either keep the geometry route but add only the files that a named job config uses, citing where 0.3 T came from; or move the threshold to a single fhicl value shared by the fit modules (a prolog table referenced by each). I don't insist on either; I'd like the choice explained.
  5. ⚪ [S3] scripts/build/SConscript only loses its trailing blank line, which is unrelated to this change. KKBField now reaches GeomHandle<BFieldConfig> inside its constructor (KKBField.cc:10). That works, because BFieldConfig is registered under the same hasBFieldManager condition as the BFieldManager that KKBField already needs (GeometryService.cc:339-343). Passing BFieldConfig const& in explicitly would make the dependency visible at the six call sites, though.

Verified (🟢)

  • 🟢 Existing fits are unchanged apart from finding 2. With minUsableField_ = 0, BFieldMap::protecting() is false. MinDomainTimeStep = 0 is KinKal's own default, and a negative DomainMargin keeps domainmargin_ at its unconfined numeric_limits::max() (Fit/Config.hh:33-34 at dbc9aef7). No fcl in Offline, Production or mu2e-trig-config sets any of the three, and no prodtools campaign JSON names the new files. So the default path reads exactly what it read before, other than the goodFit re-check.
  • 🟢 It compiles against KinKal at the #224 merge. The seven changed .cc files pass g++ -std=c++20 -fsyntax-only -Wall -Wextra -Werror=reorder -Wtype-limits -Wimplicit-fallthrough -Wunused-but-set-parameter on the merge of this PR with current main 89bfebf2, with KinKal dbc9aef7 headers ahead of the envset copy (muse al9-prof-e29-p106). The only warnings are pre-existing -Wunused-parameter ones in KinKal and TrackerGeom headers. This is a syntax check; nothing was linked or run.
  • 🟢 The hasTraj() guards close a crash under SaveAllFits : true. A fit that fails before its trajectory exists would have reached createSeed/sampleFit with a null fittraj_. The guard is in all three fit modules. Each module's goodFit returns before touching fitTraj() when the status is unusable, so the ordering is safe. The two Regrow* modules check fitStatus().usable() before using the trajectory and need no change.
  • 🟢 KKTruthSeed guards. Truth pieces are now skipped where usable(tpos) fails or CentralHelix::constructible refuses the state, which #224 now enforces in the constructor. A field-corrected truth fit with no saved reco domains returns nullopt, the same as RegrowLoopHelix. KKCHmu (CHDriftFit) saves domains (SaveDomains : true), so the domain guard is not hit in the intended setup. The module is MC-diagnostic only, and no Production or trigger fcl instantiates it.
  • 🟢 Cross-PR interaction: the merge with main 89bfebf2 (after #2018) and with open #2020 (KKStrawHit.hh only) is clean under git merge-tree. There is no overlapping file.

Validation check

  • Build/tests run: FNALbuild fails at this head for the KinKal reason above. My own check was the syntax-only compile listed above.
  • Config contract check: partial. No fcl changed. The new keys have C++ defaults (finding 3). The new geometry text files follow the #include pattern of bfgeom_DS50_v01.txt; I did not parse them through SimpleConfig.
  • Cross-repo consistency: needs follow-up. KinKal#224 is merged, but no KinKal tag or Mu2e envset contains it yet.

Not checked

  • No art job. I did not measure how many CentralHelix extrapolations to the CRV succeed with bfcorr=true with and without the new settings, nor the change in KKCHmu count from finding 2. The PR gives no numbers either.
  • Whether 0.3 T is the right handoff threshold for extrapolation to the CRV.
  • For the LoopHelix instantiation of KKTruthSeed, the new usable(tpos) skip drops truth pieces outside the inner maps' bounding boxes. I believe that is intended, since those pieces had a zero field before, but I have not run it.

Author follow-ups

  1. Say which KinKal tag and envset this needs, and re-trigger the build once it exists.
  2. Check MinDomainTimeStep against the extrapolation MaxDtStep in the module constructors (finding 1).
  3. State the KKCHmu behaviour change, and preferably give its count before and after on a cosmic sample (finding 2).
  4. DomainMargin → OptionalAtom; prolog values for both new settings (finding 3).
  5. Name the job config that uses each new bfgeom_*_minfield* file and the source of 0.3 T, or move the threshold to fhicl (finding 4).
  6. Please add validation to the description: a before/after on the fraction of CentralHelix tracks reaching the CRV with bfcorr=true, which is the point of the PR.

@RobMina

RobMina commented Sep 30, 2026

Copy link
Copy Markdown
Contributor Author

Validation (follow-up 6). 112 Run-2 cosmic digi files (98,079 events), CentralHelix fit extrapolated to the
CRV, bfcorr=true with minUsableField 1e-6 and DomainMargin 0, vs bfcorr=false; residuals are
extrapolated-track minus true CRV crossing (core = half the 16–84 percentile span):

bfcorr=false bfcorr=true
CentralHelix tracks 57,032 51,833 (−9.1%)
CRV crossings with a truth match 56,096 57,807 (+3.1%)
crossings per track 0.98 1.12
dlong core (mm) 406.7 136.9
dinplane core (mm) 328.9 156.9
dacross core (mm) 73.3 51.4
dt core (ns) 1.69 1.59
dp core (MeV/c) 1440 1309

Default path (all settings unset), Offline main vs this PR + KinKal#224, production configs: LoopHelix 20k
events (243 leaves), CentralHelix 10k (527), KinematicLine 20k (478): all identical at tolerance 0.
The changes for points 1, 3 and 5 were re-run on the same three samples and are identical to the pre-review
build at tolerance 0.

@oksuzian oksuzian left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Review Summary — #2021

Reviewed at head 1fff0c2f. Re-review of 71a5cc1c.

Decision

  • 🟡 comment only

Only one thing holds this at comment: it still cannot build. mu2e/buildtest has not run at 1fff0c2f, and it would fail as build 3410 did. No KinKal tag contains KFTrack/KinKal#224: v3.7.0 (2011f342) is still the newest, and KinKal main is still at the #224 merge dbc9aef7. That is a merge-order point, not a defect in this diff. On the code, what remains open is 🟡/⚪ only. I will approve once a Mu2e envset carries #224 and the build here is green.

What changed since 71a5cc1c

  • 1fff0c2f, "Address AI review comments", adds 33 lines. It adds KKExtrap::checkConfig, called from the constructors of all three fit modules and KKTruthSeed. DomainMargin becomes a fhicl::OptionalAtom that throws when negative. MinDomainTimeStep : 0.0 is set in the prolog tables.
  • @RobMina posted validation numbers in a comment: 98,079 Run-2 cosmic events, bfcorr on vs off. The default path was compared bit-for-bit against main on LoopHelix, CentralHelix and KinematicLine samples.

Prior findings

  1. 🟢 [was S2 #1] MinDomainTimeStep > MaxDtStep silently empties KKCHmu — FIXED, verified in the code. KKExtrap::checkConfig (KKExtrap.hh:86-90) throws cet::exception at construction when bfcorr_ is on and mindtstep_ > maxdtstep_. Every Extrapolate* object in KKExtrap takes the same maxdtstep_, so one comparison covers all targets. It is called in CentralHelixFit (:237), LoopHelixFit (:229), KinematicLineFit (:223) and KKTruthSeed (:149). Each passes exconfig_ when there is an extension schedule and config_ otherwise. That matches what Track::config() (config_.back()) holds when extrapolate runs after extendTrack. LoopHelixFit's finalization config is a copy of exconfig_, so it has the same bfcorr_/mindtstep_.

    • A corner, not a finding: with SaveAllFits : true, a LoopHelix fit that fails goodFit is never extended but still reaches extrapolate under config_, while the check tested exconfig_. If only config_ were misconfigured, LoopHelixFit has no catch, so it would stop the job loudly rather than go silent. Checking both configs would close it for one extra line.
  2. 🟢 [was S2 #2] CentralHelixFit now drops tracks whose extrapolation fails — ADDRESSED with evidence. The code is unchanged, but the author reports that CentralHelix output on the default production path (10k events, 527 tracks) is identical to main at tolerance 0, as is LoopHelix (243) and KinematicLine (478). So the goodFit re-check does not move KKCHmu there. With bfcorr=true, the reported track count drops 9.1% (57,032 → 51,833), while truth-matched CRV crossings rise 3.1% and the longitudinal core residual shrinks from 407 to 137 mm. Part of that drop is this re-check, and anyone switching bfcorr on should know it. I did not reproduce these numbers. The PR description still does not mention the behaviour change; one sentence there would help the next reader.

  3. 🟢 [was S2 #3] DomainMargin sentinel and C++ defaults — FIXED. DomainMargin is OptionalAtom<double>. When absent, KinKal's unconfined default stays, and a negative value throws in makeConfig (KKFitSettings.cc:27-31). MinDomainTimeStep : 0.0 is now in all eight fit/extension tables that carry BCorrTolerance (CHSEEDFIT, CHSEEDEXT, CHDRIFTEXT, LHSEEDFIT, KKNOEXT, LHSEEDEXT, LHDRIFTEXT, REGROW). The other four BCorrTolerance hits are *XTRAP tables of a different struct. The C++ default 0.0 on minDomainTimeStep (KKFitSettings.hh:39) remains alongside the prolog value. That is harmless; drop it if you want one home.

  4. 🟡 [S2, was S2 #4] minUsableField lives in the BField geometry file — OPEN, unchanged. Both bfgeom_v01_minfield*.txt files are still in the diff, with no consumer in any fcl. The validation used minUsableField 1e-6. That makes sense: any value above 0 is what switches KinKal's protection on (BFieldMap::protecting()), so the 1e-6 file acts as an on/off switch rather than a threshold. The 0.3 T file was not used in the validation and still has no source for the value. Non-gating. Either drop bfgeom_v01_minfield0p3.txt until a job needs it, or cite what 0.3 T is based on.

  5. ⚪ [S3, was S3 #5] scripts/build/SConscript still loses its trailing blank line, unrelated to this PR. KKBField's hidden BFieldConfig dependency is unchanged. Both non-gating.

New at this head

  • None beyond the corner noted under finding 1.

Validation check

  • Build/tests run: no mu2e/buildtest at 1fff0c2f ("not triggered yet"). I did not trigger it, since it cannot pass before the KinKal release. My own check: all seven changed .cc files pass g++ -std=c++20 -fsyntax-only -Wall -Wextra -Werror=reorder -Wtype-limits -Wimplicit-fallthrough -Wunused-but-set-parameter on the merge of 1fff0c2f with main 89bfebf2, against KinKal dbc9aef7 headers in muse al9-prof-e29-p106. The only warnings are pre-existing -Wunused-parameter ones in KinKal headers.
  • Config contract check: pass. fhicl-dump of CHSEEDFIT, CHDRIFTEXT, LHDRIFTEXT, REGROW and KKNOEXT from the head prolog resolves, and each shows MinDomainTimeStep: 0. No fcl sets DomainMargin.
  • Cross-repo consistency: needs a KinKal tag containing #224 and an envset that picks it up.

Not checked

  • The author's validation numbers were not reproduced. No art job was run.
  • The throw paths of checkConfig and DomainMargin < 0 were read, not exercised.

Author follow-ups

  1. Name the KinKal tag and envset once they exist, and re-trigger the build then.
  2. Optional: one sentence in the PR description about the KKCHmu goodFit re-check (finding 2).
  3. Optional: drop or source bfgeom_v01_minfield0p3.txt (finding 4).

@oksuzian
oksuzian requested a review from brownd1978 October 6, 2026 15:58

@oksuzian oksuzian left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Review Summary — #2021

Reviewed at head 0846afe6cf2c75e110952dba6a44920ad024322b. Re-review of 1fff0c2f.

Decision

  • 🟡 comment only

Unchanged from my last review: the code is approvable, and the only hold is that it cannot build yet. No KinKal tag contains KFTrack/KinKal#224. v3.7.0 (2011f342) is still the newest tag, and KinKal main is still the #224 merge dbc9aef7. mu2e/buildtest at this head shows PENDING with no build behind it. I will approve once a Mu2e envset carries #224 and the build here is green.

What changed since 1fff0c2f

  • 0846afe6, "Update doc comment to clarify unbiased DOCA meaning", is a one-line comment change in RecoDataProducts/inc/TrkStrawHitSeed.hh:175. It fixes the typo "unbiaed" and records that _udoca is taken from the final fit trajectory, while the hit-state updaters (the ANNs) used the unbiased DOCA from the previous fit cycle.
  • 🟢 The comment matches the code: _udoca is filled from uptca.doca() in the main constructor (TrkStrawHitSeed.hh:46). That is the unbiased PTCA passed in when the KalSeed is sampled after the final fit. I did not re-trace which iteration's DOCA the ANN updaters read; I am relying on the comment and the KinKal#226 discussion for that half.
  • No code, fcl or data-product layout change, so none of the prior findings move.

Prior findings, carried

  1. 🟢 [was S2] MinDomainTimeStep > MaxDtStep: fixed at 1fff0c2f. The corner with SaveAllFits on config_ versus exconfig_ remains a note.
  2. 🟢 [was S2] CentralHelixFit goodFit re-check: addressed with the author's evidence. A sentence in the PR description is still optional.
  3. 🟢 [was S2] DomainMargin sentinel: fixed.
  4. 🟡 [S2] bfgeom_v01_minfield0p3.txt has no consumer and no source for 0.3 T: open, non-gating.
  5. ⚪ [S3] SConscript trailing blank line; KKBField's hidden BFieldConfig dependency: open, non-gating.

Validation check

  • Build/tests run: none at this head. My -fsyntax-only check at 1fff0c2f still applies: this commit changes only a comment.
  • Config contract: unchanged.
  • Cross-repo: needs a KinKal tag containing #224 and an envset that picks it up.

Author follow-ups

  1. Name the KinKal tag and envset once they exist, and re-trigger the build then.

@oksuzian

oksuzian commented Oct 7, 2026

Copy link
Copy Markdown
Collaborator

@FNALbuild run build test

@FNALbuild

Copy link
Copy Markdown
Collaborator

⌛ The following tests have been triggered for 0846afe: build (Build queue - API unavailable)

@FNALbuild

Copy link
Copy Markdown
Collaborator

☔ The build is failing at 0846afe.

scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KKFitSettings.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KKBField.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KKTruthSeed_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/CentralHelixFit_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/LoopHelixFit_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/KinematicLineFit_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/RegrowKinematicLine_module.os] Error 1
scons: *** [build/al9-prof-e29-p107/Offline/tmp/Mu2eKinKal/src/RegrowLoopHelix_module.os] Error 1
Test Result Details
test with ✅ Command did not list any other PRs to include
merge ✅ Merged 0846afe at e6e99ea
build (prof) ❌ Log file.
ceSimReco 〰️ Log file.
g4test_03MT 〰️ Log file.
transportOnly 〰️ Log file.
POT 〰️ Log file.
g4study 〰️ Log file.
cosmicSimReco 〰️ Log file.
cosmicOffSpill 〰️ Log file.
ceSteps 〰️ Log file.
ceDigi 〰️ Log file.
muDauSteps 〰️ Log file.
ceMix 〰️ Log file.
rootOverlaps 〰️ Log file.
g4surfaceCheck 〰️ Log file.
trigger ❗ Log file.
check_cmake 〰️ Log file.
FIXME, TODO ➡️ TODO (10) FIXME (7) in 12 files
clang-tidy ➡️ 24 errors 125 warnings
whitespace check ✅ no whitespace errors found

N.B. These results were obtained from a build of this Pull Request at 0846afe after being merged into the base branch at e6e99ea.

For more information, please check the job page here.
Build artifacts are deleted after 5 days. If this is not desired, select Keep this build forever on the job page.

@brownd1978

Copy link
Copy Markdown
Collaborator

@FNALbuild run build test

@FNALbuild

Copy link
Copy Markdown
Collaborator

⌛ The following tests have been triggered for 0846afe: build (Build queue - API unavailable)

@FNALbuild

Copy link
Copy Markdown
Collaborator

☀️ The build tests passed at 0846afe.

Test Result Details
test with ✅ Command did not list any other PRs to include
merge ✅ Merged 0846afe at 395c773
build (prof) ✅ Log file. Build time: 04 min 28 sec
ceSimReco ✅ Log file.
g4test_03MT ✅ Log file.
transportOnly ✅ Log file.
POT ✅ Log file.
g4study ✅ Log file.
cosmicSimReco ✅ Log file.
cosmicOffSpill ✅ Log file.
ceSteps ✅ Log file.
ceDigi ✅ Log file.
muDauSteps ✅ Log file.
ceMix ✅ Log file.
rootOverlaps ✅ Log file.
g4surfaceCheck ✅ Log file.
trigger ❌ Log file. Return Code 2.
check_cmake ✅ Log file.
FIXME, TODO ➡️ TODO (10) FIXME (7) in 12 files
clang-tidy ➡️ 5 errors 126 warnings
whitespace check ✅ no whitespace errors found

N.B. These results were obtained from a build of this Pull Request at 0846afe after being merged into the base branch at 395c773.

For more information, please check the job page here.
Build artifacts are deleted after 5 days. If this is not desired, select Keep this build forever on the job page.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants