Campaign Evidence Matrix

Campaign: 1-trick-out-01-remove-before-merge

This document records what the campaign actually demonstrates about the ten boring reasons from the talk abstract. It begins with hypotheses and Not exercised classifications. Implementation issues must replace those initial values only when durable campaign evidence exists.

The ignorance-reduction plan and generated implementation issues define the mandatory update timing and completion gates. In particular, the current issue's evidence must be recorded and merged before the next serial issue begins.

Field definitions

Field Meaning
Reason The ordered reason from the abstract
Agentic failure mode The weakness it is meant to constrain
Repository mechanism Compiler, Maven, test, analyzer, workflow, telemetry, or deployment control
Implementation task The trick-out issue and PR that introduce, exercise, or verify it
Observed campaign event A concrete success, failure, correction, or non-event
Artifact CI run, log, PR, review, trace, JFR, screenshot, or post-mortem
Confidence Strong, Moderate, Weak, Unsupported, or Not exercised
Slide implication Main slide, Brief mention, Appendix, Cut, or TBD

Update rules

  1. Preserve the reason numbering and ordering.
  2. Treat the failure modes and mechanisms below as initial hypotheses, not evidence.
  3. Update every applicable summary row after implementation, validation, and review-feedback resolution for an issue.
  4. Identify implementation work with exact issue and PR numbers.
  5. Link or name durable artifacts precisely: commit SHA, GitHub Actions run and job, check name, repository-relative artifact path, log, trace, profile, screenshot, or post-mortem section.
  6. Distinguish a mechanism being installed from being executed, detecting a problem, preventing a problem, or materially improving the work.
  7. Record silent or negative results. If the work did not exercise a reason, leave or set its confidence to Not exercised and explain the non-event.
  8. Do not invent evidence or upgrade confidence because a tool merely passed.
  9. Do not delete earlier evidence. Update the summary and append a dated issue-specific entry to the evidence log.
  10. Put reusable implementation guidance in campaign-lessons.md, not here.

Summary matrix

