From 2df1d9482ba00339f9a8fb21534292adb313cfee Mon Sep 17 00:00:00 2001 From: tegwick Date: Sun, 27 Sep 2026 01:53:48 +0200 Subject: [PATCH 1/3] Preregister authority projection comparison Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9 --- .../cycles/2026-09-27-authority-projection.md | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 research/evolution/cycles/2026-09-27-authority-projection.md diff --git a/research/evolution/cycles/2026-09-27-authority-projection.md b/research/evolution/cycles/2026-09-27-authority-projection.md new file mode 100644 index 0000000..969f34d --- /dev/null +++ b/research/evolution/cycles/2026-09-27-authority-projection.md @@ -0,0 +1,51 @@ +# LEARN-0015 — Separate authority from projection and delivery + +Status: preregistered before new source collection. Date: 2026-09-27 Europe/Berlin. +Reviewer: Codex, author-model; no independent human validation. +Stream: cross-stream (C/D). Comparison group: CD-authority-projection-documentary-v1. + +## Question and prior + +Do Server/Local/Replicated Authority and Server/Client/Streaming Projection describe +six reusable patterns, or a mixture of context choices and implementation strategies? +Prior: authority is scoped to particular data/decisions, acknowledgement levels differ, +and rendering placement need not determine authority. Dedicated drafts for all six +are absent. We expect some seed labels need decomposition rather than automatic +promotion. Classification inventories are editorial priors, not empirical evidence. + +## Registered method + +Follow research/plan/AuthorityProjectionComparison.md: at most six primary-source +documents, at least two independent source families, with versions/access dates and +claim locators. Reuse existing local reviews as priors only. Candidate source targets: +Firestore offline/transaction documentation for cached versus accepted writes, +Automerge documentation for local replicas/merge, and SvelteKit/React documentation +for server/client projection and streaming. Select at most six substantive documents; +failed fetches and path discovery do not supply evidence. No broad source expansion. + +For each seed describe authority scope, acceptance boundary, cache/replica meaning, +projection inputs, execution location and delivery timing. Produce claim table, +synthetic VC-01/VC-02 contrasting decision traces, and six retain/develop/context/ +merge/reject dispositions. Seek counterexamples to server-rendered implies server +accepted and locally rendered implies locally authoritative. Unsupported combinations +remain unknown. At most two new drafts, only if distinct contracts merit them; zero +is valid. No code execution/performance/accessibility/production claim. + +## Outcomes, effort and stop + +One bounded question, one disposition: corroboration, revision or inconclusive (or +merge/rejection if a seed decision warrants it). Record uncertainty and preserved +hypotheses; no automatic M1/M2 or canonical admission. Existing Zulip follow-up remains +open and authored navigation fixture paused. No inference planned; any later live +model execution uses llm-connect. + +Stop after six substantive documents or 45 active research minutes; allow 10 minutes +of repository verification. Start a monotonic clock after preregistration commit, +before new source collection. Active elapsed session minus timed check subprocesses +includes retrieval, interpretation and recording. Exclude preregistration and final +receipt refresh/commit/snapshot/sync administration after cutoff. Tokens/cost unknown. + +Append ledger and evidence report at review boundary; update candidate profiles and +classification only if contracts change or new candidates are warranted. Snapshot +the resulting assessment even if candidate content is unchanged. Do not combine +this new documentary protocol with earlier runtime cycles to claim a trend. From 3ce54fb2d2c7a362ceac3b5f5c8959ea9708fa18 Mon Sep 17 00:00:00 2001 From: tegwick Date: Sun, 27 Sep 2026 01:57:30 +0200 Subject: [PATCH 2/3] Separate authority projection and delivery in measured seed review Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9 --- SCOPE.md | 2 +- TREE.md | 3 + research/catalog/ClassificationCoverage.md | 2 +- research/catalog/PatternCandidateCatalog.md | 12 ++ research/catalog/SourceCatalog.md | 18 +++ research/evolution/EvolutionReport.md | 26 +++- ...026-09-27-authority-projection-effort.json | 26 ++++ research/evolution/ledger.json | 34 ++++ .../plan/AuthorityProjectionComparison.md | 8 +- .../reviews/AuthorityProjectionComparison.md | 145 ++++++++++++++++++ research/reviews/NavigationCoverage.md | 7 + scripts/classification_coverage.py | 2 +- workplans/FEP-WP-0003-contrasting-schools.md | 17 ++ workplans/FEP-WP-0006-language-evolution.md | 17 ++ 14 files changed, 311 insertions(+), 8 deletions(-) create mode 100644 research/evolution/cycles/2026-09-27-authority-projection-effort.json create mode 100644 research/reviews/AuthorityProjectionComparison.md diff --git a/SCOPE.md b/SCOPE.md index 6ff2543..be182cd 100644 --- a/SCOPE.md +++ b/SCOPE.md @@ -49,7 +49,7 @@ submitted model-review adjudication. It establishes neither a naming benefit nor equivalence; independent human validation and decision-time measurement remain open. Evolution profiles, a baseline, learning ledger, snapshots and a generated report -are implemented. Four effort-accounted prospective cycles belong to four different +are implemented. Five effort-accounted prospective cycles belong to five different comparison groups: there is no comparable window for a diminishing-returns claim. Evidence types, implementation families and review provenance remain distinct. Static source mechanisms and authored runtime fixtures do not establish complete diff --git a/TREE.md b/TREE.md index 7288b35..7611bb1 100644 --- a/TREE.md +++ b/TREE.md @@ -353,6 +353,8 @@ research/evaluations/language-pilot-01/summary.json research/evolution/EvolutionReport.md research/evolution/README.md research/evolution/context.json +research/evolution/cycles/2026-09-27-authority-projection-effort.json +research/evolution/cycles/2026-09-27-authority-projection.md research/evolution/cycles/2026-09-27-navigation-effort.json research/evolution/cycles/2026-09-27-navigation-focus-effort.json research/evolution/cycles/2026-09-27-navigation-focus.md @@ -431,6 +433,7 @@ research/plan/ResearchProtocol.md research/plan/ValidationCases.md research/reviews/ActivationConflictsAndReload.md research/reviews/AuthorityPilot.md +research/reviews/AuthorityProjectionComparison.md research/reviews/BoundaryRecoveryExperiment.md research/reviews/CarniatoAdmissionRegression.json research/reviews/FeatureDeploymentBoundaries.md diff --git a/research/catalog/ClassificationCoverage.md b/research/catalog/ClassificationCoverage.md index ea2bf9c..1da9f20 100644 --- a/research/catalog/ClassificationCoverage.md +++ b/research/catalog/ClassificationCoverage.md @@ -142,6 +142,6 @@ Selected trade-offs only. Counts are unique candidates per force, even if a forc ## Research implication -The developed corpus concentrates on interaction/recovery; authority placement and basic projection choices remain underdeveloped. Family membership alone hides this gap. The next bounded authority/projection comparison is specified in [the research brief](../plan/AuthorityProjectionComparison.md). Keep the navigation fixture paused; pending Zulip applicability questions remain in WP-0003 T01. +The developed corpus concentrates on interaction/recovery; authority placement and basic projection choices remain underdeveloped. Family membership alone hides this gap. The [completed authority/projection comparison](../reviews/AuthorityProjectionComparison.md) separates scoped acceptance, projection placement and delivery; it retains all six seeds without adding drafts. Keep the navigation fixture paused; pending Zulip applicability questions remain in WP-0003 T01. This inventory is a coverage aid, not a maturity score, empirical learning cycle, graph export or proof that the initial ontology is sufficient. diff --git a/research/catalog/PatternCandidateCatalog.md b/research/catalog/PatternCandidateCatalog.md index fa1995e..6e1f70d 100644 --- a/research/catalog/PatternCandidateCatalog.md +++ b/research/catalog/PatternCandidateCatalog.md @@ -150,3 +150,15 @@ Independent Feature Boundary follow-up: [native-module release cases](../reviews add bounded execution for publication, activation, session-scoped rollback and artifact retention. Corpus remains seventeen hypotheses; synthetic host behavior is not an independent application use or production release guarantee. + +## Authority/projection seed dispositions — 2026-09-27 + +[AP01–AP06 and six-seed matrix](../reviews/AuthorityProjectionComparison.md) distinguish +scoped acceptance, projection placement and partial delivery. Server/Local Authority +remain scoped context choices pending complete pattern contracts; Replicated Authority +needs a decision-rights/convergence distinction. Server/Client Projection remain +strategies; Streaming Projection is provisionally a delivery qualifier, with a possible +partial-delivery pattern still unproven. Retain all six seeds; none rejected or merged. +Zero new drafts: seventeen hypotheses, seven original seeds developed, nine without +dedicated drafts. Six documentary sources and two synthetic traces do not confer +independent recurrence or human usefulness. Initial seed rows remain historical. diff --git a/research/catalog/SourceCatalog.md b/research/catalog/SourceCatalog.md index e54ba4c..240a6ae 100644 --- a/research/catalog/SourceCatalog.md +++ b/research/catalog/SourceCatalog.md @@ -205,3 +205,21 @@ SRC-0013 follow-up at existing pinned revision search, message-fetch/list and continuation paths, distinct from prior draft/send reads; same application family. Static partial mechanisms and limiting branches; no upstream tests or application executed. No full-pattern/no-script or bug claim. + +## Authority/projection comparison — 2026-09-27 + +Six primary documents read under LEARN-0015; living versions accessed 2026-09-27, +exact revisions unknown. [AP01–AP06](../reviews/AuthorityProjectionComparison.md) +records section locators, interpretations and limits. Documentary evidence only. + +| ID | Source | Family | +| --- | --- | --- | +| SRC-0041 | [Firestore offline data](https://firebase.google.com/docs/firestore/manage-data/enable-offline) | Firestore | +| SRC-0042 | [Firestore transactions and batched writes](https://firebase.google.com/docs/firestore/manage-data/transactions) | Firestore | +| SRC-0043 | [Automerge introduction](https://automerge.org/docs/hello/) | Automerge | +| SRC-0021 (reused) | [SvelteKit page options](https://svelte.dev/docs/kit/page-options) | SvelteKit | +| SRC-0044 | [SvelteKit loading data](https://svelte.dev/docs/kit/load) | SvelteKit | +| SRC-0045 | [React renderToPipeableStream](https://react.dev/reference/react-dom/server/renderToPipeableStream) | React | + +Six documents are four families, not six independent applications. No runtime, +source-code verification, complete pattern recurrence or new maturity is established. diff --git a/research/evolution/EvolutionReport.md b/research/evolution/EvolutionReport.md index 6e3e7b4..86b9f8c 100644 --- a/research/evolution/EvolutionReport.md +++ b/research/evolution/EvolutionReport.md @@ -55,9 +55,9 @@ Ten selected retrospective outcomes (not a historical census), followed by prosp | inconclusive | 0 | | merge | 0 | | rejection | 0 | -| revision | 12 | +| revision | 13 | -Cycles with recorded research effort: 4/14. Unknown effort is neither zero nor estimated from commits, tokens or assertion counts. +Cycles with recorded research effort: 5/15. Unknown effort is neither zero nor estimated from commits, tokens or assertion counts. ### Stream B / B-independent-navigation-source-v1 @@ -91,6 +91,14 @@ One bounded question counts at most one consequential outcome. Corroboration and One bounded question counts at most one consequential outcome. Corroboration and inconclusive work remain visible separately. Fewer than three comparable cycles: no trend assessment. +### Stream cross-stream / CD-authority-projection-documentary-v1 + +| Cycle | Outcome | Research minutes | Consequential outcome/hour | +| --- | --- | ---: | ---: | +| LEARN-0015 | revision | 3.128 | 19.18 | + +One bounded question counts at most one consequential outcome. Corroboration and inconclusive work remain visible separately. Fewer than three comparable cycles: no trend assessment. + ## Coherence and maintainability Profile hashes and local references passed validation when this report was generated. That checks traceability, not source truth or external URL freshness. @@ -569,3 +577,17 @@ Evidence: [ZulipNavigationSourceStudy](../../research/reviews/ZulipNavigationSou Remaining uncertainty: Static targeted ranges in twelve files, no Zulip runtime/upstream test execution or independent human/AT review. Auxiliary lookup/anchor continuations, deferred focus and callback wiring need a bounded follow-up before any race claim. One Zulip family supplies partial mechanisms, not full-contract recurrence or a no-script guarantee. Supersedes: none recorded. + +### LEARN-0015 — Do the six authority/projection seeds denote reusable patterns or a mixture of scoped acceptance, projection placement and delivery choices? + +2026-09-27 · stream cross-stream · prospective · revision + +Before: Authority is scoped and acknowledgement levels differ, but six seed names lack developed contracts and their projection/delivery relationships are not explicitly compared. + +Conclusion: Revise the research decision aid to separate scoped acceptance, projection computation and delivery timing with compatibility constraints. Six seed dispositions and two synthetic traces; retain all seeds, zero new drafts or candidate maturity changes. + +Evidence: [AuthorityProjectionComparison](../../research/reviews/AuthorityProjectionComparison.md), [2026-09-27-authority-projection-effort](../../research/evolution/cycles/2026-09-27-authority-projection-effort.json). + +Remaining uncertainty: Six living primary documents across four families, not independent full-contract implementations; exact revisions unknown. Synthetic VC-01/02 reasoning is not execution or demonstrated usefulness; authority/merge/storage and phase-specific recovery contracts still need application evidence. Existing candidate profiles unchanged; five prospective groups are not a comparable learning trend. + +Supersedes: none recorded. diff --git a/research/evolution/cycles/2026-09-27-authority-projection-effort.json b/research/evolution/cycles/2026-09-27-authority-projection-effort.json new file mode 100644 index 0000000..90f50f6 --- /dev/null +++ b/research/evolution/cycles/2026-09-27-authority-projection-effort.json @@ -0,0 +1,26 @@ +{ + "start": 204294.311997571, + "start_utc": "2026-09-26T23:53:48.559040+00:00", + "execution_seconds": 1.9966537069994956, + "executions": [ + { + "command": [ + "make", + "classification-check", + "evolution-check", + "evolution-test", + "schema-test" + ], + "seconds": 1.9966537069994956, + "exit_code": 0 + } + ], + "status": "complete", + "end_utc": "2026-09-26T23:57:12.882038+00:00", + "elapsed_seconds": 189.673, + "research_minutes": 3.128, + "execution_minutes": 0.033, + "method": "Monotonic single-agent elapsed session minus timed repository-check subprocesses. Source retrieval, interpretation and recording count as active research; no application or upstream tests executed.", + "excluded": "Preregistration and final receipt refresh, commit/snapshot/sync administration after cutoff. Tokens and cost unknown.", + "budget": "Six primary documents / four source families; within 45 research and 10 verification minutes." +} diff --git a/research/evolution/ledger.json b/research/evolution/ledger.json index fb3c801..a6ee786 100644 --- a/research/evolution/ledger.json +++ b/research/evolution/ledger.json @@ -489,6 +489,40 @@ "cost_usd": null }, "supersedes": [] + }, + { + "id": "LEARN-0015", + "date": "2026-09-27", + "recording": "prospective", + "stream": "cross-stream", + "comparison_group": "CD-authority-projection-documentary-v1", + "protocol_ref": "research/evolution/cycles/2026-09-27-authority-projection.md", + "question": "Do the six authority/projection seeds denote reusable patterns or a mixture of scoped acceptance, projection placement and delivery choices?", + "previous_belief": "Authority is scoped and acknowledgement levels differ, but six seed names lack developed contracts and their projection/delivery relationships are not explicitly compared.", + "conclusion": "Revise the research decision aid to separate scoped acceptance, projection computation and delivery timing with compatibility constraints. Six seed dispositions and two synthetic traces; retain all seeds, zero new drafts or candidate maturity changes.", + "disposition": "revision", + "affected_patterns": [], + "evidence": [ + "research/reviews/AuthorityProjectionComparison.md", + "research/evolution/cycles/2026-09-27-authority-projection-effort.json" + ], + "remaining_uncertainty": [ + "Six living primary documents across four families, not independent full-contract implementations; exact revisions unknown.", + "Synthetic VC-01/02 reasoning is not execution or demonstrated usefulness; authority/merge/storage and phase-specific recovery contracts still need application evidence.", + "Existing candidate profiles unchanged; five prospective groups are not a comparable learning trend." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": 3.128, + "execution_minutes": 0.033, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] } ] } diff --git a/research/plan/AuthorityProjectionComparison.md b/research/plan/AuthorityProjectionComparison.md index 9d90483..a2f5923 100644 --- a/research/plan/AuthorityProjectionComparison.md +++ b/research/plan/AuthorityProjectionComparison.md @@ -1,8 +1,10 @@ # Next bounded comparison — authority placement and projection -Prepared: 2026-09-27 · WP-0003 T01 · Status: ready for prospective registration. -This brief selects the next breadth investigation; no source investigation or -empirical cycle has been executed by writing it. +Prepared: 2026-09-27 · WP-0003 T01 · Status: completed bounded documentary comparison. +Originally prepared before execution. LEARN-0015 was preregistered at `2df1d94`; +the [completed review](../reviews/AuthorityProjectionComparison.md) records six +documents, six seed dispositions and two synthetic traces. Zero new drafts. +The original method and limits below are retained for comparison. ## Why this question diff --git a/research/reviews/AuthorityProjectionComparison.md b/research/reviews/AuthorityProjectionComparison.md new file mode 100644 index 0000000..94b90e9 --- /dev/null +++ b/research/reviews/AuthorityProjectionComparison.md @@ -0,0 +1,145 @@ +# Authority, projection and delivery — bounded comparison + +Date: 2026-09-27 Europe/Berlin. LEARN-0015 preregistered at `2df1d94`. +Reviewer: Codex, author-model. Six primary documents, four source families; documentary +interpretation only. No application, library tests, model inference or usability trial +executed. Living documentation accessed 2026-09-27; exact revisions unknown. + +## Result + +Revise how we use the six seed labels: authority placement, projection placement and +delivery timing are separate decisions with compatibility constraints. The initial +catalog mixes these categories. They are useful discovery terms, but six nouns do not +establish six recurring pattern contracts. **No new draft is justified by this slice.** +The corpus remains seventeen hypotheses; all six seeds remain available for research. + +This strengthens the earlier [authority pilot](AuthorityPilot.md), which already +scoped authority by data/decision and separated acknowledgements. The new contribution +is an explicit comparison across projection phases and partial delivery, with two +synthetic decision traces. It does not establish universal independence of all axes. + +## Primary claims and limits + +The following are paraphrases of located documentation. Interpretations in the last +column are ours. These sources describe mechanisms, not independent full-pattern uses. +Section anchors are locators on living pages; they do not pin historical content. + +| Claim | Source / locator | Located statement | Interpretation and limit | +| --- | --- | --- | --- | +| AP01 | SRC-0041, [Firestore offline data](https://firebase.google.com/docs/firestore/manage-data/enable-offline), introduction, Configure cache size, Listen to offline data | Clients can access and modify cached data offline, then synchronize. Cached observations may be stale/incomplete; cache cleanup is configurable. | Local availability does not establish a complete, permanently retained local record or global acceptance. This is a cache mechanism, not proof of VC-02's durable note contract. | +| AP02 | SRC-0042, [Firestore transactions](https://firebase.google.com/docs/firestore/manage-data/transactions#updating_data_with_transactions), Updating data with transactions; Batched writes | Transactions atomically apply writes, may rerun on contention and fail offline. Batched writes have different offline behavior. | Acceptance must be specified by operation type. Offline display or a queued write cannot stand in for a connectivity-dependent transactional decision. We did not inspect authorization rules or prove end-to-end acceptance. | +| AP03 | SRC-0043, [Automerge introduction](https://automerge.org/docs/hello/), introduction and Design principles | Devices can change local copies offline and later exchange/merge changes; networking can use client/server or peer connections. | A server transport need not be the sole semantic decision-maker. Convergence is not evidence that arbitrary approval rules, permissions or storage crash guarantees are satisfied. The high-level introduction does not resolve field-level merge conflicts for our briefs. | +| AP04 | SRC-0021, [SvelteKit page options](https://svelte.dev/docs/kit/page-options#ssr), ssr/csr/prerender | Initial server rendering, browser rendering and prerendering are configurable; disabling both SSR and CSR leaves no rendered view. | Projection can vary by phase and route. A rendering switch says nothing by itself about which domain mutations are accepted. | +| AP05 | SRC-0044, [SvelteKit loading](https://svelte.dev/docs/kit/load#Universal-vs-server), Universal vs server; Streaming with promises | Server loaders execute server-side; universal loaders can run during SSR and later in the browser. Server promises can stream; documented limits include buffering, script dependence and committed response headers. | Data acquisition, view computation and delivery schedule need separate contracts. A stream is not automatically a no-script continuation. Deployment buffering limits apply to the inspected mechanism, not every streaming protocol. | +| AP06 | SRC-0045, [React renderToPipeableStream](https://react.dev/reference/react-dom/server/renderToPipeableStream), Parameters, Streaming more content as it loads, Setting the status code | Shell-ready and all-ready callbacks permit different emission schedules. Later content uses scripted fallback replacement; response status cannot change after streaming starts. | Streaming qualifies delivery and recovery within a projection strategy. A shell or HTTP status does not establish completion of all content or a business operation. No latency benefit was measured. | + +Source families are Firestore, Automerge, SvelteKit and React. The two Firestore pages +and two SvelteKit pages are not separate implementation families. Existing SRC-0021 +is reused rather than assigned a second identity. All six documents reached the +registered cap; no linked tutorials, SDK source, security rules or merge-rule pages +were opened as additional evidence. + +## Six-seed decision matrix + +Each row states the contract that would be needed, not an established implementation. +“Not fixed” means the label alone leaves that decision unspecified. + +| Seed | Authority scope / acceptance | Replica or cache meaning | Projection inputs / execution | Delivery | Disposition | +| --- | --- | --- | --- | --- | --- | +| Server Authority | Named shared decision accepted by a designated service; UI feedback is separate | Local observations may be cached or tentative | Accepted snapshot and separate draft; server or browser computation possible | Not fixed | Retain seed as a scoped context choice; no generic whole-application authority draft | +| Local Authority | Named local record accepted under an explicit device storage contract | Primary local record must be distinguished from evictable cache | Locally available accepted state plus unsaved input; remote projection cannot be required for offline continuation | Not fixed | Retain seed; define durability and external acceptance scopes before a new pattern | +| Replicated Authority | Specify which replica operations are admissible and how shared meaning is resolved | Multiple writable histories; replication alone does not define decision rights | A declared replica/version may feed a view; convergence and current knowledge differ | Not fixed | Refine seed question: convergence mechanism versus domain authority; do not equate CRDT use with universal acceptance | +| Server Projection | Does not itself specify mutation acceptance | Could consume a snapshot, cache or replica | A server computes a declared representation from identified inputs | Complete or incremental | Retain as projection strategy; a dedicated pattern needs forces, recovery and recurring context | +| Client Projection | Does not itself specify mutation acceptance | Could consume remote observations or a local primary record | A client computes the representation from available inputs | Initial, subsequent or incremental updates | Retain as projection strategy; no implied offline durability or domain authority | +| Streaming Projection | Does not itself specify mutation acceptance | No replication/acceptance guarantee | Identify what is streamed: view fragments or data used to compute a view | Partial delivery with completion/error and fallback rules | Treat as a delivery qualifier for this study; retain the seed for a possible partial-delivery pattern after independent evidence | + +No seed is rejected or merged into an existing draft. These are provisional research +dispositions, not a rewrite of the canonical ontology. Server/client strategies can +coexist over an interaction's lifecycle. The offline requirement constrains feasible +placement: separate dimensions are not a claim that every combination works. + +## Synthetic trace A — VC-01 transactional administration + +Reuse the [fixed brief](../walkthroughs/VC01-TransactionalAdministration.md): shared +approval records, server-validated writes and recoverable concurrent edits. These +steps are design reasoning, not new execution evidence. + +1. Name two scopes: shared approval status and the user's unfinished proposal. The + service accepts changes to the former; typing changes only the latter. +2. Load a versioned observation. Hold this authority contract constant while varying + projection: return a ready representation from the server, or return observations + for a browser-computed view. Neither presentation choice authorizes a new approval. +3. Edit and submit using the existing Local Draft State / Version-Checked Mutation / + Mutation Outcome Tracking configuration. A lost response leaves acceptance unknown + regardless of where the view was computed. Refetch separately after acceptance. +4. If the connection fails, cached content may remain useful, but the original brief + does not permit the device to grant final approval. Introducing that capability + would change the acceptance contract, not merely switch to client rendering. +5. Consider partial delivery only for nonessential sections. Decide what must be + known before exposing actionable approval controls, and how late failure is shown. + A successful shell is not the approval result. No performance ranking is inferred. + +**Rejected alternative:** treating a responsive local display as acceptance of the +shared decision. **Remaining assumption:** the service actually enforces the stated +version, authorization, business-rule and receipt contracts; rendering documentation +does not verify them. This trace remains development reasoning, not held-out testing. + +## Synthetic trace B — VC-02 offline field notes + +Reuse the [fixed brief](../walkthroughs/VC02-OfflineFieldNotes.md): work while offline, +restart, preserve divergence, reconnect and distinguish local save from propagation. + +1. Name the locally accepted note revision, pending propagation and any externally + accepted publication as different states. “Saved on this device” needs the existing + Local Commit Boundary contract; “visible in a local cache” does not establish it. +2. Require the offline editing path to compute its working view from locally available + input. An initial online server-generated view is compatible with that path, but + cannot be its only way to reconstruct new offline edits after restart. +3. Keep the local persistence and retry assumptions explicit while varying presentation: + browser-only projection versus online server projection followed by local projection. + Both still need local recovery; the choice does not remove synchronization work. +4. If multiple writers are allowed, keep the existing divergence/reconciliation path + unless a domain-appropriate automatic merge has been justified. The selected + Automerge introduction is insufficient to replace our note-resolution policy or + certify crash-safe storage. One writer removes this concurrency requirement only + under the brief's explicit assumptions. +5. Reconnection may deliver new observations incrementally. Show progress and unresolved + divergence without claiming all replicas agree. A remote projection of the latest + unsent local revision is unsupported without transferring it; no source here supplies + an offline remote-computation guarantee. + +**Rejected alternative:** remote-only computation for required offline interaction. +**Remaining assumptions:** persistence, retained data, privacy, replay identity and +recovery contracts still require implementation evidence. No new validated walkthrough. + +## Reusable questions for the next walkthrough + +For each user-visible statement or action, record: + +1. Which data/decision scope is involved, and who may accept a change? +2. What acknowledgement is available: displayed, locally committed, remotely accepted, + propagated, or reconciled? Which of these is still unknown? +3. What exact observation/version feeds the view, and is it a cache or retained record? +4. Where is the representation computed during entry, subsequent interaction and offline work? +5. Is delivery complete or partial, and how are incompleteness, failure and recovery exposed? +6. Which new constraint would invalidate this configuration? + +These questions help apply the existing vocabulary; they are not a new mandatory +component architecture or a demonstrated improvement in practitioner decisions. + +## Disposition and follow-up + +One **revision** to the research classification/decision aid, not six discoveries. +No candidate content, maturity, profiles or direct responsibility/force assignments +change: this evidence qualifies undeveloped seeds rather than verifying existing +full contracts. Counts remain 17 developed drafts, 7 original seeds developed and +9 original seeds without dedicated drafts. Preserve zero additions as a useful result. + +WP-0003 T01 next: test this decision aid against one pinned application containing +both remotely accepted shared state and locally editable state, tracking one acceptance +path and one projection transition. Preregister a bounded static study; target selection +must follow the claim, not a preferred framework. Locate contrary behavior and unknowns. +Do not start another local navigation fixture. The Zulip auxiliary continuation question +remains a separate residual. WP-0002 T03 owns independent seed/usefulness review; +WP-0003 T02/T03 retain case/ontology gates. WP-0006 T03 retains comparable-cycle and +review-date work. This fifth prospective protocol supplies no diminishing-returns trend. diff --git a/research/reviews/NavigationCoverage.md b/research/reviews/NavigationCoverage.md index aabe0eb..66714ec 100644 --- a/research/reviews/NavigationCoverage.md +++ b/research/reviews/NavigationCoverage.md @@ -55,3 +55,10 @@ a pinned Zulip navigation/search source contrast as the next evidence direction. evidence for fragment addressability and effect-specific applicability. It is a contrast to VC-03's native public-document contract, not a no-script implementation of that brief or an additional completed walkthrough. The local fixture stays paused. + +## Authority/projection contrast — 2026-09-27 + +[LEARN-0015 / AP01–AP06](AuthorityProjectionComparison.md) adds documentary contrast +across C/D: scoped acceptance, projection placement and delivery timing need distinct +contracts. Six seed dispositions and two synthetic traces; no new drafts, runtime +observation, complete pattern use or gate completion. Candidate counts remain unchanged. diff --git a/scripts/classification_coverage.py b/scripts/classification_coverage.py index 55af5f3..95c0327 100644 --- a/scripts/classification_coverage.py +++ b/scripts/classification_coverage.py @@ -80,7 +80,7 @@ def render(): lines += ['', '## Original seeds without dedicated drafts', ''] lines += ['- ' + s for s in uncovered] lines += ['', '## Research implication', '', - 'The developed corpus concentrates on interaction/recovery; authority placement and basic projection choices remain underdeveloped. Family membership alone hides this gap. The next bounded authority/projection comparison is specified in [the research brief](../plan/AuthorityProjectionComparison.md). Keep the navigation fixture paused; pending Zulip applicability questions remain in WP-0003 T01.', '', + 'The developed corpus concentrates on interaction/recovery; authority placement and basic projection choices remain underdeveloped. Family membership alone hides this gap. The [completed authority/projection comparison](../reviews/AuthorityProjectionComparison.md) separates scoped acceptance, projection placement and delivery; it retains all six seeds without adding drafts. Keep the navigation fixture paused; pending Zulip applicability questions remain in WP-0003 T01.', '', 'This inventory is a coverage aid, not a maturity score, empirical learning cycle, graph export or proof that the initial ontology is sufficient.', ''] return '\n'.join(lines) diff --git a/workplans/FEP-WP-0003-contrasting-schools.md b/workplans/FEP-WP-0003-contrasting-schools.md index 1b0b2a1..93d9b1d 100644 --- a/workplans/FEP-WP-0003-contrasting-schools.md +++ b/workplans/FEP-WP-0003-contrasting-schools.md @@ -268,3 +268,20 @@ execution remain pending; zero new drafts is a valid outcome. The earlier Zulip caller/transport/test question remains open with its recorded limitations; no fixture restart. WP-0002 T03 independent validation, T02/T03 gates here, and WP-0006 comparable measurement remain unchanged. Do not treat classification counts as maturity. + +## Authority/projection cycle completed — 2026-09-27 + +LEARN-0015 preregistered at 2df1d94; six primary documents across four families, +six seed dispositions and two synthetic VC-01/02 decision traces. One classification +revision: separate scoped acceptance, projection placement and delivery schedule. +Zero new drafts; all seventeen hypotheses and candidate profiles unchanged. No +application execution, full-contract recurrence, human validation or M1/M2 closure. +See [review](../research/reviews/AuthorityProjectionComparison.md). Fifth distinct +prospective group; no comparable-window trend. + +WP-0003 T01 next: preregister one bounded pinned-application study of shared-state +acceptance versus local editing and a projection transition, using the review's six +questions. Select the application by the needed evidence; retain contrary/unknown +paths. Existing Zulip auxiliary continuation residual stays open; local navigation +fixture remains paused. WP-0002 T03 retains independent usefulness review; WP-0003 +T02/T03 gates and WP-0006 T03 review dates/comparable measurement remain open. diff --git a/workplans/FEP-WP-0006-language-evolution.md b/workplans/FEP-WP-0006-language-evolution.md index f2600f1..47817df 100644 --- a/workplans/FEP-WP-0006-language-evolution.md +++ b/workplans/FEP-WP-0006-language-evolution.md @@ -140,3 +140,20 @@ independent recurrence, contrasting coverage/coherence, reference access and comparable learning evidence. Recommendations map to existing WP-0002/0003/0004/0006 tasks; statuses and M1/M2 gates are unchanged. This documentation assessment is not a measured empirical cycle. T03 retains review-date and comparable-window work. + +## Authority/projection cycle completed — 2026-09-27 + +LEARN-0015 preregistered at 2df1d94; six primary documents across four families, +six seed dispositions and two synthetic VC-01/02 decision traces. One classification +revision: separate scoped acceptance, projection placement and delivery schedule. +Zero new drafts; all seventeen hypotheses and candidate profiles unchanged. No +application execution, full-contract recurrence, human validation or M1/M2 closure. +See [review](../research/reviews/AuthorityProjectionComparison.md). Fifth distinct +prospective group; no comparable-window trend. + +WP-0003 T01 next: preregister one bounded pinned-application study of shared-state +acceptance versus local editing and a projection transition, using the review's six +questions. Select the application by the needed evidence; retain contrary/unknown +paths. Existing Zulip auxiliary continuation residual stays open; local navigation +fixture remains paused. WP-0002 T03 retains independent usefulness review; WP-0003 +T02/T03 gates and WP-0006 T03 review dates/comparable measurement remain open. From 5db2d0fdb0052f11f05dd931cd1b09ea784e8253 Mon Sep 17 00:00:00 2001 From: tegwick Date: Sun, 27 Sep 2026 01:57:31 +0200 Subject: [PATCH 3/3] Snapshot authority projection assessment Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9 --- TREE.md | 1 + .../authority-projection-2026-09-27.json | 1308 +++++++++++++++++ 2 files changed, 1309 insertions(+) create mode 100644 research/evolution/snapshots/authority-projection-2026-09-27.json diff --git a/TREE.md b/TREE.md index 7611bb1..e9adc5b 100644 --- a/TREE.md +++ b/TREE.md @@ -365,6 +365,7 @@ research/evolution/cycles/2026-09-27-zulip-navigation-effort.json research/evolution/cycles/2026-09-27-zulip-navigation.md research/evolution/ledger.json research/evolution/profiles.json +research/evolution/snapshots/authority-projection-2026-09-27.json research/evolution/snapshots/baseline-2026-09-26.json research/evolution/snapshots/cycle-2026-09-27-navigation-focus.json research/evolution/snapshots/cycle-2026-09-27-navigation-ownership.json diff --git a/research/evolution/snapshots/authority-projection-2026-09-27.json b/research/evolution/snapshots/authority-projection-2026-09-27.json new file mode 100644 index 0000000..15452b8 --- /dev/null +++ b/research/evolution/snapshots/authority-projection-2026-09-27.json @@ -0,0 +1,1308 @@ +{ + "schema_version": 1, + "id": "authority-projection-2026-09-27", + "source_revision": "3ce54fb2d2c7a362ceac3b5f5c8959ea9708fa18", + "assessment": { + "profiles": { + "schema_version": 1, + "assessed_at": "2026-09-27", + "profiles": [ + { + "id": "CAND-0001", + "path": "research/candidates/ConflictCopy.md", + "title": "Conflict Copy", + "sha256": "24f250d89ac17d96df287d67c275b5320b48c8356b57ae126a6c941e92a1c6e9", + "status": "draft", + "maturity": "hypothesis", + "decision": "Preserve competing versions instead of silently losing one.", + "evidence": [ + { + "kind": "documentary", + "family": "Joplin", + "ref": "research/reviews/LocalFirstEvidenceExpansion.md", + "scope": "Documented detected-note conflict copy." + }, + { + "kind": "documentary", + "family": "Obsidian", + "ref": "research/reviews/LocalFirstEvidenceExpansion.md", + "scope": "Optional conflict-file mode, not default behavior." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Authorized retention and export are separate decisions.", + "Complete contract recurrence and fault-tested deployed behavior remain unverified." + ], + "superseded_by": [] + }, + { + "id": "CAND-0002", + "path": "research/candidates/LocalCommitBoundary.md", + "title": "Local Commit Boundary", + "sha256": "22165fc2979e8f4d8859b34417cb71e7b5ec7a8440ad045aee2383d499648013", + "status": "draft", + "maturity": "hypothesis", + "decision": "Define when a local change is durably accepted.", + "evidence": [ + { + "kind": "documentary", + "family": "Ink & Switch", + "ref": "research/reviews/LocalFirstEvidenceExpansion.md", + "scope": "Local-first motivation." + }, + { + "kind": "documentary", + "family": "Joplin", + "ref": "research/reviews/LocalFirstEvidenceExpansion.md", + "scope": "Local storage and synchronization architecture." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "No executed storage crash or backup test.", + "Local acceptance is not off-device recovery." + ], + "superseded_by": [] + }, + { + "id": "CAND-0003", + "path": "research/candidates/PendingSynchronization.md", + "title": "Pending Synchronization", + "sha256": "9c5cb0f4ea4e6f4406ce55513ca2c252172427a49d8280ae1a9c713f1d11b070", + "status": "draft", + "maturity": "hypothesis", + "decision": "Keep accepted local intent visible until synchronization resolves.", + "evidence": [ + { + "kind": "documentary", + "family": "Joplin", + "ref": "research/reviews/LocalFirstEvidenceExpansion.md", + "scope": "Per-item synchronization metadata." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Atomic supersession and retry contract proposed, not storage-tested." + ], + "superseded_by": [] + }, + { + "id": "CAND-0004", + "path": "research/candidates/ExplicitReconciliation.md", + "title": "Explicit Reconciliation", + "sha256": "d48a40aab7417b8b8f8406094c84b9e90d0ca8c2f94d6e616d0b80499dc04959", + "status": "draft", + "maturity": "hypothesis", + "decision": "Resolve divergent content while retaining provenance.", + "evidence": [ + { + "kind": "documentary", + "family": "Joplin", + "ref": "research/reviews/LocalFirstEvidenceExpansion.md", + "scope": "Documented manual conflict resolution." + }, + { + "kind": "documentary", + "family": "Obsidian", + "ref": "research/reviews/LocalFirstEvidenceExpansion.md", + "scope": "Conflict comparison workflow." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Atomic resolution/provenance UI not executed.", + "Overlap with Conflict Copy remains an open merge question." + ], + "superseded_by": [] + }, + { + "id": "CAND-0005", + "path": "research/candidates/LocalDraftState.md", + "title": "Local Draft State", + "sha256": "8e5f427975c76083c80b895bc68b7130b249be5129c2854f3df11cc374b4b240", + "status": "draft", + "maturity": "hypothesis", + "decision": "Separate unfinished intent from refreshed authoritative data.", + "evidence": [ + { + "kind": "documentary", + "family": "Kubernetes / GitLab / React Router", + "ref": "research/reviews/TransactionalEvidenceExpansion.md", + "scope": "Rejection and pending-input mechanisms motivate recovery." + }, + { + "kind": "static-code", + "family": "Zulip", + "ref": "research/reviews/FrontendRecoveryImplementations.md", + "scope": "Pinned composer draft storage; partial lifecycle." + }, + { + "kind": "static-code", + "family": "Element / Matrix", + "ref": "research/reviews/FrontendRecoveryImplementations.md", + "scope": "Pinned composer draft restoration; partial lifecycle." + }, + { + "kind": "runtime", + "family": "authored release fixture", + "ref": "research/reviews/ActivationConflictsAndReload.md", + "scope": "Same-tab preservation/refusal/discard and post-navigation schema check." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "No native-unload, crash, multiple-tab or access-revocation guarantee.", + "Full base/draft/current merge contract is not verified in deployed frontends." + ], + "superseded_by": [] + }, + { + "id": "CAND-0006", + "path": "research/candidates/VersionCheckedMutation.md", + "title": "Version-Checked Mutation", + "sha256": "6a3335ae2fa1de51c95dcbfa8d766d988a3f7a9604fb608b8a0bcf9a10b64198", + "status": "draft", + "maturity": "hypothesis", + "decision": "Reject an operation whose observed base is stale.", + "evidence": [ + { + "kind": "documentary", + "family": "Kubernetes", + "ref": "research/reviews/TransactionalEvidenceExpansion.md", + "scope": "Conditional PUT; precise version mechanism." + }, + { + "kind": "documentary", + "family": "GitLab", + "ref": "research/reviews/TransactionalEvidenceExpansion.md", + "scope": "Optional last_commit_id; different failure surface." + }, + { + "kind": "runtime", + "family": "authored release fixture", + "ref": "research/reviews/ActivationConflictsAndReload.md", + "scope": "Related conditional activation-map mechanism in one process, not the full frontend pattern." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Distributed atomicity and complete frontend recurrence remain unverified.", + "Refetch does not authorize overwriting conflicting intent." + ], + "superseded_by": [] + }, + { + "id": "CAND-0007", + "path": "research/candidates/MutationOutcomeTracking.md", + "title": "Mutation Outcome Tracking", + "sha256": "e04cb835fd054bfaf88616375bd0262deffb2801ea04105be92543bfa9582179", + "status": "draft", + "maturity": "hypothesis", + "decision": "Retain operation identity when transport outcome is uncertain.", + "evidence": [ + { + "kind": "documentary", + "family": "Stripe", + "ref": "research/reviews/TransactionalEvidenceExpansion.md", + "scope": "Idempotency mechanism." + }, + { + "kind": "documentary", + "family": "React Router", + "ref": "research/reviews/TransactionalEvidenceExpansion.md", + "scope": "Cancellation does not imply server rollback." + }, + { + "kind": "static-code", + "family": "Zulip", + "ref": "research/reviews/FrontendRecoveryImplementations.md", + "scope": "Pinned send/recovery state." + }, + { + "kind": "static-code", + "family": "Element / Matrix", + "ref": "research/reviews/FrontendRecoveryImplementations.md", + "scope": "Pinned client and SDK transaction/echo paths." + }, + { + "kind": "runtime", + "family": "Element / Matrix", + "ref": "research/reviews/MatrixRecoveryExperiment.md", + "scope": "Real SDK with synthetic transport: lost acknowledgement, identity reuse and authoritative echo." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "No production server deduplication or complete retention-window guarantee.", + "Cancelling local UI is not remote compensation." + ], + "superseded_by": [] + }, + { + "id": "CAND-0008", + "path": "research/candidates/InvalidateAndReproject.md", + "title": "Invalidate and Reproject", + "sha256": "47c405adbc3caac2383768ed3d30b6a2e7ff1f44f4954c340049e78944227844", + "status": "draft", + "maturity": "hypothesis", + "decision": "Refresh a projection after mutation without equating acceptance and visibility.", + "evidence": [ + { + "kind": "documentary", + "family": "React Router", + "ref": "research/reviews/TransactionalEvidenceExpansion.md", + "scope": "Concurrency and pending-state guidance." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Read-your-write and acceptance/refresh distinction still proposed.", + "No independent deployed full-contract observation." + ], + "superseded_by": [] + }, + { + "id": "CAND-0009", + "path": "research/candidates/URLAddressableState.md", + "title": "URL-addressable State", + "sha256": "07d524c3c0dd080bd42ff5dd79a36e6ecd2a8654f07ece880b483477f7ca4497", + "status": "draft", + "maturity": "hypothesis", + "decision": "Make a navigable state reconstructible from its URL.", + "evidence": [ + { + "kind": "documentary", + "family": "htmx", + "ref": "research/reviews/NavigationRenderingEvidence.md", + "scope": "History behavior and history-cache misses." + }, + { + "kind": "documentary", + "family": "Web platform", + "ref": "research/reviews/NavigationRenderingEvidence.md", + "scope": "pushState changes history, not server dereferenceability." + }, + { + "kind": "runtime", + "family": "htmx in authored public-catalog fixture", + "ref": "research/reviews/NavigationHistoryExperiment.md", + "scope": "NH01–NH06: native/enhanced routes, history hit/miss, actual browser cache ordering and missing-Vary negative control; explicit Node validator checks separate." + }, + { + "kind": "runtime", + "family": "htmx in authored public-catalog fixture", + "ref": "research/reviews/NavigationOwnershipExperiment.md", + "scope": "NO01–NO06: ordered history/success/error races, prior policy 0/12 full obligations versus guarded 12/12; separate focus ownership. Same fixture family; pinned history-XHR adapter." + }, + { + "kind": "static-code", + "family": "Zulip", + "ref": "research/reviews/ZulipNavigationSourceStudy.md", + "scope": "ZN01–ZN08 at pinned revision: partial hash/list/cache mechanisms and non-modal continuation contrast. No application/test execution, no no-script claim, no complete pattern recurrence." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-27", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": "2026-09-27" + }, + "gaps": [ + "Independent application recurrence and human/AT validation remain unverified.", + "Pending history disclosure, multiple history misses, redirects, nonzero swap delays, bfcache, lifecycle cleanup, interrupted/late enhancement and offline availability remain open.", + "Zulip auxiliary target/anchor callbacks, deferred editing focus and search callback wiring remain unverified; static guards do not prove whole-application ownership." + ], + "superseded_by": [] + }, + { + "id": "CAND-0010", + "path": "research/candidates/ProgressiveEnhancement.md", + "title": "Progressive Enhancement", + "sha256": "1dc3885ef896b9a7cb61af11fa8893484eb1e13454207326abc7250d5ca4382b", + "status": "draft", + "maturity": "hypothesis", + "decision": "Keep essential actions usable when enhancement is unavailable.", + "evidence": [ + { + "kind": "documentary", + "family": "htmx", + "ref": "research/reviews/NavigationRenderingEvidence.md", + "scope": "Boosted links and forms." + }, + { + "kind": "documentary", + "family": "SvelteKit", + "ref": "research/reviews/NavigationRenderingEvidence.md", + "scope": "Form actions and rendering/page options." + }, + { + "kind": "runtime", + "family": "htmx in authored public-catalog fixture", + "ref": "research/reviews/NavigationHistoryExperiment.md", + "scope": "NH01–NH06: native/enhanced routes, history hit/miss, actual browser cache ordering and missing-Vary negative control; explicit Node validator checks separate." + }, + { + "kind": "runtime", + "family": "htmx in authored public-catalog fixture", + "ref": "research/reviews/NavigationFocusExperiment.md", + "scope": "NF01–NF06: Tab/Enter navigation, raw versus authored focus/status policy, held-response ownership and background update; DOM evidence only, not AT speech." + }, + { + "kind": "runtime", + "family": "htmx in authored public-catalog fixture", + "ref": "research/reviews/NavigationOwnershipExperiment.md", + "scope": "NO01–NO06: ordered history/success/error races, prior policy 0/12 full obligations versus guarded 12/12; separate focus ownership. Same fixture family; pinned history-XHR adapter." + }, + { + "kind": "static-code", + "family": "Zulip", + "ref": "research/reviews/ZulipNavigationSourceStudy.md", + "scope": "ZN01–ZN08 at pinned revision: partial hash/list/cache mechanisms and non-modal continuation contrast. No application/test execution, no no-script claim, no complete pattern recurrence." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-27", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": "2026-09-27" + }, + "gaps": [ + "Independent application recurrence and human/AT validation remain unverified.", + "Pending history disclosure, multiple history misses, redirects, nonzero swap delays, bfcache, lifecycle cleanup, interrupted/late enhancement and offline availability remain open.", + "Zulip auxiliary target/anchor callbacks, deferred editing focus and search callback wiring remain unverified; static guards do not prove whole-application ownership." + ], + "superseded_by": [] + }, + { + "id": "CAND-0011", + "path": "research/candidates/PresentationModel.md", + "title": "Presentation Model", + "sha256": "5ff03b5799b0a9e5ec6b54b21034720d89dbc8ffde7c4cdcf71616cdf57baf49", + "status": "draft", + "maturity": "hypothesis", + "decision": "Separate presentation decisions from view mechanisms.", + "evidence": [ + { + "kind": "documentary", + "family": "Fowler", + "ref": "research/reviews/PatternBreadthExpansion.md", + "scope": "Named pattern and illustrative model/view discussion." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "No executed model/view integration or independently reviewed full-contract use." + ], + "superseded_by": [] + }, + { + "id": "CAND-0012", + "path": "research/candidates/DerivedState.md", + "title": "Derived State", + "sha256": "9f29b9f1296a52b83f08dfd97437c4dc16e4949ddac1ff3b3830e3fc9831bd4f", + "status": "draft", + "maturity": "hypothesis", + "decision": "Compute a result from explicit authoritative inputs.", + "evidence": [ + { + "kind": "documentary", + "family": "Redux", + "ref": "research/reviews/PatternBreadthExpansion.md", + "scope": "Selector guidance, not a requirement for a global store." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Snapshot coherence and changed-locale cache test still planned." + ], + "superseded_by": [] + }, + { + "id": "CAND-0013", + "path": "research/candidates/VerticalFeatureSlice.md", + "title": "Vertical Feature Slice", + "sha256": "d6b332b9c104a079bd4b72512b8ddd1a889199b2e2e531753c411688053e647a", + "status": "draft", + "maturity": "hypothesis", + "decision": "Group a capability across UI, state and behavior with explicit interfaces.", + "evidence": [ + { + "kind": "documentary", + "family": "Feature-Sliced Design", + "ref": "research/reviews/PatternBreadthExpansion.md", + "scope": "Layer/slice and public-interface guidance." + }, + { + "kind": "static-code", + "family": "Feature-Sliced Design", + "ref": "research/reviews/FeatureDeploymentBoundaries.md", + "scope": "Pinned todo-app interfaces coexist with one application build." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Build/import enforcement not executed.", + "Feature organization does not establish independent activation." + ], + "superseded_by": [] + }, + { + "id": "CAND-0014", + "path": "research/candidates/IslandsOfInteractivity.md", + "title": "Islands of Interactivity", + "sha256": "821a1497da10c02ae11fa6f56cb8e205a4f32c40b39770ab8ca3f907561a260a", + "status": "draft", + "maturity": "hypothesis", + "decision": "Activate selected interactive regions within a document.", + "evidence": [ + { + "kind": "documentary", + "family": "Astro", + "ref": "research/reviews/PatternBreadthExpansion.md", + "scope": "Client-island mechanism and execution placement." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "No executed island fixture, performance comparison or complete recurrence study." + ], + "superseded_by": [] + }, + { + "id": "CAND-0015", + "path": "research/candidates/FailureBoundary.md", + "title": "Failure Boundary", + "sha256": "a6e76ed17a92baade683d5df96fa8ecd066c593661e6a14983a86d046e7d9c2c", + "status": "draft", + "maturity": "hypothesis", + "decision": "Contain specified failure classes while preserving useful neighboring work.", + "evidence": [ + { + "kind": "documentary", + "family": "React", + "ref": "research/reviews/PatternBreadthExpansion.md", + "scope": "Error boundary scope and exclusions." + }, + { + "kind": "runtime", + "family": "React", + "ref": "research/reviews/BoundaryRecoveryExperiment.md", + "scope": "Real package in authored host: render/event/request distinction and fallback escalation." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "Synthetic host, not full application recurrence.", + "Boundary cannot imply containment for all asynchronous failures." + ], + "superseded_by": [] + }, + { + "id": "CAND-0016", + "path": "research/candidates/FocusReturn.md", + "title": "Focus Return", + "sha256": "9149c2f563eafcfec983a9285949225840d97804568309bd16bbb1eb6b3dde77", + "status": "draft", + "maturity": "hypothesis", + "decision": "Restore meaningful focus after a temporary interaction ends.", + "evidence": [ + { + "kind": "documentary", + "family": "WAI-ARIA APG", + "ref": "research/reviews/PatternBreadthExpansion.md", + "scope": "Dialog focus obligations." + }, + { + "kind": "static-code", + "family": "Radix", + "ref": "research/reviews/NestedDismissalIsolation.md", + "scope": "Pinned layer/listener ownership implementation." + }, + { + "kind": "runtime", + "family": "Radix", + "ref": "research/reviews/NestedOwnershipRouting.md", + "scope": "Authored fixture: raw 20/24 versus routed 24/24; browser/build limits retained." + }, + { + "kind": "runtime", + "family": "htmx in authored public-catalog fixture", + "ref": "research/reviews/NavigationFocusExperiment.md", + "scope": "NF01–NF06: Tab/Enter navigation, raw versus authored focus/status policy, held-response ownership and background update; DOM evidence only, not AT speech." + }, + { + "kind": "runtime", + "family": "htmx in authored public-catalog fixture", + "ref": "research/reviews/NavigationOwnershipExperiment.md", + "scope": "NO01–NO06: ordered history/success/error races, prior policy 0/12 full obligations versus guarded 12/12; separate focus ownership. Same fixture family; pinned history-XHR adapter." + }, + { + "kind": "static-code", + "family": "Zulip", + "ref": "research/reviews/ZulipNavigationSourceStudy.md", + "scope": "ZN01–ZN08 at pinned revision: partial hash/list/cache mechanisms and non-modal continuation contrast. No application/test execution, no no-script claim, no complete pattern recurrence." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-27", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": "2026-09-27" + }, + "gaps": [ + "One implementation family; repeated trials are not independent uses.", + "Animated exits and competing owners remain untested; no production repair claim.", + "Route ownership is a contrast, not independent modal recurrence; AT speech and broader history/lifecycle cases remain unverified.", + "Zulip auxiliary target/anchor callbacks, deferred editing focus and search callback wiring remain unverified; static guards do not prove whole-application ownership." + ], + "superseded_by": [] + }, + { + "id": "CAND-0017", + "path": "research/candidates/IndependentFeatureBoundary.md", + "title": "Independent Feature Boundary", + "sha256": "60b78725ed4036681675d4c68244fc25aea6e0dffb09d54a7108e3fcbf527b4f", + "status": "draft", + "maturity": "hypothesis", + "decision": "Separate feature release, activation and session transition contracts.", + "evidence": [ + { + "kind": "documentary", + "family": "single-spa / webpack", + "ref": "research/reviews/FeatureDeploymentBoundaries.md", + "scope": "Mechanism documentation, not deployed independence proof." + }, + { + "kind": "static-code", + "family": "react-microfrontends examples", + "ref": "research/reviews/FeatureDeploymentBoundaries.md", + "scope": "Root config/navbar are one example family with shared startup gating." + }, + { + "kind": "runtime", + "family": "authored release fixture", + "ref": "research/reviews/FeatureReleaseExperiment.md", + "scope": "Publication/activation/rollback across fresh, loaded and lazy sessions." + }, + { + "kind": "runtime", + "family": "authored release fixture", + "ref": "research/reviews/ActivationConflictsAndReload.md", + "scope": "Conditional activation updates and safe reload policies, including negative controls." + } + ], + "independent_full_contract_uses": null, + "review": { + "assessed_at": "2026-09-26", + "reviewer": "Codex", + "role": "author-model", + "independent_human": false, + "last_substantive_review_date": null + }, + "gaps": [ + "No upstream deployment or real team/release-independence validation.", + "Distributed atomicity, retention authorization and native-unload/crash behavior remain open." + ], + "superseded_by": [] + } + ] + }, + "ledger": { + "schema_version": 1, + "coverage": "Ten selected retrospective outcomes (not a historical census), followed by prospectively registered bounded cycles. Retrospective effort remains unknown.", + "events": [ + { + "id": "LEARN-0001", + "date": "2026-09-25", + "recording": "retrospective", + "stream": "D", + "comparison_group": null, + "question": "What do pinned recovery implementations establish?", + "previous_belief": "Documentary motivation did not locate draft/outcome mechanisms in frontend code.", + "conclusion": "Zulip and Element locate partial draft/outcome mechanisms; complete pattern recurrence is still unknown.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0005", + "CAND-0007" + ], + "evidence": [ + "research/reviews/FrontendRecoveryImplementations.md" + ], + "remaining_uncertainty": [ + "Deployed full lifecycle remains unverified." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0002", + "date": "2026-09-25", + "recording": "retrospective", + "stream": "D", + "comparison_group": null, + "question": "Does cancellation or a transport error settle mutation outcome?", + "previous_belief": "Recovery identity and authoritative echo required executable checks.", + "conclusion": "Synthetic transport with the real Matrix SDK distinguishes replay identity, duplicate commits and authoritative echo.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0007" + ], + "evidence": [ + "research/reviews/MatrixRecoveryExperiment.md" + ], + "remaining_uncertainty": [ + "No real server deduplication guarantee." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0003", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "cross-stream", + "comparison_group": null, + "question": "Does naming patterns improve the frozen pilot decisions?", + "previous_belief": "Initial editorial scores were 21/24 named and 19/24 prose.", + "conclusion": "Submitted model review adjudication yields 18/24 in each condition; this does not establish equivalence or a presentation benefit.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0005", + "CAND-0007", + "CAND-0001", + "CAND-0002" + ], + "evidence": [ + "research/evaluations/language-pilot-01/submitted-review-01/adjudication.md" + ], + "remaining_uncertainty": [ + "Independent human validation pending.", + "Historical effort unknown; this entry does not allocate whole-pilot telemetry." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0004", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "D", + "comparison_group": null, + "question": "Which recovery recommendations overstate their guarantees?", + "previous_belief": "Shared guidance left retention/export policy, cancellation and local backup boundaries insufficiently explicit.", + "conclusion": "Guidance now separates authorization, remote compensation, atomic supersession and off-device backup.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0001", + "CAND-0002", + "CAND-0003", + "CAND-0005", + "CAND-0007" + ], + "evidence": [ + "research/reviews/SharedGuidanceRevision.md" + ], + "remaining_uncertainty": [ + "Editorial correction is not new production evidence." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0005", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "B", + "comparison_group": null, + "question": "What does URL/history and enhancement documentation actually promise?", + "previous_belief": "Navigation and rendering seeds lacked explicit dereferenceability and fallback distinctions.", + "conclusion": "Developed two hypotheses separating address-bar updates from direct loads, and HTML delivery from usable no-script actions.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0009", + "CAND-0010" + ], + "evidence": [ + "research/reviews/NavigationRenderingEvidence.md" + ], + "remaining_uncertainty": [ + "Navigation/history/cache runtime checks remain pending." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0006", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "F", + "comparison_group": null, + "question": "Why can immediate nested dismissal close the outer task?", + "previous_belief": "The first fixture exposed a timing failure with unresolved ownership.", + "conclusion": "Trace locates stale Escape listener ownership despite inner registration/focus; a guard can lose input.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0016", + "CAND-0015" + ], + "evidence": [ + "research/reviews/BoundaryRecoveryExperiment.md", + "research/reviews/NestedDismissalIsolation.md" + ], + "remaining_uncertainty": [ + "Readiness waits are not a public product repair." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0007", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "F", + "comparison_group": null, + "question": "Can event-time ownership route dismissal without a settling delay?", + "previous_belief": "Isolation supplied a mechanism but no lifecycle-safe candidate routing experiment.", + "conclusion": "Controlled fixture routed 24/24 versus raw 20/24; initial measurement error and corrected results retained.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0016" + ], + "evidence": [ + "research/reviews/NestedOwnershipRouting.md" + ], + "remaining_uncertainty": [ + "Animated exit and competing-owner coverage remain open." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0008", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "E", + "comparison_group": null, + "question": "Are feature organization and independent activation the same boundary?", + "previous_belief": "The feature-slice hypothesis needed a source-layout/release contrast.", + "conclusion": "Pinned examples distinguish organizational slicing from activation contracts; added Independent Feature Boundary.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0013", + "CAND-0017" + ], + "evidence": [ + "research/reviews/FeatureDeploymentBoundaries.md" + ], + "remaining_uncertainty": [ + "Shared startup dependencies still couple nominally separate features." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0009", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "E", + "comparison_group": null, + "question": "Does publication or rollback update every session?", + "previous_belief": "Static source review could not establish loaded/lazy-session behavior.", + "conclusion": "Native-module experiment distinguishes publication, activation and already-bound sessions; artifact retirement breaks old lazy sessions.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0017" + ], + "evidence": [ + "research/reviews/FeatureReleaseExperiment.md" + ], + "remaining_uncertainty": [ + "No CDN or upstream deployment validation." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0010", + "date": "2026-09-26", + "recording": "retrospective", + "stream": "E", + "comparison_group": null, + "question": "How do stale activation writers and unfinished drafts constrain updates?", + "previous_belief": "Release experiment left activation conflicts and reload policy unexecuted.", + "conclusion": "Conditional replacement rejects stale writers; explicit reload policies preserve or refuse transition, with schema recheck after navigation.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0017", + "CAND-0005", + "CAND-0006" + ], + "evidence": [ + "research/reviews/ActivationConflictsAndReload.md" + ], + "remaining_uncertainty": [ + "One-process atomicity; no native unload, crash or real remote-outcome coverage." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": null, + "execution_minutes": null, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0011", + "date": "2026-09-27", + "recording": "prospective", + "stream": "B", + "comparison_group": "B-navigation-mechanism-v1", + "protocol_ref": "research/evolution/cycles/2026-09-27-navigation.md", + "question": "Can a public route preserve selection and complete-document availability across native/enhanced entry, history and HTTP caching?", + "previous_belief": "Native href/GET contracts plus representation-aware routing and cache selection should satisfy this narrow obligation; documentary support lacked runtime checks.", + "conclusion": "Corroborated in pinned htmx fixture: native and history paths work; missing Vary reproduces fragment-as-document reuse in both browsers. Existing obligations stand; no new pattern or promotion.", + "disposition": "corroboration", + "affected_patterns": [ + "CAND-0009", + "CAND-0010" + ], + "evidence": [ + "research/reviews/NavigationHistoryExperiment.md", + "research/experiments/navigation-history/result.json", + "research/evolution/cycles/2026-09-27-navigation-effort.json" + ], + "remaining_uncertainty": [ + "One authored application, no independent recurrence or usefulness gain.", + "Accessibility, delayed scripts, interrupted transport, real intermediaries and offline availability remain open." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": 6.177, + "execution_minutes": 1.021, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0012", + "date": "2026-09-27", + "recording": "prospective", + "stream": "F", + "comparison_group": "F-navigation-focus-v1", + "protocol_ref": "research/evolution/cycles/2026-09-27-navigation-focus.md", + "question": "Does enhanced route replacement need explicit continuation and feedback policy that respects changed focus ownership?", + "previous_belief": "Native controls alone do not establish enhanced focus/feedback semantics; delayed responses should respect focus moved to another surviving task. Modal return is not automatically route continuation.", + "conclusion": "Corroborated in 22 cases: raw same-ID link focus survives but this fragment contract leaves stale title and silent failure; authored heading/status policy works and preserves newer search focus. No AT speech or universal heading policy established.", + "disposition": "corroboration", + "affected_patterns": [ + "CAND-0010", + "CAND-0016" + ], + "evidence": [ + "research/reviews/NavigationFocusExperiment.md", + "research/experiments/navigation-history/focus-result.json", + "research/evolution/cycles/2026-09-27-navigation-focus-effort.json" + ], + "remaining_uncertainty": [ + "Author-model DOM evidence, no human/AT validation or independent recurrence.", + "Delayed history focus, competing requests, delayed scripts and interrupted enhancement remain open." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": 5.138, + "execution_minutes": 0.525, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0013", + "date": "2026-09-27", + "recording": "prospective", + "stream": "F", + "comparison_group": "F-navigation-ownership-v1", + "protocol_ref": "research/evolution/cycles/2026-09-27-navigation-ownership.md", + "question": "Can obsolete history/navigation completions affect newer intent, and does separating completion ownership from focus ownership prevent it?", + "previous_belief": "The single-response continuation policy preserved newer search focus but left competing history/success/error completions unresolved; focus-at-swap alone might not be sufficient.", + "conclusion": "Revise operational guidance: validate navigation ownership before content/URL/title/feedback effects, including stale errors and newer failure, independently of focus permission. Prior policy misses obligations in 12/12 adversarial rows; authored guard meets 12/12. Pause fixture work for independent source contrast.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0009", + "CAND-0010", + "CAND-0016" + ], + "evidence": [ + "research/reviews/NavigationOwnershipExperiment.md", + "research/reviews/NavigationThreadReview.md", + "research/experiments/navigation-history/ownership-result.json", + "research/evolution/cycles/2026-09-27-navigation-ownership-effort.json" + ], + "remaining_uncertainty": [ + "One authored htmx family and author-model review, not production recurrence or AT validation.", + "History adapter is pinned implementation-dependent; pending-state, multiple-miss and lifecycle limits remain open.", + "Three distinct protocols are not a comparable diminishing-returns window." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": 13.918, + "execution_minutes": 1.238, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0014", + "date": "2026-09-27", + "recording": "prospective", + "stream": "B", + "comparison_group": "B-independent-navigation-source-v1", + "protocol_ref": "research/evolution/cycles/2026-09-27-zulip-navigation.md", + "question": "Where does independently developed Zulip scope navigation/search result and focus applicability, and where does our model fail to establish a guarantee?", + "previous_belief": "The authored navigation generation guard protected current-view and focus effects, but independent application recurrence and alternative ownership/cache policies were unverified.", + "conclusion": "Revise guidance toward per-effect applicability: pinned Zulip preserves noncurrent cache data while guarding main selected-view continuations by list identity. Make client-fragment addressability explicit without inferring no-script enhancement. Shared feedback, auxiliary callbacks and deferred focus limit the inference.", + "disposition": "revision", + "affected_patterns": [ + "CAND-0009", + "CAND-0010", + "CAND-0016" + ], + "evidence": [ + "research/reviews/ZulipNavigationSourceStudy.md", + "research/reviews/ZulipNavigationSources.json", + "research/evolution/cycles/2026-09-27-zulip-navigation-effort.json" + ], + "remaining_uncertainty": [ + "Static targeted ranges in twelve files, no Zulip runtime/upstream test execution or independent human/AT review.", + "Auxiliary lookup/anchor continuations, deferred focus and callback wiring need a bounded follow-up before any race claim.", + "One Zulip family supplies partial mechanisms, not full-contract recurrence or a no-script guarantee." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": 6.345, + "execution_minutes": 0.289, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + }, + { + "id": "LEARN-0015", + "date": "2026-09-27", + "recording": "prospective", + "stream": "cross-stream", + "comparison_group": "CD-authority-projection-documentary-v1", + "protocol_ref": "research/evolution/cycles/2026-09-27-authority-projection.md", + "question": "Do the six authority/projection seeds denote reusable patterns or a mixture of scoped acceptance, projection placement and delivery choices?", + "previous_belief": "Authority is scoped and acknowledgement levels differ, but six seed names lack developed contracts and their projection/delivery relationships are not explicitly compared.", + "conclusion": "Revise the research decision aid to separate scoped acceptance, projection computation and delivery timing with compatibility constraints. Six seed dispositions and two synthetic traces; retain all seeds, zero new drafts or candidate maturity changes.", + "disposition": "revision", + "affected_patterns": [], + "evidence": [ + "research/reviews/AuthorityProjectionComparison.md", + "research/evolution/cycles/2026-09-27-authority-projection-effort.json" + ], + "remaining_uncertainty": [ + "Six living primary documents across four families, not independent full-contract implementations; exact revisions unknown.", + "Synthetic VC-01/02 reasoning is not execution or demonstrated usefulness; authority/merge/storage and phase-specific recovery contracts still need application evidence.", + "Existing candidate profiles unchanged; five prospective groups are not a comparable learning trend." + ], + "reviewer": { + "name": "Codex", + "role": "author-model", + "independent_human": false + }, + "effort": { + "research_minutes": 3.128, + "execution_minutes": 0.033, + "reported_tokens": null, + "cost_usd": null + }, + "supersedes": [] + } + ] + }, + "context": { + "schema_version": 1, + "cases": [ + { + "id": "VC-01", + "state": "synthetic draft", + "ref": "research/walkthroughs/VC01-TransactionalAdministration.md" + }, + { + "id": "VC-02", + "state": "synthetic draft", + "ref": "research/walkthroughs/VC02-OfflineFieldNotes.md" + }, + { + "id": "VC-03", + "state": "provisional", + "ref": "research/walkthroughs/VC03-ContentPublication.md" + }, + { + "id": "VC-04", + "state": "planned", + "ref": "research/plan/ValidationCases.md" + }, + { + "id": "VC-05", + "state": "planned", + "ref": "research/plan/ValidationCases.md" + }, + { + "id": "VC-06", + "state": "provisional", + "ref": "research/walkthroughs/VC06-MicrofrontendEstate.md" + }, + { + "id": "VC-07", + "state": "planned", + "ref": "research/plan/ValidationCases.md" + }, + { + "id": "VC-08", + "state": "planned", + "ref": "research/plan/ValidationCases.md" + }, + { + "id": "VC-09", + "state": "planned", + "ref": "research/plan/ValidationCases.md" + }, + { + "id": "VC-10", + "state": "planned", + "ref": "research/plan/ValidationCases.md" + } + ], + "usefulness": { + "named_score": 18, + "prose_score": 18, + "denominator": 24, + "independent_human": false, + "decision_time_minutes": null, + "ref": "research/evaluations/language-pilot-01/submitted-review-01/adjudication.md", + "limit": "One frozen development pilot with submitted model review; six matched briefs. Equal aggregate scores do not establish equivalence. Stable anchors are consumed development cases, not fresh held-out tasks.", + "initial_unsupported_claims_each": 2, + "adjudicated_unsupported_claim_count": null + }, + "open_work": [ + "workplans/FEP-WP-0002-seed-language-validation.md", + "workplans/FEP-WP-0003-contrasting-schools.md", + "workplans/FEP-WP-0006-language-evolution.md" + ] + } + } +}