# The terms changed. Renewal stayed a separate decision.

A changed preference selected the plan that reached payment and playback. Paid-period history, session life, device permission and renewal consent remained separate in recorded V09/V10 profiles with mock business effects.

Visitor question: What can a subscription task retain when its price, session or device permission changes?

Genre: demonstration. Website explanation · Updated 2026-10-02.

The person asks for better picture quality within the same budget. In the isolated V10 comparison, that preference selects plan:ab31 at 600 minor EUR. The selected plan reaches quote Work, mock payment, entitlement, a 1080p session and PLAYING.

The separate V09 history asks what happens later when terms change. A paid period remains recorded, but it does not extend an expired device grant or consent to a higher renewal price. Continuing playback and buying a new period have different conditions.

These are bounded subscription profiles with mock effects. V10 is separate from the main purchase/renewal history and the Atlas playback test; the recorded selection does not establish bilateral commercial negotiation.

## A purchase is followed by several different lifetimes

The person chooses an affordable Testflix subscription, obtains access for a paid period and starts playback on an allowed device. A provider may later offer different terms; a session or device grant may expire sooner than the paid period. Those changes must be handled without losing the payment history or treating it as renewed consent.

**Testflix · four semantic duties · four independent owner Hosts · explicit renewal.** [The public V09/V10 checkpoint](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/docs/testflix_v01_preflight.md) describes both the main purchase/renewal history and a later isolated preference experiment. The [Incident Atlas profile](#the-atlas-is-a-separate-playback-profile) adds a different set of controls; it does not stand in for the whole domain.

## Terms and preference become work inputs

| Stage | Main V09 history | Separate V10 A/B |
| --- | --- | --- |
| Before | Supplied catalog, budget and AD_FREE preference support the initial purchase | Retains the same finite catalog and ceiling |
| Change | A later quote is 700 minor EUR while prior consent covers 650; that alone cannot charge | Changes the preference to QUALITY, defined by resolution first and explicit tie-breakers |
| After | A paid period remains historical; renewal needs its own sufficient explicit consent | Selects `plan:ab31` at 600 minor EUR; the quote and subsequent mock transaction consume that selection |

The bounded historical capture inspection corroborates the choice: AD_FREE selected `plan:cd79` at 500 minor EUR, 720p and no ads; QUALITY selected `plan:ab31` at 600 minor EUR, 1080p with ads. A 900-minor 2160p plan exceeded the 650 ceiling. This is a supplied-catalog decision, not a claim about a real streaming service's offers.

## Four semantic duties are not four effect owners

| Gemini proposal duty | Returned fields and actual downstream role |
| --- | --- |
| `intent_interpreter` | `preference`, `priorities`, `missing_evidence`; the next role receives this output and capture reference |
| `provider_terms_analyst` | Exact catalog `terms` and eligibility; selector receives them alongside intent |
| `client_plan_selector` | `selected_plan_id` and `decision_factors`; contract reviewer sees this actual selection |
| `contract_reviewer` | `supports_selection`, `blocking_conflicts`, `missing_evidence`; disagreement stops before action |

The historical captures identify Gemini 2.5 Flash. The public transport implementation reads its configured Gemini model; it is not a promise that every Testflix profile uses one fixed version. Local validation binds each request, projection, response and capture. UserRoot, BankRoot, ProviderRoot and DeviceRoot own distinct current decisions; the four model duties remain proposals.

## A selected plan reaches the executor

The inspected public source at ref `62716374021e273b46878a824af39c1a94593cd7`, [`semantic_roles_v01.py::validate_records_v01`](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/semantic_roles_v01.py), returns the catalog plan selected by `records[2]['output']['selected_plan_id']`. The next roles' `projection_v01` carries upstream `output` and `capture_ref` rather than inventing disconnected summaries.

In [`evidence_v01.py::TestflixHandlerV01.handle_v01`, lines 223–229](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/evidence_v01.py), the actual code is:

```python
semantics = semantic.collect_semantics_v01(request,provider)
quote = kernel.collect_quote_work_v01(request,semantics,host_pair=self.hosts['user'] if continuing else None)
values = validate_quote_v01(request,semantics,quote)
selection = review_user_selection_v01(request,semantics,quote)
validate_user_selection_v01(selection,request,semantics,quote)
plan = semantics['selected_plan']
```

Code attribution: Hedgehog OS, `AGPL-3.0-only`. This selected code excerpt retains its source license; the publication's [rights and attribution note](https://github.com/AAkhtanin/hedgehog-os/blob/800f38c3407b3f4ec93dc943c977ffeecb614881/docs/showcase/radiolaria_os_v01/RIGHTS.md) distinguishes code from explanatory text and historical evidence.

`validate_quote_v01` checks completed quote/period results against plan ID, price, time and retained Host attempts. Lines 245–254 construct payment inputs from that actual quote and dispatch through BankRoot's Host. The payment receipt then supplies the entitlement candidate; ProviderRoot issues entitlement and session; DeviceRoot consumes the session through the playback capability. The paid period uses `renewal='EXPLICIT_ONLY'`.

The V10 checkpoint reports this complete consumption chain for the 600-minor choice. The selected historical capture and purchase payload were also inspected locally: quote Work is `COMPLETED`, its inputs contain the chosen plan/price, payment is 600 minor EUR, entitlement carries that plan and playback becomes `PLAYING`. This site's source route remains the public checkpoint and code; raw working archives, prompts and provider responses are not republished.

### QUALITY reached the mock transaction

The V10 checkpoint reports plan:ab31 at 600 minor EUR, consumed through quote, independent Root decisions, payment, entitlement, session and device execution.

Record: **V10 A/B Completion and Saved-Capture Validation**. Class: checkpoint report with bounded local historical corroboration. Scope: Isolated V10 A/B mock payment; code inspected as text; selected original historical capture/consumer chain read locally, not republished or rerun. This is not a third purchase in the V09 main history.

- `docs/testflix_v01_preflight.md: V10 section, selected plan`: `plan:ab31; 600 minor EUR`
- `docs/testflix_v01_preflight.md: V10 section, captured counterpart`: `Fresh genuine Hosts; zero new model calls; two generation-mode differences`
- `evidence_v01.py::TestflixHandlerV01.handle_v01`: `selected plan → completed quote → Bank payment → Provider entitlement/session → Device playback`

[View source — V10 A/B Completion and Saved-Capture Validation](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/docs/testflix_v01_preflight.md)


## New terms do not rewrite the paid period

V09 keeps the same four independent Hosts, the paid-period record and historical packet. A 700-minor reprice under 650 consent cannot charge. The separate 500 and 600 positive controls are not extra purchases in the main history.

The public [`demo_story_v01.py::run_story_v01`](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/demo_story_v01.py) makes the lifecycle concrete: purchase; information request; stop; fresh playback; period expiry; a new device grant; observed quote; explicit 700-minor renewal; renewed playback. The previous one-day device grant is not stretched. Renewing produces a new period rather than modifying the already-consumed one. A stored payment or a recommendation to renew never supplies the person's new consent.

This is inspected implementation plus attributed historical records, not a fresh execution by this site. P04 is explicitly labelled `SEPARATE_CONTROLLED_BANK_E_EVIDENCE_NOT_REEXECUTED_BY_THIS_STORY`.

## Preserve the failed attempts and the successful continuation

V09's QUALITY attempt ended after two usable role responses and three transport failures. V10 reused responses 14/15 and completed selector/reviewer calls 19/20. It reports one isolated A/B mock payment, separate from the main history's purchase and renewal. Its captured counterpart used fresh genuine Hosts and zero new model calls; only the two declared generation-mode fields differed, so its seal identity also differed.

Responses 10–13 retain `semantic_review_disagreement` under their original contract. Failures 16–18 remain two Google 504s and a ReadTimeout. Neither parser repair nor eventual agreement proves bilateral commercial negotiation. The supported event is preference-sensitive selection, current review and actual downstream consumption.

## The Atlas is a separate playback profile

The [published case ledger](https://github.com/AAkhtanin/hedgehog-os/blob/800f38c3407b3f4ec93dc943c977ffeecb614881/docs/showcase/radiolaria_os_v01/references/cases/source_ledger.json) identifies `INCIDENT_ATLAS_TESTFLIX_AT3_V01` as `AUTHORED_CONTROLLED_NATIVE_MOCK`. It tests changed price, exact expiry or revocation, duplicate payment-period use and missing consent. Its useful neighbour is an executed `PLAYING` continuation inside an already paid period, recorded at `/testflix/consumption/playback/output/playback_state` in the Atlas package and selected by the [public field projection](https://github.com/AAkhtanin/hedgehog-os/blob/800f38c3407b3f4ec93dc943c977ffeecb614881/docs/showcase/radiolaria_os_v01/references/cases/source_field_projections.json).

That profile's changed-price purchase is `NOT_EXECUTED`; its explicit-consent review is not the executed START. It has authored responses rather than new live model output. The [Atlas page](/research/incident-atlas/) preserves these boundaries and the actual experience consumer.

## Read this case with its source boundaries

Use the compact site XML/TXT reader for this narrative, or the [public checkpoint](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/docs/testflix_v01_preflight.md), [semantic duties](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/semantic_roles_v01.py), [effect consumer](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/evidence_v01.py) and [story code](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/demo_story_v01.py) for deeper inspection. No separate public original Testflix presentation or domain XML was established in this source pass. The site's reader is an explicitly new editorial focus, not an invented historical release artifact.

## This is the same kernel

[Airline](/demonstrations/airline/) shows independent owner decisions in a coordinated transaction. [Supplier](/demonstrations/supplier/) changes the evidence before separate approval permits a limited effect. [External DRS](/demonstrations/external-drs/) preserves historical information while checking current use again. The [one-kernel map](/understand/one-kernel/) and [Geometry](/research/geometry/) connect those relations to Testflix's actual computation and temporal lifetimes.

## Case identity

**V09 main purchase/renewal; V10 isolated QUALITY A/B and captured reexecution; separate Atlas AT3 controlled profile**

Task: Select an affordable subscription from current supplied terms, pay through a mock bank, issue a bounded entitlement and playback session, and renew only with explicit consent.

Roles: Person supplying preference and purchase or renewal consent; Gemini 2.5 Flash in four semantic proposal duties in inspected historical captures; UserRoot, BankRoot, ProviderRoot and DeviceRoot with independent Hosts; Ordinary quote and period Work; Local validators and mock payment, entitlement, session and device executors.

Observed result: V10 QUALITY selected plan:ab31 at 600 minor EUR and consumed it through quote, independent decisions, mock payment, entitlement, session and playback; main renewal is a separate V09 history.

Limits:

- Current public checkpoint plus inspected source code; selected historical capture chain corroborated locally without republishing the working bundle
- Supplied catalog, controlled logical time and mock business effects
- Four model duties do not constitute four independent owners or prove bilateral negotiation
- V10 A/B is not a third purchase in the main history; P04 remains separate


## Read with your assistant

A complete first explanation in one offline file, with the same episodes, selected fields, attributed excerpts and source routes as this page. SITE FOCUS V01 is a new editorial selection; original publications are linked in the case.

[Download XML](/downloads/cases/RADIOLARIA_SITE_FOCUS_TESTFLIX_V01.xml) · 20,041 bytes · SHA-256: `31e8d92316c80327e625938fe1f47fcd3165bae87cfed2f14ed06540c7392d2d`

[Download TXT](/downloads/cases/RADIOLARIA_SITE_FOCUS_TESTFLIX_V01.txt) · 18,436 bytes · SHA-256: `ad5120ff54574f2314a15ec75861230ec185d75ae6d649a48bfddb945fbef4bb`

## Sources and scope

- [Testflix V09/V10 checkpoint and admission scope](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/docs/testflix_v01_preflight.md) — published historical checkpoint; ref `62716374021e273b46878a824af39c1a94593cd7`; path `docs/testflix_v01_preflight.md`. Source date: later repository snapshot N. Access: Read-only immutable local Git object inspected; bytes and SHA-256 calculated; anonymous HTTP not tested by this inspection; checked 2026-10-02.
- [Testflix semantic duties and upstream binding](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/semantic_roles_v01.py) — inspected code not execution; ref `62716374021e273b46878a824af39c1a94593cd7`; path `hedgehog/domains/testflix/semantic_roles_v01.py`. Source date: later repository snapshot N. Access: Read-only immutable local Git object inspected; bytes and SHA-256 calculated; anonymous HTTP not tested by this inspection; checked 2026-10-02.
- [Testflix actual quote-to-effect consumer](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/evidence_v01.py) — inspected code not execution; ref `62716374021e273b46878a824af39c1a94593cd7`; path `hedgehog/domains/testflix/evidence_v01.py`. Source date: later repository snapshot N. Access: Read-only immutable local Git object inspected; bytes and SHA-256 calculated; anonymous HTTP not tested by this inspection; checked 2026-10-02.
- [Testflix purchase and explicit-renewal story implementation](https://github.com/AAkhtanin/hedgehog-os/blob/62716374021e273b46878a824af39c1a94593cd7/hedgehog/domains/testflix/demo_story_v01.py) — inspected code not execution; ref `62716374021e273b46878a824af39c1a94593cd7`; path `hedgehog/domains/testflix/demo_story_v01.py`. Source date: later repository snapshot N. Access: Read-only immutable local Git object inspected; bytes and SHA-256 calculated; anonymous HTTP not tested by this inspection; checked 2026-10-02.
- [Cross-case source ledger: distinct domain profiles](https://github.com/AAkhtanin/hedgehog-os/blob/800f38c3407b3f4ec93dc943c977ffeecb614881/docs/showcase/radiolaria_os_v01/references/cases/source_ledger.json) — publication source ledger; ref `800f38c3407b3f4ec93dc943c977ffeecb614881`; path `docs/showcase/radiolaria_os_v01/references/cases/source_ledger.json`. Source date: published snapshot P. Access: Read-only immutable local Git object inspected; bytes and SHA-256 calculated; anonymous HTTP not tested by this inspection; checked 2026-10-02.
- [Cross-case selected source fields](https://github.com/AAkhtanin/hedgehog-os/blob/800f38c3407b3f4ec93dc943c977ffeecb614881/docs/showcase/radiolaria_os_v01/references/cases/source_field_projections.json) — editorial selected field projection EVIDENCE ONLY; ref `800f38c3407b3f4ec93dc943c977ffeecb614881`; path `docs/showcase/radiolaria_os_v01/references/cases/source_field_projections.json`. Source date: published snapshot P. Access: Read-only immutable local Git object inspected; bytes and SHA-256 calculated; anonymous HTTP not tested by this inspection; checked 2026-10-02.

This page is a website explanation, updated 2026-10-02. Its explanation does not create a new execution result or change the status of its sources.

## Continue reading

- [Three owners. One coordinated transaction.](/demonstrations/airline/)
- [One supplier was blocked. Permitted work still continued.](/demonstrations/supplier/)
- [Another owner's result became a checked local input.](/demonstrations/external-drs/)
- [A refusal is only half the test.](/research/incident-atlas/)
- [Different demonstrations. One execution model.](/understand/one-kernel/)
- [Seven views of the same activity.](/research/geometry/)