Reason Agentic failure mode Repository mechanism Implementation task Observed campaign event Artifact Confidence Slide implication
1. Type system Hallucinated APIs, incompatible values, invalid generics, and domain or layer leakage Java compiler and Maven compiler configuration Issue #4 / PR #12; Issue #5 / PR #13 Issue #5 compiled 95 main and 11 test sources with -Xlint:all -Werror; a controlled nonexistent-method fixture failed with javac's cannot find symbol diagnostic. Hosted source-gates also passed on the tested SHA. Tested SHA b19c8c9f2a67822ff5c3abc4a7de888dee353e79; successful Main Build run #36804048610, source-gates job/check 110185685393; source-gates artifact 11136618790, digest sha256:fdfd048be3d64bde3462a70ab6a289cb4abf49f8ada206abae821265e636942e; supporting files compiler.log, test-compiler.log, and compiler-negative.log Strong hosted and local implementation evidence Brief mention
2. Testing ecosystem Behavior that compiles but is incomplete, incorrect, or regressive JUnit, Arquillian, Open Liberty integration tests, architecture tests, and acceptance checks Issue #2 / PR #9; Issue #6 / PR #14; fixture baseline repair The safety-net implementation adds a reproducible inventory (8 active test classes, 3 dormant, 0 removed), two facade/DTO boundary tests, and a compiled-dependency DDD layer baseline. On the exact primary merge SHA, the canonical unit tier passed 27/27 with zero skipped tests, the managed Open Liberty tier passed 4/4 with zero skipped tests, all negative controls passed, and the production-WAR acceptance lifecycle passed root, Administration dashboard, seeded detail, and REST JSON contracts while proving cleanup. The later fixture baseline repair replaced the brittle exact-four-test assertion with a named-method and zero-failure contract that still passes the feature-free four-test suite and permits a valid fifth test. Primary merge SHA 0858b99c14e6d47649008716116504dcdab3bced; successful Main Build run #36818583169, formatting job/check 110228986496, source-gates job/check 110229082017, and build job/check 110229409615; fixture baseline repair SHA 94950cfceefc85edaec68eb6b61a16e0e6779ecc, successful Main Build run #36956818505, formatting job/check 110681507992, source-gates job/check 110681594814, build job/check 110681940309, and test-reports-liberty artifact 11206483198, digest sha256:19b0c9c08136763bbb8f947581e35680c6770717d0a82cf7a89311578ea4af53 Strong exact-SHA hosted evidence plus repository implementation evidence Brief mention
3. Backwards compatibility culture Accidental migration away from Java 17, Java EE 7, javax.*, existing contracts, or established runtime behavior Compiler release, dependency and API constraints, compatibility tests, and repository instructions Issue #4 / PR #12 The focused contract passed for Java 17, Java EE 7 provided API, WAR identity, Liberty feature/deployment, and production javax.* source; all seven isolated negative controls rejected their intended boundary. The packaged WAR reached /cargo-tracker/rest/cargo with seeded ABC123 over Open Liberty and stopped cleanly. Hosted formatting and build jobs passed on the validated implementation HEAD and uploaded the compatibility report and runtime evidence. Validated implementation HEAD a3bee8d24ec54e6b3587ccf0cec443969d0609bd; successful Main Build run #36801557821, formatting job/check 110176804872, build job/check 110176909417, and compatibility-contract artifact 11135847970, digest sha256:1de927b096f1ceaef7c1a3aae9c9f1bb2cafcbcc9ee53b5b3ae4ef1324f2018f Strong hosted implementation evidence plus runtime proof Main slide
4. Deep static analysis Defects, architectural violations, maintainability problems, or security findings not rejected by compilation Static analyzers, architecture rules, and security-oriented source analysis selected by the resolved plan Issue #5 / PR #13 SpotBugs 4.10.4 with Max effort and Low threshold reported zero selected production findings after correcting five shared SimpleDateFormat instances, the null booking result, and the unwritten route field. A temporary null dereference failed as priority-1 NP_ALWAYS_NULL. Hosted source-gates also passed on the tested SHA. Tested SHA b19c8c9f2a67822ff5c3abc4a7de888dee353e79; successful Main Build run #36804048610, source-gates job/check 110185685393; source-gates artifact 11136618790, digest sha256:fdfd048be3d64bde3462a70ab6a289cb4abf49f8ada206abae821265e636942e; supporting files spotbugs.xml, spotbugs.tsv, and analyzer-negative.log; configuration/source demo/config/spotbugs-exclude.xml, demo/scripts/ci/verify-source-gates.sh Strong hosted and local implementation evidence Brief mention
5. Build system maturity and dependency management Dependency sprawl, version drift, non-reproducible builds, plugin drift, or unapproved repositories Maven dependency management, Enforcer rules, convergence checks, plugin controls, and dependency/security analysis Issue #3 / PR #10; Issue #4 / PR #12 Issue #3 established the authoritative dependency gate. Issue #4 added direct Jakarta/framework/runtime dependency rejection, validated true project-level negative fixtures, and added schema/hash-checked compatibility artifact metadata. Issue #3 PR Main Build run 36792676155 and exact-SHA push run 36793581535; Issue #4 validated implementation HEAD a3bee8d24ec54e6b3587ccf0cec443969d0609bd, successful Main Build run #36801557821, build job/check 110176909417, compatibility-contract artifact 11135847970 Strong hosted dependency and compatibility enforcement evidence Brief mention
6. Code formatting and style enforcement Noisy diffs and inconsistent independently generated code Spotless and any additional narrowly justified style checks Issue #3 / PR #10; Issue #5 / PR #13 Issue #5 preserved the historical ratchet and the formatting-first job; the controlled malformed Java fixture failed Spotless with the remediation command. Hosted formatting and source-gates jobs also passed on the tested SHA. Tested SHA b19c8c9f2a67822ff5c3abc4a7de888dee353e79; successful Main Build run #36804048610, formatting job/check 110185574947, source-gates job/check 110185685393; source-gates artifact 11136618790, digest sha256:fdfd048be3d64bde3462a70ab6a289cb4abf49f8ada206abae821265e636942e; supporting file formatting-negative.log plus demo/scripts/ci/verify-source-gates.sh Strong hosted and local implementation evidence Brief mention
7. Virtual threads and structured concurrency Ad hoc concurrency, unmanaged task lifetimes, and unnecessary platform-thread complexity A bounded Java 21-or-later spike isolated from the Java 17 Cargo Tracker baseline Unassigned Not yet exercised; the primary application baseline is Java 17 None yet Not exercised TBD
8. Observability stack Opaque runtime failures and insufficient evidence for diagnosis Structured logs, metrics, traces, correlation, OpenTelemetry artifacts, and JVM/process diagnostics Issue #7 / PR #16; Issue #8 / PR #17 On final reviewed SHA 87d6768d9eed2a29efee6357107f383a00c0ab5e, the successful Main Build correlated both fixed-ID requests across transcript, server spans, and Liberty access logs; exported nonempty JVM metrics; and passed negative controls for unavailable Collector, incompatible instrumentation, missing telemetry, broken correlation, unsafe exemplar/cargo data, secret-like content, and an invalid request without a diagnostic signal. Separately, issue #8 captured per-launch JVM flags, GC logs, JFR summaries, RSS/CPU samples, startup/request/cleanup outcomes for the hosted Java/jaz comparison; this adds diagnostic coverage without changing issue #7's evidence. Issue #7: run 36839380274, build job 110295058827; otel-telemetry artifact 11151111829, digest sha256:e5e180578fb5f31f8fe53a9a96f371bb1ddd86c697f68b3d3016842878dfbf21; liberty-logs artifact 11151376069, digest sha256:928e88ef86f80ae017256cf6d9e4b1662238a668e0722c9d9799d745bae9c3a6; supporting files traces.json, metrics.json, request-transcript.jsonl, redaction-check.txt, observability-access.log, messages.log, and observability-negative-controls.txt. Issue #8: run 36918453972, comparison artifact 11191258963, digest sha256:a0a221a61cbae90e63a5c792e70cc723817920ba64d4c5fd8551651d959d1461; status.txt, run-order.tsv, mode-summary.tsv, and paired-comparison.tsv Strong: issue #7 exact-SHA hosted observability and redaction gates passed; issue #8 exact-head hosted job published JVM/process/JFR/GC diagnostics for all 15 launches. Main slide
9. JVM performance tuning Poor heap sizing, garbage-collector choices, startup behavior, or resource utilization under container limits Repeatable workload, JVM/process diagnostics, JFR, GC evidence, and java versus jaz comparison Issue #8 / PR #17 The hosted five-cycle comparison completed all 15 launches across direct Java, bypassed jaz, and tuned jaz; all passed functional, diagnostic, resource, and cleanup gates. Resolved tuned JVM settings and launcher integration were recorded. Ordinary measurements remain diagnostic only; no performance winner is claimed. Implementation HEAD 3e141c26cfbd6e5469aeebd2b627b620b28ab725; Main Build run 36918453972 (attempt 1; PR merge-test SHA 8ce8b6e0bfaaa8c40d5951ffd7e1c7d5d867bd14), formatting job 110558201739, source-gates job 110558380614, and build job 110558962626; four immutable artifacts and SHA-256 digests are recorded in the Issue #8 evidence log below. Strong hosted evidence that the bounded workload and three launcher modes passed functional, diagnostic, resource, and cleanup gates on one runner; measurements do not justify selecting a performance winner or establish AKS-limit behavior. Brief mention
10. Breadth of deployment options Environment-coupled code or packaging that cannot move between realistic runtime targets Repeatable deployment of the same Cargo Tracker artifact or container to Azure execution models Unassigned Not yet exercised None yet Not exercised TBD

