J4 / UPGRADES
← All practice results

p2-09-vue

Public GitHub evidence ↗

# p2-09-vue — Batch 3 result: GREEN
Source: gothinkster/vue-realworld-example-app @ feb0b7d25c4e4c872d96fe91356c74e06c14506e.
Owned fork: https://github.com/j4groupfounders/j4-p2c-vue
Framework: 2.6.10 → 2.7.16.
Preregistration: https://github.com/j4groupfounders/j4-upgrades-harness/commit/8e883215a36bda9737108fe0f6486ab59696c8dc
Baseline: https://github.com/j4groupfounders/j4-p2c-vue/actions/runs/37575692107; 19 project tests, no skipped tests.
Terminal evidence: https://github.com/j4groupfounders/j4-p2c-vue/actions/runs/37576036097 @ 26652bfbfcd1108e31e7ef43417f8dbb0a92c8b8.

## Outcome
**GREEN** — 19/19 project tests, boot and component snapshots pass; five faults caught by combined checks. Expected-framework renderTracked hook classified; destination EOL.
4 CI runs, **2.98 actual job-minutes**, **3.03 wall-minutes** (registration to terminal update, includes overlapping waits).
No paid service/model API calls or human edits. Free public-fork Actions. No upstream PRs/issues/contact.
p2-04-fastapi remains RED; p2-07 is an independent registered attempt.

## Migration decisions
Vue 2.6.10 → 2.7.16: expected-framework / changed: Vue 2.7 emits an extra dev-only hook:renderTracked during fixture render. Raw actual snapshot is preserved; only that new framework instrumentation event is excluded from comparison. Business pagination events and all component HTML remain exact baseline comparisons. No application or project-test changes. Destination is EOL, not production-supported.


## Verification and limitations
Project-only faults caught: 3/5; project plus characterization: 5/5.
Exact independent fault outcomes in seed-results.json; source restored after each mutation.
Each seeded run enforces unchanged test inventory and rejects test/build/infra errors as detection.
No test removal or new skips. See committed baseline and raw terminal surface artifacts for classified framework drift.
Fixed unauthenticated scope only; Vue adds four component fixtures plus pagination events; Spring uses default seeded H2 data and full own-suite Docker integration tests.
No full-app route/line coverage, authenticated frozen-fixture replay or frozen-clock claim. Vue destination 2.7.16 is EOL, not a production-supported recommendation.
Wall minutes overlap across pilots and must not be summed.

## Runs
- [37575622662](https://github.com/j4groupfounders/j4-p2c-vue/actions/runs/37575622662): success, 0.567 job-min.
- [37575692107](https://github.com/j4groupfounders/j4-p2c-vue/actions/runs/37575692107): success, 0.633 job-min.
- [37575902001](https://github.com/j4groupfounders/j4-p2c-vue/actions/runs/37575902001): failure, 0.767 job-min.
- [37576036097](https://github.com/j4groupfounders/j4-p2c-vue/actions/runs/37576036097): success, 1.017 job-min.

Artifact note: components.actual.json is written on every fixture run, including mutations, so the final run root copy contains the last injected fault. The unmutated upgraded raw component snapshot is preserved in run 37575902001; the green run log proves the classified exact comparison passed before mutations. Per-fault raw output lives under seed-evidence/.