Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion docs/specs/AST-110-swizzle-output/spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,8 @@ and the repository proves it before a change that could break it merges.
Every component swizzle can copy means Core's components as `swizzle --list`
offers them (`spec:AST-035` FR12) and every component of each integration
package in the repository, copied with `--package`.
A source check fails when a module that FR3 covers creates a module-local
Symbol, WeakMap or registry instead of a registered shared key.
Comment thread
astracat-bot[bot] marked this conversation as resolved.
Resolved

### Platform support

Expand Down Expand Up @@ -229,8 +231,9 @@ and the repository proves it before a change that could break it merges.
| FR5 | Swizzle into a new folder, an empty one, a marked one, and one holding a product module; read the folder and the `swizzle.copy` result | Default output; `--output` to a product folder; a folder of earlier copies with no marker | A marker lands in a folder that holds a product module, a new, empty or marked folder is left unmarked, or the result omits what a skipped folder holds |
| FR6 | The component's own interaction and accessibility checks run against the copy | Keyboard, pointer, screen-reader tree | A check that passes on the package fails on the copy |
| FR7 | The required test lane's swizzle proof and the release-time proof; both cover Core's list and every integration package's components through `--package` | A change to component source; a change to the swizzle copy; an unrelated change; Core, Lab, Charts, RichText, Vega | An offered component missing from the proof, a failure that does not block, a new required context, the proof adding wall-clock time to the slowest required check, or the proof pushing its job past the pull-request time budget |
| FR7 | `scripts/shared-identity.test.mjs` over the source of the packages swizzle copies from, against its baseline | A module-local `Symbol()` brand in an FR3 module; the same brand under `sharedKey`; a module-scope registry an exported register function writes | The module-local brand or registry passes, the `sharedKey` brand fails, or a baseline entry the source no longer has stays listed |

Known verification gap: only FR3's shared-context checks (`sharedContexts.test.tsx`) exist; the other rows have no check on `main`.
Known verification gap: only FR3's shared-context checks (`sharedContexts.test.tsx`) and FR7's source check (`scripts/shared-identity.test.mjs`) exist; the other rows have no check on `main`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Non-blocking: "the other rows have no check on main" is temporary status. Name the unverified rows instead, for example: "Known verification gap: FR1, FR2, FR3's store row, FR4, FR5, FR6 and FR7's swizzle-proof row have no check."


## Decision log

Expand Down
Loading
Loading