Issue-specific evidence log

Append one subsection for every implementation issue, even when it produces no meaningful evidence. Keep entries in serial issue order.

Issue #2: Establish the Open Liberty-only baseline

Issue #3: Make CI authoritative and establish the Maven/dependency foundation

Issue #4: Enforce the Java 17 and Java EE 7 compatibility contract

Issue #5: Strengthen formatting, compiler, type, and static-analysis gates

Issue #7: Add CI observability and diagnostic artifacts

Issue #8: Add bounded JVM performance and jaz evidence

Use this template:

### Issue #<number>: <title>

- **PR:** #<number>
- **Merged commit:** `<full SHA>`
- **Completed:** `<UTC timestamp>`
- **Reasons expected to be exercised:** <reason numbers>
- **Reasons actually exercised:** <reason numbers or `None`>
- **Implementation result:** <concise factual summary>
- **Observed events:**
  - <what happened, including failures, corrections, and meaningful non-events>
- **Durable artifacts:**
  - <exact run URL, job/check name, repository-relative path, log, trace,
    profile, screenshot, review thread, or post-mortem section>
- **Evidence assessment:** <why the resulting confidence is Strong, Moderate,
  Weak, Unsupported, or Not exercised>
- **Candidate reusable lessons:** <candidate guidance, or `None`; validated
  reusable guidance belongs in campaign-lessons.md>

No implementation issue is complete until its subsection has been appended and the corresponding summary rows have been updated.

Fixture baseline repair: extensible BookingServiceTest CI gate

Appendix I: Human observations