Weekly hardening: coverage (v153 Iterator Join) + v147 MDN-shape upgrades - #7
PaulKinlan wants to merge 38 commits into
Conversation
MDN substantively covers Iterator.prototype.join (verified: syntax, parameters, return value, examples, specifications, browser-compat sections all present), so the honest page is the MDN pointer plus the shipping metadata MDN lacks: Stage 3 per the proposal README, EBD-153 listing vs stale 'Proposed' detail status (disclosed), no V8 flag at trunk (searched), BCD freshness gap labelled, live showcase feature + 4 concept demos HEAD-verified 200 and linked. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
🟡 Changes recommended
The committed conformance rollup artifacts currently only include the single v153/iterator-join suite, which will cause other pages’ conformance views/rollups to lose verdict data until a full run-all snapshot is restored.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Adds a new Chrome 153 reference stub for the Iterator Join feature (delegating detailed API docs to MDN) and updates the repo’s lifecycle artifacts to reflect the new page’s critique, conformance suite, responsive-support record, and rolled-up goals.
Changes:
- Introduces
v153/iterator-joinas a Case A “covered on MDN” stub page with shipping/metadata context and primary-source links. - Adds the page’s lifecycle artifacts (
conformance.json,_questions.json) and records its responsive matrix result inresponsive-support.json. - Updates generated rollups (
reports/conformance/*,goals.json) to include the latest run outputs.
File summaries
| File | Description |
|---|---|
| v153/iterator-join/index.html | New MDN stub page with quick-reference shipping/compat metadata and primary-source links. |
| v153/iterator-join/conformance.json | New immutable conformance suite for the stub page. |
| v153/iterator-join/_questions.json | New critique artifact recording evidence and modern-web-guidance consultation. |
| responsive-support.json | Records mobile/desktop support status for /v153/iterator-join/ and updates timestamp. |
| reports/conformance/results.json | Updates last conformance results snapshot (currently only contains the single suite). |
| reports/conformance/responsive.json | Updates responsive scan report for the latest run. |
| reports/conformance/index.html | Updates the conformance rollup HTML for the latest run. |
| goals.json | Adds follow-up goals derived from the new critique and updates timestamp. |
Review details
- Files reviewed: 8/8 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Full MDN-shaped reference generated from primary sources: surface from Blink sub_apps.idl at trunk cross-checked against the WICG spec IDL (ManifestId typedef divergence disclosed); complete per-method error, quota, and permissions-policy contracts from spec §4; §5 threat model; interim ChromeStatus compat table labelled as such (no BCD/webstatus entry exists); showcase route 404 disclosed, no iframe embedded. implementation-sufficient contract with 8 inventory items, all gates green. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 340af07854
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…5200068565139456) Reason: MDN-shape upgrade + factual corrections, evidenced. The page was written from the then-open WHATWG PR #11980; the PR has merged and Chrome shipped (148 partial, 150 full). Re-derived all semantics from the published Living Standard: corrected the preload interaction (Lazy state takes precedence over preload — the old text said preload=none kept suppressing), replaced an uncited .play() claim with sourced rows (poster/autoplay deferral, eager-switch resumption, load event, anti-tracking). Added Baseline banner (webstatus loading-lazy-media, limited), formal Syntax section, real per-version BCD compat table, live showcase iframe (scroll-detector, HEAD 200, framing permitted per headers), and an implementation-sufficient reference contract. Identity, route, and dev-trial-in-147 milestone story preserved; regression-tested via per-page conformance (19 pass / 0 fail) and responsive matrix. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ba66dc47b6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…(5137581018841088) Reason: demonstrated factual errors + MDN-shape upgrade, evidenced. The May-2026 revision predated the current WICG draft: it described the event as firing on form controls after autofill completed and cited the HTML Standard as the spec. Re-derived from the 2026-03-04 Draft CG Report and Blink trunk IDL: fires at the Document before values commit, carries autofillValues + one-shot refill (null on retry; InvalidStateError contract), adds the full-address token. Blink divergences disclosed (no constructor; AutofillFieldData dictionary vs spec tuple) and handled in the corrected example. Added Baseline banner (Limited availability), verbatim IDL Syntax, labelled interim compat table (BCD/MDN absence verified), live showcase iframe (refill-flow, HEAD 200), official demo links, and an implementation-sufficient reference contract. Identity, route, and OT-in-147 milestone story preserved; regression-tested via per-page conformance (19 pass / 0 fail) and responsive matrix. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3a5f61877c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…pat, suite + contract fixes - Duplicate identity (P2): v152/sub-apps already documented chromestatus 6260680824061952 under the feature's earlier listing name. Recorded a move migration to /v152/sub-apps-for-iwas/ (current listing name, per invariant #1), removed the old folder, verified the 301 old->new and check-routes green. One canonical page per identity. - Suite (P2 x2): dropped the demo/cpsFeature reference to the 404 showcase route; hand-added the browser-support-section and example-surface-present assertions the generator's removal-heading classifier misfiled (subApps.remove() h2); recomputed suiteHash. Classifier fix filed as an infrastructure goal (scripts/ is off-limits to the routine). - Contract (P2): sub-apps contract now completeness=partial with add()'s manifest-processing lifecycle recorded missing — the spec's 'fetch and process the manifest' algorithm is an explicit stub, so it cannot be certified implementation-sufficient from primary evidence. - Compat honesty (P2): Firefox/Safari cells now 'unknown — no signal' (a standards-position field is not implementation evidence); banner Edge wording aligned to 'unknown'. - Permissions policy (P2): concrete declaration added — the explainer's own 'Permissions-Policy: sub-apps=(self)' header, with the IWA signed-bundle serving note. - Example (P2): guarded remove() against a failed install (undefined manifest id). - lazy-loading (P2 x2): compat caption's BCD labels are now direct links; added a sourced eager-switch example (loading is reflected on media elements per the merged spec) and pointed the contract's eager-state-switch examples dimension at it. All gates re-run green: check-routes, validate-artifacts, test-reference-contract, check-conformance, deno fmt --check, deno check. Full run-all conformance snapshot for reports/ follows in a separate commit (runs ~80s/suite x 197 in this sandbox). Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
…ll snapshot Promised on the PR #7 rollup review threads: scripts/conformance.mjs --page unconditionally rewrites reports/conformance/results.json + index.html, erasing every other suite's verdicts from the committed rollup. scripts/ is off-limits to the routine, so the fix is recorded as a high-priority infrastructure goal (alongside the removal-classifier goal) via the sub-apps-for-iwas critique and rolled into goals.json. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3db54d5bd9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…ompat, token example, syntax notation, source links - autofill-event + lazy-loading suites now record their embedded showcase demos: demo/cpsFeature set and demo-embed-own-feature + demo-embed-loads assertions hand-added (suiteHash recomputed), matching the shape newer generated suites carry — the embeds can no longer be broken or repointed without a conformance failure. - autofill-event compat: Edge/Firefox/Safari cells are now unknown / 'unknown — no signal' (a ChromeStatus standards-position field is not implementation evidence); banner Edge aligned. - autofill-event: added the full-address token example (spec §5's own form, adapted) and pointed the contract's examples dimension at it. - iterator-join: linked the named-but-unlinked ChromeStatus record and proposal README labels in the compat and tests rows. - lazy-loading: syntax block now shows separate valid loading="lazy" / loading="eager" tags instead of the invalid | alternative notation. Gates re-run green: check-routes, validate-artifacts, test-reference-contract, check-conformance, fmt, deno check. Full run-all conformance snapshot restarted against this tree; reports land as the follow-up commit. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
…ks + token-list matching - Compat-table captions on autofill-event and sub-apps-for-iwas now link their named evidence (ChromeStatus record, runtime_enabled_features, milestone listing) directly; lazy-loading's per-row webstatus.dev attributions link the loading-lazy-media feature record. - Swept all four PR pages for remaining named-but-unlinked source labels and linked them: the lazy-loading 'why it exists' citation (was fully unlinked), its standards-position BCD label and see-also ChromeStatus mention, sub-apps' flags-entry/enterprise-policy/spec-maturity ChromeStatus mentions, autofill's samples attribution. - autofill-event example: field.autocomplete reflects the whole token list (e.g. 'shipping country'), so the country check now parses tokens instead of string equality. Non-browser gates green (check-routes, validate-artifacts incl. contract href/fragment checks, contract structural tests, fmt, deno check); the two headless-Chrome gate passes re-run with the imminent run-all snapshot commit — the full conformance run holds the CDP port and this diff is prose/link-only with no assertion changes. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a26e5340eb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…emo identity + init-dict surface - P1 (valid, my error): the previous /v152/sub-apps/ page embedded the live /v150/sub-apps/capability-gate/ showcase demo and its immutable suite enforced it; the move to sub-apps-for-iwas dropped that durable embedded-demo identity because only the new-slug CPS route was checked. Restored: iframe embedded in Examples with the carried-over identity noted, demo/cpsFeature + demo-embed assertions back in the suite (hash recomputed), critique and responsive record corrected. - autofill-event: full-address token moved onto a form control per the draft's normative sentence, with the draft's own form-level example inconsistency disclosed; AutofillEventInit/constructor inventoried and mapped (contract-table row + spec-derived synthetic-construction example explicitly labelled not-runnable-in-Chrome-today since Blink exposes no constructor). - lazy-loading: eager-switch example now declares its trigger button (no more undeclared playButton ReferenceError). - route-manifest aliases:[] hard-coding filed as a high-priority infrastructure goal (scripts/ off-limits to the routine). All gates green: check-routes, validate-artifacts, test-reference-contract (structural + browser), check-conformance, fmt, deno check. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a82b10727e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…s methods - P1 (child routes): subApps.add(), remove(), and list() now each have a stable member reference at add/, remove/, list/ under the feature route, following the house pattern (unframed-display-mode's app-region/), each carrying syntax, inputs, outputs, errors, context/exposure, lifecycle, examples, compatibility, and security/privacy with direct citations; the overview links every member and the contract's mappings point at the child routes. - P1 (partial-vs-move-exemption): resolved by completing the rewrite as implementation-sufficient rather than leaning on the exemption. The spec's stubbed 'fetch and process the manifest' algorithm is preserved as an explicit, sourced ambiguity in the add/ page's lifecycle section (documenting everything the spec defines today), reconciling round-2's record-the-stub finding with round-5's don't-bypass-the-ratchet finding. - P2s: stale 'no demo exists' see-also line now points at the canonical v150 showcase feature page (only the new-slug route is absent); synthetic-construction example declares emailField. All gates green: check-routes, validate-artifacts, test-reference-contract (structural + browser), check-conformance, fmt, deno check; child routes verified 200 and the add/ page read in a headless screenshot. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 22d754c9b8
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…, reflection surface, demo-link assertion - lazy-loading: the reflected HTMLMediaElement.loading IDL attribute is now an inventoried, mapped surface with the spec's verbatim reflection sentence and IDL line on-page; the eager-switch example is self-contained (real button + script markup). - autofill-event: the synthetic-construction example creates its email control instead of querying markup the page doesn't have. - sub-apps child pages: each #syntax block now declares its response dictionary's IDL (SubAppsAddResponse / SubAppsRemoveResponse / SubAppsListResult), and the shared context citation's 'Blink IDL' label is a direct link on all three pages. - iterator-join suite: hand-added demo-link-own-feature asserting the page keeps linking its canonical showcase route (hash recomputed). - The round-2/5/6 oscillation on sub-apps' sufficiency (partial per round 2 and 6, implementation-sufficient per round 5 and the touched-reference gate) is a rules conflict for spec-side stubs, not fixable by another flip: standing position stated on the thread, and the policy question filed as a high-priority goal for the repo owner. All gates green: check-routes, validate-artifacts, test-reference-contract (structural + browser), check-conformance, fmt, deno check. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 42c428094e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…nable refill example, mobile compat honesty - Each sub-apps member page (add/, remove/, list/) now carries the canonical chromestatus.com/feature/6260680824061952 identity link (invariant #3's self-heal descriptor) in its compatibility table. - autofill-event: the adapt-then-refill example inlines the form reshaping (creates an address-level1 input) instead of calling an undefined helper, so the flow runs as shown. - sub-apps compat: Android/WebView/iOS row is now 'unknown — no milestone' — absent record metadata is not implementation evidence; the desktop-surface context is attributed to Chromium's IWA docs. Non-browser gates green (check-routes, validate-artifacts incl. contract mapping/href checks, fmt, deno check); prose/link-only diff with no assertion changes — the headless-Chrome gate passes re-run with the imminent run-all snapshot commit, which this diff does not invalidate. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ce18272eb0
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…potence, banner honesty, slash-safe links - autofill-event: the synthetic event sets bubbles:true to match the browser-fired contract, and the refill example guards prefecture-field creation on absence so the retry dispatch doesn't append a duplicate. - sub-apps banner no longer claims desktop-only (mobile is unknown, matching the corrected compat row). - Member links on the sub-apps overview and child pages are now root-relative, so they survive the server serving /v152/sub-apps-for-iwas without the trailing slash; the general server-side canonicalization fix is filed as an infrastructure goal (server.ts off-limits). Non-browser gates green; prose/link-only diff, no assertion changes. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a46f408e7b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…aware guard, banner precision - P1: hand-added alias-redirects-permanently to the sub-apps suite — an http-status assertion that /v152/sub-apps/ returns 301 (the move migration's tested alias), so a dropped or repointed redirect now fails conformance rather than staying silently green (hash recomputed). - autofill-event: the prefecture-absence guard now token-matches address-level1 across the form's controls (grouped values like 'shipping address-level1' count), and the banner says 'no publicly recorded implementation elsewhere (other-browser state unknown)' instead of asserting no cross-browser implementation. All gates green: check-routes, validate-artifacts, test-reference-contract (structural + browser), check-conformance, fmt, deno check. The run-all snapshot is being regenerated after this final suite edit so the committed report matches the 27-assertion suite. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4095cfaf5d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…ppend precedence, refill gating, honest denominators - P1: added alias-destination-verified to the sub-apps suite — an awaited js-eval fetch follows the /v152/sub-apps/ redirect and checks it lands exactly on /v152/sub-apps-for-iwas/ (the status-only 301 assertion could stay green on a repointed redirect); verified passing in a per-page runner pass (22/0), hash recomputed. - autofill-event: fixed the append precedence bug ((forms[0] ?? body).append — the optional-chained call always fell through to body), and refill() is now gated on the form actually being reshaped so no-op refills don't double-dispatch to every listener. - sub-apps warn-block no longer asserts desktop-only exposure (mobile unknown, matching the table); the list example inlines its badge update instead of calling an undefined helper. - v147 backlog goal recomputed honestly: 5 of 33 pages carry reference contracts, leaving 28 — with the six conformance-failing old pages called out as the priority. All gates green including test-reference-contract (browser) and check-conformance. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
💡 Codex ReviewLine 92 in fd57750 In the recorded mobile and desktop run, the showcase iframe rendered as a broken-page glyph because external egress failed, yet this entry promotes the route from AGENTS.md reference: AGENTS.md:L159-L167 gendn/v152/sub-apps-for-iwas/index.html Line 198 in fd57750 When AGENTS.md reference: AGENTS.md:L118-L125 gendn/reports/conformance/results.json Line 28339 in fd57750 The final AGENTS.md reference: AGENTS.md:L247-L252 Line 1184 in fd57750 This support record and the committed responsive report cover only AGENTS.md reference: AGENTS.md:L180-L187 ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
…round-20 findings - reports/conformance: full 197-suite run-all against this branch — 3698 pass / 20 fail / 1027 blocked of 4745. The v152/sub-apps-for-iwas suite now reports all 30 assertions (24 pass / 0 fail / 6 blocked) including both alias-v150-* chain checks, exercised and passing. The 20 failures are the identical pre-existing set on 16 untouched pages already filed in goals.json (rounds 18-19 rollup finding closed). - v152/sub-apps-for-iwas overview: list() gets the same controlled error handling as add() — it can reject whole-promise with OperationError, and the bare top-level await was an uncontrolled module termination. - Member routes (add/, remove/, list/) matrix-tested per class at 360x740 + 1280x800 with the run-all scan's exact predicates — all clean, zero flagged controls, all six screenshots read. The support schema only admits catalogue routes (member entries fail validation), so the evidence is recorded in the parent critique (revision 5) and the schema gap is filed as an infrastructure goal. - Filed a goal to exercise the embedded showcase iframes visually from a network-capable environment: the sandbox blocks external iframe paint, the gate hard-fails touched pages left needs-review, so the support records disclose the limitation — a one-time visual pass from outside the sandbox closes the loop. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
|
Round-20 findings, addressed in
Generated by Claude Code |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e3012eab2a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
- v152/sub-apps-for-iwas/list: the member example gets the same list() try/catch as the overview, reporting a registry read failure through the #calc-status element instead of terminating the module with the status blank. - v147/lazy-loading-for-video-and-audio-elements: the mobile controlsInView attribution is corrected with a per-element probe of the scan's exact predicate — five flagged elements, all links inside scrollable .table-wrap tables (crbug/webstatus/bugzilla/webkit source links), each reachable by scrolling its container; the impossible below-fold-iframe claim is removed from the support entry and the critique. A goal is filed to re-verify the same stale attribution on the pre-existing entries from earlier waves (untouched pages). - goals.json: the two fulfilled suite-style-motivation goals (v150-sub-apps-1875clw, v152-sub-apps-19cm592) are marked done — the canonical page's lede carries the explainer's suite use case and the old identities 301 there. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3d6e21ee9a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Codex round-22 on PR #7: remove() rejects whole-promise with SecurityError (sub-apps policy undeclared) or NotSupportedError (called from a sub-app document), and EventTarget ignores an async click listener's promise — so both the member example's handler and the overview's uninstall handler now wrap the await in try/catch and report the failure instead of leaving an unhandled rejection. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
💡 Codex Reviewgendn/v152/sub-apps-for-iwas/index.html Lines 219 to 220 in 2ad4fd3 When AGENTS.md reference: AGENTS.md:L118-L125 gendn/v147/autofill-event/index.html Lines 207 to 209 in 2ad4fd3 When this snippet runs in an implementation exposing the draft constructor, it appends a visible input without a label or ARIA name; AGENTS.md reference: AGENTS.md:L118-L125 This new member page names AGENTS.md reference: AGENTS.md:L90-L97 gendn/reports/conformance/results.json Lines 326 to 327 in 2ad4fd3 The committed run still records the newly added AGENTS.md reference: AGENTS.md:L247-L252 ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
- v152/sub-apps-for-iwas overview: the uninstall handler no longer drops failedApps — per-id NotFoundError/OperationError outcomes are reported like the member example's. - v147/autofill-event: the synthetic-construction example's appended email input gets an aria-label (autocomplete provides no accessible name). - v152/sub-apps-for-iwas + add/: the 'Issue #2' labels now link directly to github.com/WICG/sub-apps/issues/2 — the same target the spec's own inline [Issue #2] link uses (verified against the spec HTML today). Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
|
Round-23 findings, addressed in
Generated by Claude Code |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8a35eda869
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
- v147/autofill-event: the token parser strips HTML's permitted trailing 'webauthn' token before deriving the terminal field token and grouping prefix, so 'shipping country webauthn' is recognized and 'country' is no longer misread as part of the group. - v152/sub-apps-for-iwas/add: the example surfaces the success path — calcId is checked and logged, not just assigned. - v152/sub-apps-for-iwas overview: when /calc was already installed (per-path InvalidStateError, no installedApps entry), calcId is recovered from the list() registry by appName, so the uninstall action also works for the already-installed state. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
💡 Codex Reviewgendn/v152/sub-apps-for-iwas/index.html Lines 213 to 214 in 0e2d8af Fresh evidence after the earlier recovery change is that it now identifies AGENTS.md reference: AGENTS.md:L118-L125 Lines 535 to 536 in 0e2d8af When a consumer runs AGENTS.md reference: AGENTS.md:L72-L82 gendn/reports/conformance/results.json Lines 30281 to 30284 in 0e2d8af For this newly published stub, the committed run records five blocked assertions, including AGENTS.md reference: AGENTS.md:L247-L252 gendn/v152/sub-apps-for-iwas/index.html Line 267 in 0e2d8af When an enterprise configures the prompt-suppression policies documented earlier on this same page, installation does not require the express user consent asserted here. The lifecycle sections explicitly say AGENTS.md reference: AGENTS.md:L118-L125 ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
- v152/sub-apps-for-iwas overview: the already-installed recovery no longer matches on display name (neither stable nor unique) — the parent knows its own sub app's manifest id, so it checks direct registry membership for '/calc'. - v152/sub-apps-for-iwas + add/: the security sections' express-consent claims are qualified with the managed-enterprise exception the Lifecycle sections already document — prompt-suppression policies install on administrator rather than end-user consent. - goals.json (via the v153/iterator-join critique): filed the infrastructure goal for a manual-evidence sidecar the conformance runner can consume, so genuine writer reviews can convert manual-evidenced assertions from 'blocked: manual-pending' to an evidenced verdict. scripts/ is off-limits to the routine. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
|
Round-25 findings, addressed in
Generated by Claude Code |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f0aeebe8c8
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
… headers, honest unsupported path - v147/autofill-event: every plain-text spec-section label in the at-a-glance and event-contract tables now links its exact anchor in the WICG draft (section-to-anchor map verified against the spec's own heading ids today); the two remaining unlinked § references live inside pre/code comments where links cannot render. All fifteen bare row headers get scope="row", matching the critique's recorded guidance application. - v152/sub-apps-for-iwas overview: the example gains a role=status element and an else path — an ordinary tab now sees an explanation that the API requires an installed IWA with the sub-apps policy, instead of a blank page with a hidden control. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2b8dce3610
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
- v147/lazy-loading-for-video-and-audio-elements: all twenty bare row headers get scope="row", matching the critique's recorded guidance; the data-src fallback example gains a noscript path shipping a real src element (eager load — the same honest degradation native lazy loading has without scripting). - v152/sub-apps-for-iwas overview: every failure path now reports through the visible #subapps-status element — including SecurityError when the IWA exposes window.subApps but the sub-apps permissions policy is undeclared, with the fix named in the message. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0f6576f99a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
… feedback - v152/sub-apps-for-iwas: all nine plain-text §5.x subsection labels (lifecycle, quota row, permissions-policy section, and the six-claim security paragraph) now link their exact spec anchors, verified against the spec's own heading ids today. - The overview's uninstall handler reflects success in the visible UI: status reports the removal and the button retires, so a second click can't fire a NotFoundError; per-id failures also report through the status element. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a23b796ba1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…xact anchors, status precedence - conformance.json: six new assertions cover the three member routes — each must resolve (200) and carry its required structure (the canonical chromestatus identity link + heading), so deleting or gutting a child page now fails conformance. suiteHash recomputed; additive. Suite re-run: 30 pass / 0 fail / 6 blocked of 36. - add/: the §5.6 and §5.3 citations (and their prose labels) now target the exact quota-limits and user-consent anchors instead of the parent security section. - overview example: the list() catch uses ||= so the actionable add() SecurityError guidance (naming the permissions-policy fix) is not overwritten by the generic message when both reject. The committed run-all snapshot predates the 36-assertion suite; a full regeneration is running and lands as its own commit once verified, as with the previous suite growth. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0ef4e86743
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Codex round-30 on PR #7: the §5.1 label linked the parent security-and-privacy section; it now targets #shared-origin, the subsection supporting the shared-storage claim. A sweep of all four sub-apps pages finds no other subsection label on a broad anchor. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
Full 197-suite run against this branch: 3704 pass / 20 fail / 1027 blocked of 4751. The v152/sub-apps-for-iwas suite reports all 36 assertions (30 pass / 0 fail / 6 blocked) including the six new member-route checks, exercised and passing. The 20 failures are the identical pre-existing set on 16 untouched pages already filed in goals.json (round-29 snapshot follow-up). Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4c51f5ee56
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
- v152/sub-apps-for-iwas overview: per-path add() failures (which
resolve normally and never reach the catch) now report through the
visible status element too, so a failed /calc install is not a blank
page.
- v147/lazy-loading-for-video-and-audio-elements: the noscript fallback
hides the inert data-src placeholder (video[data-src]{display:none})
so no-script users see only the playable element, not a dead player
above it.
- v147/autofill-event: the spec sections named in the example snippets'
comments are now traceable from the citations beneath them — §5
full-address on the form example, §3 + §6.1 on the synthetic
construction example — each linked to its exact anchor.
Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0185DZjdVPgFQRUSQjB3X28F
Weekly hardening run (2026-08-30), one page per commit. Milestones refreshed from the live channels API: stable=153, beta=154, dev=155 (live stable ≈152).
Coverage (2 pages)
d7aa433—v153/iterator-joinCase A MDN stub (5095183554314240). MDN's Iterator.prototype.join verified substantive; page carries the shipping metadata MDN lacks (EBD-153 listing vs stale "Proposed" detail status, no V8 flag at trunk, BCD freshness gap, 4 live showcase concept demos HEAD-verified and linked).340af07—v152/sub-apps-for-iwasCase B full reference (6260680824061952). Surface from Blinksub_apps.idlat trunk cross-checked against the WICG spec IDL (ManifestId typedef divergence disclosed); complete per-method error/quota/permissions-policy contracts from spec §4, §5 threat model, §6.1; interim ChromeStatus compat table labelled as such (no BCD/webstatus/MDN entry exists); showcase route 404 disclosed, no iframe embedded.implementation-sufficientcontract, 8 inventory items.MDN-shape upgrades (2 of the ~32 remaining old-shape v147 pages)
ba66dc4—v147/lazy-loading-for-video-and-audio-elements. The page was written from the then-open WHATWG PR #11980; the PR merged and Chrome shipped (148 partial, 150 full). Corrected the preload interaction (Lazy state takes precedence over preload), replaced an uncited.play()claim with sourced rows, added Baseline banner (webstatusloading-lazy-media, limited), formal Syntax from the Living Standard, real per-version BCD compat table, live showcase iframe (scroll-detector), implementation-sufficient contract.3a5f618—v147/autofill-event. The old revision materially misdescribed the API versus the 2026-03-04 WICG draft (fires at the Document before commit, not on controls after;autofillValues+ one-shotrefillwith an InvalidStateError contract; newfull-addresstoken). Blink divergences disclosed (no constructor;AutofillFieldDatadictionary vs spec tuple) and handled in the corrected example. Baseline banner, verbatim IDL, labelled interim compat table, live showcase iframe (refill-flow), implementation-sufficient contract.Gates (run before every push, all green each time):
check-routes,validate-artifacts,test-reference-contract,check-conformance,deno fmt --check,deno check server.ts. Per-page conformance suites: 0 fail everywhere; blocked entries are the runner's manual-evidenced assertions, resolved by the writer's screenshot/source review recorded in each page's_questions.json. Responsive matrix run with screenshots read for both device classes on all four pages (ok/okrecorded inresponsive-support.json). Showcase iframes: routes HEAD-verified 200 and framing permitted per response headers; the visual render inside the CI sandbox is blocked by external egress (disclosed per page), consistent with the previous hardening run.Not done / next: 34 features across v152–v155 still lack pages (v154: 23, v155: 11 — the daily generator's backlog), and ~30 v147 pages remain in the old shape; the batch continues next run (tracked in
goals.json).