# Complete constructed decisions

These are teaching inputs, not LinkedIn observations. example.test is reserved. No network requests or account actions occur.

## URL migration

M1 starts with two exact stale href values in portfolio-initial.html.txt: p1-old and t1-old. The visible profile label already says current. The old-profile observation identifies P1, while old-post is not_found. They answer different questions; a retained profile alias cannot pass the post link. portfolio-corrected.html.txt contains p1-current and t1-current, reducing the stale destination count from 2 to 0. The supplied current observations identify member P1 and post T1. This completes only the supplied owned-portfolio fixture.

M2-resume contains the expected profile URL, but its supplied observation is sign_in and has no identity. Decision: held_target_unverified. Correct markup is not a completed target observation. Neither broken nor verified is inferred from the sign-in gate.

M3-card has the expected post URL but its supplied identity is T9 rather than T1. Decision: held_wrong_target. Investigate the actual destination and make a fresh check; do not accept a matching string as proof of content.

M4-external is an uncontrolled copy with an unknown observation. Decision: external_copy_unresolved. Owned changes do not repair a third party's saved file or establish its current status.

## Language editions

Source r1: member P1 contributed to release testing, reviewed 12 samples, month 2026-10. EN-r1 and DE-r1 preserve those declared facts. They do not claim a causal impact or leadership.

Source r2 changes the quantity to 15 and preserves role and month. DE-stale retains 12, so its quantity is held. DE-strong has 15 but substitutes release_lead, so its stronger role is held. DE-r2 preserves contributor, 15 and 2026-10 and aligns with r2. These semantic fields are manually supplied; the checker cannot judge translation quality from prose.

With primary en and available en/de: V1 uses site language de and selects de by a match. V2 uses fr with no fr edition and falls back to en. V3 also uses fr but explicitly selects de, yielding de. These are model results, not real viewer observations.

R1 plans to remove de and retain primary en; the declared German viewer then falls back to en. The plan is not an actual removal, native readback or proof about an old language link. R2 proposes removing en while it remains primary; the exercise holds that unresolved planning choice. This is a workflow safeguard, not an observed platform rejection.

## Private completion

For a real change record the actual saved native state, source and exported file, exact target or language edition, observed identity/content, viewing context and unresolved scope. Do not copy the fixture outcomes into a real record. Run python3 check.py with existing Python 3 to reproduce supplied decisions. It certifies neither a native profile operation nor translation quality, preference, payment, search performance or customer value.
