on master help sign in
Add source-backed bond prelude gate
commitba1fec439343e024dd76a9c446f5c57d481bc830 authoriko <mail@iko.soy> dateSat 31 Oct 2026, 06:13 (11 hours ago) parent80e221a
11 files changed+587−469
docs/compiler.md+1−1 docs/prelude-inventory.md+3−3 docs/status.md+7−6 jibb-dev/lib/jibb/prelude.jibb+6 tests/golden/types-prelude-bond/about.txt+4 tests/golden/types-prelude-bond/modules.txt+1 tests/golden/types-prelude-bond/source.jibb+6 tests/golden/types-prelude-bond/tokens.txt+57 tests/golden/types-prelude-bond/tree.txt+30 tests/golden/types-prelude-bond/types.txt+7 tests/lib/jibb.hoon+465−459
docs/compiler.md+1−1
@@ -96,7 +96,7 @@ The source-backed `+api-path-analysis-source` is a separate partial analysis, no
9696
9797`+golden-types-with-prelude` accepts case-local Jibb module sources alongside `/sur` and mark results and the vendored prelude source. It resolves reachable ordinary library modules in dependency order, caching completed interfaces per invocation and exporting supported closed value schemes, direct generic unions, and simple or nonrecursive generic mold aliases whose bodies the fragment supports. It detects missing sources and cycles and rejects a dependency if its interface cannot be inferred by the fragment. Qualified wings can also read nested fields of an imported value, instantiating that value’s scheme independently at each use; missing, ambiguous and non-record fields remain unsupported.
9898
99−The supplied prelude is parsed into a **partial interface**: all names actually declared in the source are reserved, while only the molds and values this fragment can infer are available. These include the validated standard `list` mold, `unit`, the doc-exact generic `cmd` union, `same`, `fall`, `need`, `lure`, `weld`, `snoc`, `turn`, `flop`, `rear`, `drop`, `skim`, `skip`, `murn`, `join`, `snip`, `levy`, `lien`, `cork`, `corl`, `cury` and `curr`; unsupported entries remain unavailable. The validated `list` is injected while the prelude’s gates are inferred; `weld` and `turn` use ordinary explicit result casts. An absent or altered `list` is not injected, and an altered declaration cannot leak through a direct or transitive mold alias. The same validated template is available when prelude mold aliases are prepared, so supported direct and transitive aliases can use it. A named prelude union keeps the fixed `/lib/jibb/prelude/jibb` origin in every module, and its name remains unqualified when a library exports a type containing it. The prelude inventory is incomplete, so reserving the names in this source does not establish complete shadowing coverage. The source-backed internal prelude defines `poke`, which the public prelude re-exports as an ordinary transparent type. A dedicated trusted internal-prelude preparation path also supplies an atom-constrained private comparison scheme for a Jibb-written `gth` wrapper. Ordinary module resolution rejects that primitive path even if a caller supplies a spoofed root or bundle. The low-level prepared interface is still trusted host input; the host must select the vendored sources and canonicalize paths. Primitive execution and shape-based jet recognition are not implemented. Addition, decrement and length remain unavailable until arithmetic constraints distinguish their results from loobeans. The partial checker resolves its supported source shape, preserves its public name, and rejects ordinary imports of the private internal path. An imported API with one mark and a matching direct `+$ poke` declaration can export a derived constructor and retain agent/mark metadata when the source representation has the supported agent case. Other API shapes, complete private module checking, root API and kind checking, stores, `ask`, `pure`, lowering and runtime effects remain unfinished. A possible store or root API declaring `+$ poke` reports that kind or scope needs unsupported inference; definite duplicate declarations and unrelated shadowing still report conflicts. Prepared interfaces and caches are trusted caller inputs; the future host and linker must ensure the private source validated during preparation is the same version used to lower derived constructors. A `*` payload may contain gates, so the fragment treats it conservatively; full gate-free checks are unfinished. The shared module-scope fixture compares the prepared and source-taking paths against the real prelude and a two-module golden under eval and on the ship.
99+The supplied prelude is parsed into a **partial interface**: all names actually declared in the source are reserved, while only the molds and values this fragment can infer are available. These include the validated standard `list` mold, `unit`, the doc-exact generic `cmd` union, `same`, `fall`, `need`, `bond`, `lure`, `weld`, `snoc`, `turn`, `flop`, `rear`, `drop`, `skim`, `skip`, `murn`, `join`, `snip`, `levy`, `lien`, `cork`, `corl`, `cury` and `curr`; unsupported entries remain unavailable. The validated `list` is injected while the prelude’s gates are inferred; `weld` and `turn` use ordinary explicit result casts. An absent or altered `list` is not injected, and an altered declaration cannot leak through a direct or transitive mold alias. The same validated template is available when prelude mold aliases are prepared, so supported direct and transitive aliases can use it. A named prelude union keeps the fixed `/lib/jibb/prelude/jibb` origin in every module, and its name remains unqualified when a library exports a type containing it. The prelude inventory is incomplete, so reserving the names in this source does not establish complete shadowing coverage. The source-backed internal prelude defines `poke`, which the public prelude re-exports as an ordinary transparent type. A dedicated trusted internal-prelude preparation path also supplies an atom-constrained private comparison scheme for a Jibb-written `gth` wrapper. Ordinary module resolution rejects that primitive path even if a caller supplies a spoofed root or bundle. The low-level prepared interface is still trusted host input; the host must select the vendored sources and canonicalize paths. Primitive execution and shape-based jet recognition are not implemented. Addition, decrement and length remain unavailable until arithmetic constraints distinguish their results from loobeans. The partial checker resolves its supported source shape, preserves its public name, and rejects ordinary imports of the private internal path. An imported API with one mark and a matching direct `+$ poke` declaration can export a derived constructor and retain agent/mark metadata when the source representation has the supported agent case. Other API shapes, complete private module checking, root API and kind checking, stores, `ask`, `pure`, lowering and runtime effects remain unfinished. A possible store or root API declaring `+$ poke` reports that kind or scope needs unsupported inference; definite duplicate declarations and unrelated shadowing still report conflicts. Prepared interfaces and caches are trusted caller inputs; the future host and linker must ensure the private source validated during preparation is the same version used to lower derived constructors. A `*` payload may contain gates, so the fragment treats it conservatively; full gate-free checks are unfinished. The shared module-scope fixture compares the prepared and source-taking paths against the real prelude and a two-module golden under eval and on the ship.
100100
101101`+prepare-prelude` derives the interface and declared-name inventory from the trusted vendored source. Hosts can reuse its result with `+golden-types-with-prepared-prelude`; they must pass the unchanged result of preparation, not an independently constructed value. Empty, malformed and duplicate-name prelude sources fail closed. The source-taking `+prepare-prelude` and `+golden-types-with-prelude` do not supply the internal module; their `-and-internal` or `-with-internal` variants accept its source for the supported private import. API files, modules with `main`, unsupported definitions and many other features remain outside this subset. The older `+golden-types-with-modules` entry point fails closed for imports because it has no prelude scope. None of these partial reports claims the module has been checked.
102102
docs/prelude-inventory.md+3−3
@@ -6,7 +6,7 @@ The source is the fake ship's `%base` `/sys/hoon.hoon` (Hoon version 135), read
66
77The vendored prelude defines `poke` in its private internal module and re-exports it as a transparent type. The partial checker resolves its supported source shape and a narrow imported API constructor; complete checking of the private body, other API shapes, effect lowering and runtime execution remain unfinished. `ask` and `qath` are not yet defined there.
88
9−The prelude also declares the generic `cmd` mold exactly as in Overview, Effects. The partial checker infers its five cases and independent message types in the supported examples; complete module checking and backend validation remain outstanding. The related `sub` declaration awaits the `ask` representation decision.
9+The prelude also declares the generic `cmd` mold exactly as in Overview, Effects. The partial checker infers its five cases and independent message types in the supported examples; complete module checking and backend validation remain outstanding. The related `sub` declaration awaits the source representation and checking of `ask`.
1010
1111Hoon `+$` arms are marked **mold** below; `++` arms can be gates, doors or mold generators, and need individual inspection. Jibb's loobean `not` and Hoon's bitwise `not.bit` are distinct. Parser helpers outside 3g are excluded from the intended prelude except the specifically listed `slav` and `slaw`; the raw candidates below still need to be classified.
1212
@@ -26,13 +26,13 @@ The source-backed `gth` gate calls a compiler-supplied private comparison interf
2626
2727`biff`, `bind`, `bond`, `both`, `clap`, `clef`, `drop`, `fall`, `flit`, `hunt`, `lift`, `mate`, `need`, `some`.
2828
29−The following is an audit of the Hoon 135 bodies, not a completed Jibb interface. The partial checker infers `fall`, `need`, `some`, `bind`, `biff`, `both`, `clap`, `clef`, `drop` and `flit`; the remaining written implementations have been parsed, but complete checker validation remains outstanding. Backend validation remains outstanding for all of them.
29+The following is an audit of the Hoon 135 bodies, not a completed Jibb interface. The partial checker infers `fall`, `need`, `some`, `bind`, `biff`, `bond`, `both`, `clap`, `clef`, `drop` and `flit`; the remaining written implementations have been parsed, but complete checker validation remains outstanding. Backend validation remains outstanding for all of them.
3030
3131| Name | Hoon behavior | Jibb status |
3232| --- | --- | --- |
3333| `biff` | Applies a gate returning a unit to a present value; absent stays absent. | Written |
3434| `bind` | Applies a gate to a present value and wraps the result; absent stays absent. | Written |
35−| `bond` | Calls a fallback trap for an absent unit, otherwise returns its value. | Missing |
35+| `bond` | Calls a fallback trap for an absent unit, otherwise returns its value. | Written and inferred as a curried gate; backend validation remains outstanding |
3636| `both` | Returns a unit of both values when both units are present. | Written |
3737| `clap` | Returns the present unit if only one is present; combines both values with a gate if both are present. | Written with one shared type for both units and the combining gate, as @iko chose |
3838| `clef` | Applies a gate returning a unit when both inputs are present; otherwise returns an absent unit. | Written |
docs/status.md+7−6
@@ -23,7 +23,7 @@ The parser accepts `_` in mold positions and typed path segments, retaining each
2323
2424The repository spec records the subsequent type-system and prelude decisions; those changes also need synchronization to the Claude document. An initial inference fragment and a standalone Hoon type reader are being tested. The fragment explicitly reports that it does not check a module; partial bridges pass Hoon `*` in supported nonrecursive molds, selected Hoon atoms, term singletons, the null singleton, the two loobean singletons and their exact fork, nested faced or unfaced cells, supported disjoint unions and opaque standard collections from `/sur` molds and marks into inference. Collections retain their names and supported arguments for printing and unification; nested supported union arguments are retained too. The bridge trusts unchanged results from the source-aware reader; a materialized type graph alone cannot reveal cases Hoon already collapsed. The source-validated standard prelude `list` mold shares this representation with imported lists; other Jibb-written collection molds and most prelude collection operations remain unsupported; malformed names and arities fail closed. Selected self-recursive `/sur` molds, including Tlon `notes.import-node` with list-wrapped self references, cross as opaque module-and-name identities; aliases, foreign references, recursive marks, unfolding and construction remain unsupported. The reader handles mark samples, including a source-proved nonrecursive union from a single Ford-imported `/sur` core, recursive molds whose origins can be verified through Ford imports, nested collections, direct ordered maps, including source-validated named operands such as Tlon `notes.log`, certain ordered-map fields, direct `$^` unions whose cases can be proved disjoint, and one verified explicit union argument in a list, set, map or unit. Tagged `$%` cases can additionally use restricted local named payload molds, bare `~` fields and one level of local named tagged unions, as in real Tlon `notes`, with bounded source proof; unsupported or ambiguous dependencies fail closed. Ambiguous recursive origins fail closed; recognizable explicit unions are checked from source before Hoon can collapse their cases, as @iko confirmed for imported `$%`, `$?` and `$^`, while other nested unions, nested ordered maps, general union disjointness and complete import integration remain unfinished. Opt-in structured reader APIs preserve successful graphs and distinguish definite unsupported-aura and core evidence from failures the reader cannot prove; unverified union disjointness and name-only vase recognition remain unsupported. They revalidate and re-walk failed types. An opt-in partial checker entry point consumes unchanged reader results and reports definite aura or core errors at imported mold use sites when their inputs are unique. Ordered replay covers nested cell samples, record and function casts, and non-generic same-module aliases; unsupported prefixes, cycles and shadowing stop it. Union molds, generic applications, transitive modules and unsupported reader outcomes remain generic. Replay repeats inference and may add work. The partial checker resolves a subset of ordinary library imports in dependency order using supplied Jibb sources and a source-derived partial prelude interface, caches completed interfaces per run, detects missing sources and cycles, and resolves nested fields of imported values with independent scheme instantiation. The source-backed internal prelude defines `poke` and the public prelude re-exports it as a transparent type. A dedicated trusted preparation path supplies a private comparison scheme to the Jibb-written `gth` wrapper; ordinary imports cannot access them. Primitive execution and jet recognition are unfinished, and addition, decrement and length remain unavailable until arithmetic constraints distinguish their results from loobeans. The partial checker resolves its supported source shape and rejects ordinary imports of the private path. An imported API with one mark and a matching direct `+$ poke` declaration can export a constructor and retain agent/mark metadata when the representation has the supported agent case. A separate partial analysis resolves supported API path declarations and their full and diff mark types, including the todo paths; it does not create requests or check an API module. Complete private module checking, other API shapes, request gates, root API and kind checking, stores, `ask`, `pure`, lowering and runtime effects remain unfinished. A possible store or root API with `+$ poke` reports unsupported kind or scope, while definite duplicates and unrelated shadowing still report conflicts. The prelude includes the doc-exact generic `cmd` union; the prelude inventory is incomplete. The inference fragment supports unrestricted `@`, selected one-way widenings including aura-family ancestors, generalized atom constraints arising from explicit capitals or bare sample binders, acyclic local value definitions with captures, selected single self-recursive top-level and local gates, simple and nonrecursive generic mold aliases, selected faced record casts and field reads, and contextual tags, `~` and constructors for closed disjoint unions, including direct nonrecursive generic unions and propagation through complete loobean and unit-shaped branches in casts and known union-sample calls, including nested branches. Known loobean result context also propagates through supported complete branches and binder-only cell arms; binder-only arms over union subjects remain unsupported. A directly known named union can instantiate an unconstrained generic gate sample with its origin, generic arguments and faces preserved; unnamed, pending, recursive and variable-bound cases remain unsupported. A known gate with an unresolved result variable can receive a known enclosing result type before its arguments are inferred; unknown calls and unresolved targets remain conservative. Multi-argument calls form a right-nested sample, retain known faces and shared type variables, and can use known sample positions to contextualize list and union arguments. A definite mismatch points to the failing argument when the fragment can establish it, otherwise to the combined sample; unsupported contextual forms still fail closed. For a supported recursive gate, the checker infers the sample first and uses its exact type, including field faces, for one monomorphic self reference. It generalizes after the body is checked; subsequent uses instantiate it independently. Incompatible recursive arguments can report the gate and argument sites. For a complete loobean branch with one direct self-call arm, a separately inferred closed base type can seed the recursive result before the whole body is checked. Open or pending base types do not seed it; other branch shapes remain subject to the fragment’s existing limits. A supported single local recursive gate also uses a monomorphic self reference and generalizes variables free of the enclosing environment after checking its body; captured variables remain shared. The checker collects written capitals per `++` before inference, excluding nested definitions: a capital used in an enclosing definition is shared with its locals even when written later, while a capital introduced only in a local definition is generalized there. Sibling locals can introduce independent capitals with the same spelling; generic mold parameters keep their own scope. Top-level groups of syntactic gates are inferred together with monomorphic placeholders and shared substitutions, then generalized only after the whole group checks; downstream uses and library interfaces instantiate those schemes independently. A dependency graph identifies groups with two iterative depth-first passes; its conservative local-reference edges can reject otherwise valid programs. Supported local mutually recursive gate groups also use shared monomorphic placeholders and generalize only after the group checks, preserving captured outer variables. A bounded dependency proof reports certain non-gate cycles through values and gates when an explicit atom or loobean result cast and simple unshadowed expressions establish the cycle. Other mixed gate/value cycles, polymorphic recursion, unresolved literal constraints and unresolved branch joins remain unsupported. Reporting repeats inference for a single recursive gate outside a group; grouped reports use the stored schemes. Its performance cost remains unmeasured. A single-arm cell pattern accepts two or more binders, the last capturing the remaining tail; duplicate and shadowed binders are rejected. A structured single-arm pattern also works for a known non-union cell when coverage is proven, including nested literal and wildcard positions. Intermediate union or collection tails, nested patterns, wildcards and faced records remain unsupported. String interpolation accepts known atom auras, unrestricted `@`, tapes and isolated decimal literals; a known cell asks for a printer, and an explicitly generic atom asks for an aura. Loobeans, term singletons, non-tape collections, open types and a type fixed only later remain unsupported. A known closed union with two or more arms supports patterns that provably cover or exclude each remaining case, including payload binders, imported and generic cases, and binder-free catch-alls. Partial boolean patterns can split known `?` positions into their two noun values, up to 64 alternatives across the union; binders retain their original case type. Missing alternatives and covered arms are reported. Other partial patterns, expansions above the limit, binders spanning distinct cases, differing arm result types and some complex two-arm subjects remain unsupported. A cast or known call sample can supply result context through whole-case arms and supported finite loobean refinements for a known union accessed by a wing, a grouped wing or a supported shallow call, including nested cell and list positions; other partial-pattern contexts and subject forms remain unsupported. The Grammar’s `step` block infers in this fragment, but its module is not yet checked. A bare tag proved absent from a known union reports the union and tag sites in casts, single-argument calls, unit payloads, list items and supported branch arms; imported unnamed unions print their cases. Ordered fit replay can identify a missing tag nested in a syntactic tuple, stopping at an earlier mismatch or uncertainty. Known faced records support uniquely named field changes, including nested wings, with field context passed to replacements and the original record type retained. Missing fields, empty changes and definite mismatches report sites; the expected-type site is the edit because the original field declaration location is not retained. Unknown or partly unfaced spines, ambiguous fields and repeated edits remain unsupported. A known record cast supplies field context to its tuple or record initializer, including nested list and union fields; mismatch diagnostics use the cast mold because the original field declaration location is not retained. Isolated cart-style `init` and `update` expressions infer, while the complete cart-store fails closed because its kind and declaration scope remain unchecked. Uncontextualized list literals infer a fresh element type, including empty and nested lists, with independently generalized uses. Unresolved item tags and uncertain widening remain unsupported. Backtick unit construction uses the validated standard prelude unit template, infers its payload without losing pending constraints, and makes the prelude’s `some` available. Ordinary result annotations also let its `bind`, `biff`, `both`, `clap`, `clef` and `flit` infer. A known unit in a cast, call, list item or record field supplies context to its payload, including nested units and lists; mismatches identify the payload and context. Unrelated union identities, some variable-dependent fits, and missing or altered prelude unit templates remain unsupported. Contextual null-headed cells fit their cases, but do not supply a `|=%$` constructor; unresolved nulls remain pending and are reported separately from tags. A known union of `~` and a null-headed cell supports a complete `~` / `[~ value]` branch in either order, including shadow checks; unknown subjects, missing or duplicate arms, and unresolved branch results remain unsupported. This fragment infers the prelude’s `fall` and `need` signatures. With the validated prelude list and a known cast or gate sample, empty, nonempty and nested list literals infer their element types, including contextual union tags; a mismatched element names both sites. In that context `~` and zero-valued terms fit an empty list, and two-item unfaced cells form cons lists, including nested cons and imported-list contexts; invalid heads or tails name both sites. A known gate sample also supplies context to matching positions in a single tuple or record argument, including nested cells; zero literals can fit list positions. A bound zero constant remains unsupported rather than a definite mismatch, and an unknown callee does not supply context. Faced or longer cells and a missing or altered prelude list fail closed. A known list result also supplies context through complete loobean, unit-shaped and list-shaped branches, including recursive and nested branches. For a known standard list with a supported element type, a complete `~` / `[item rest]` branch infers the element and tail types in either arm order and checks binders for shadowing. Unknown subjects, unsupported element types and other or incomplete list patterns remain unsupported. A value with type variable `A` can fit a field whose type is that same `A`, including in generic union payloads and nested or repeated record fields. Other variable-dependent face merges remain unsupported. Forced equality of distinct written capitals now reports both source sites, following @iko’s decision; forcing one to a concrete type remains unsupported. Imported record spines with repeated faces fail closed where used, but only with a generic unsupported diagnostic. Hoon may erase unfaced nested-cell boundaries, so the check can conservatively reject valid names in distinct erased scopes. Supported closed unions print using an in-scope name or imported alias; an unnamed nongeneric union prints its cases, parenthesized when nested. The latter is print-only. Generic union types retain all arguments in their printed name; if that name is unavailable, the partial printer reports the limitation. Different import faces for the same origin remain compatible; compatibility across distinct union origins and some generic-argument comparisons remain unsupported. Nonrecursive generic aliases can reorder, repeat or omit parameters while retaining a union’s origin, including through local scopes and library interfaces. A generic union declared directly inside a body remains unsupported, as do differing-variable face constraints in a union payload. A transitive generic union whose name is unavailable is reported as unsupported instead of hiding its arguments. Unfixed decimal literals default to `@ud` in gate-free inferred types; recursive molds, general branch tag context, other constraint cases and defaulting inside gate types still need work. Collection recognition checks the originating core and fails closed on shadows or unsupported Ford subject shapes; a wrapper regression also rejects forged subjects, samples and tails. Its golden fixtures include three real Tlon files. A Clay test passes a Ford-built nested union through the reader into partial inference. The partial prelude includes `murn`, `join`, `snip`, `rear` and the newly agreed shared-type `clap`, parsed but still awaiting checker and backend validation, and [prelude-inventory.md](prelude-inventory.md) is a source audit, not the complete inventory or signatures. The milestone remains unfinished.
2525
26−The shared prelude interface reserves every name present in the supplied vendored source and makes only supported inferred entries available, including `list`, `unit`, `same`, `fall`, `need`, `lure`, `weld`, `snoc` and `turn`. The validated standard `list` mold is injected when the prelude’s own gates are inferred; `weld` and `turn` have ordinary explicit result casts. An absent or altered `list` is not injected, and an altered declaration cannot leak through direct or transitive mold aliases. The same validated template is available when prelude mold aliases are prepared, so supported direct and transitive aliases can use it. Unsupported entries such as most list helpers remain reserved but unavailable; backend validation of the helpers remains outstanding. All callers use the same prelude origin, so a library can export a type containing unqualified `(unit A)` to another module. Preparation rejects empty, malformed, conflicting or import-bearing source; the prepared value is trusted and must come unchanged from `+prepare-prelude`. The module-scope fixture compares the prepared and source-taking paths against the real prelude and a two-module golden under eval and on the ship. The source and checker remain incomplete, so this does not establish complete shadowing coverage or a checked module.
26+The shared prelude interface reserves every name present in the supplied vendored source and makes only supported inferred entries available, including `list`, `unit`, `same`, `fall`, `need`, `bond`, `lure`, `weld`, `snoc` and `turn`. The validated standard `list` mold is injected when the prelude’s own gates are inferred; `weld` and `turn` have ordinary explicit result casts. An absent or altered `list` is not injected, and an altered declaration cannot leak through direct or transitive mold aliases. The same validated template is available when prelude mold aliases are prepared, so supported direct and transitive aliases can use it. Unsupported entries such as most list helpers remain reserved but unavailable; backend validation of the helpers remains outstanding. All callers use the same prelude origin, so a library can export a type containing unqualified `(unit A)` to another module. Preparation rejects empty, malformed, conflicting or import-bearing source; the prepared value is trusted and must come unchanged from `+prepare-prelude`. The module-scope fixture compares the prepared and source-taking paths against the real prelude and a two-module golden under eval and on the ship. The source and checker remain incomplete, so this does not establish complete shadowing coverage or a checked module.
2727
2828## Milestone 1: parser and mark
2929
@@ -41,8 +41,8 @@ What the plan asks for, and where it is:
4141
4242Besides the plan's list:
4343
44−- 603 golden cases: 383 that parse and 220 that fail, each failure at a stated line and column. One failing case has an unclear expectation (corpus question 3). The newer type-output cases exercise only the partial inference fragment. Each case's `about.txt` quotes the doc's words it tests.
45−- The 603-case corpus passed under `urbit eval` in 119.7 s while other checks were running. The fake ship passed all 614 tests, including the importer, importer/checker and mark/checker bridges, module scope, unification and hole guards, with 56.8 s for sync and 60.1 s for tests. The importer golden compares 221 projections; `tools/clay-fixtures` builds the example Hoon fixtures through Clay, checks a recursive Ford import's origin, and passes Clay-built types through the Clay-built importer and partial checker.
44+- 604 golden cases: 384 that parse and 220 that fail, each failure at a stated line and column. One failing case has an unclear expectation (corpus question 3). The newer type-output cases exercise only the partial inference fragment. Each case's `about.txt` quotes the doc's words it tests.
45+- The 604-case corpus passed under `urbit eval` in 81.0 s while other checks were running. The fake ship passed all 615 tests, including the importer, importer/checker and mark/checker bridges, module scope, unification and hole guards, with 51.3 s for sync and 49.4 s for tests. The importer golden compares 221 projections; `tools/clay-fixtures` builds the example Hoon fixtures through Clay, checks a recursive Ford import's origin, and passes Clay-built types through the Clay-built importer and partial checker.
4646- `tools/testdata/selftest` (22 checks), `tools/testdata/ship-selftest` and `tools/testdata/clay-fixtures-selftest` test the tools themselves; the last checks temporary Clay fixture cleanup and signal handling without a ship.
4747- Two independent audits before 7c739b7, one of which compared the library with a reference parser written in Python from the doc over about 19,000 generated programs. Before ab797a9, a second Python parser, written from the decisions, agreed with the library on 8,000 generated programs and 900 hand-written probes.
4848- Speed: starting `urbit eval` and building the library takes about 8 s. After that, a 2,000-line module of 400 definitions parses in about a second. Loops over definitions, arms, lines and items grow no stack; nesting costs a few stack frames a level, and 100,000 nested brackets still parse (library section 3).
@@ -121,14 +121,15 @@ Besides the plan's list:
121121| 0bf6178 | 2026-10-31 | Bridge recursive Tlon lists and prepare a private comparison interface |
122122| 4e472b5 | 2026-10-31 | Pass known named unions through polymorphic gates |
123123| e3e184f | 2026-10-31 | Parse type holes, reject duplicate written record fields, and extend partial union inference and imports |
124−| This change | 2026-10-31 | Infer supported annotation holes and prelude list aliases |
124+| 80e221a | 2026-10-31 | Infer supported annotation holes and prelude list aliases |
125+| This change | 2026-10-31 | Add the curried `bond` prelude gate |
125126
126127## Checking it
127128
128129On a machine set up as [development.md](development.md) says:
129130
130131```
131−tools/golden # 603 cases under urbit eval
132+tools/golden # 604 cases under urbit eval
132133tools/importer-test # the Hoon importer fixture projection
133134tools/type-import-test # the importer/checker bridge fixture
134135tools/type-tlon-test # the real Tlon reader/checker fixture
@@ -143,7 +144,7 @@ tools/testdata/selftest # the tools themselves
143144tools/doc-blocks docs/spec # the doc's examples are golden cases
144145tools/ship start
145146tools/ship gen-tests --check # tests/lib/jibb.hoon is up to date
146−tools/ship test # the same 603 cases as -test arms on the ship
147+tools/ship test # the same 604 cases as -test arms on the ship
147148tools/testdata/ship-selftest
148149tools/testdata/clay-fixtures-selftest # scratch fixture cleanup without a ship
149150tools/ship check-commit # |commit stores .jibb files
jibb-dev/lib/jibb/prelude.jibb+6
@@ -149,6 +149,12 @@
149149 ~ ~
150150 [~ value] [value ~]
151151
152+++ bond |= fallback=$-(~ A)
153+ |= maybe=(unit A)
154+ ?- maybe
155+ ~ (fallback ~)
156+ [~ value] value
157+
152158++ bind |= args=[(unit A) $-(A B)]
153159 ?- args
154160 [maybe f] ^- (unit B)
tests/golden/types-prelude-bond/about.txtnew file+4
@@ -0,0 +1,4 @@
1+source: Overview, Prelude: "Hoon's standard library regrouped, written in Jibb and vendored as `/lib/jibb/prelude`".
2+tests: The curried `bond` gate uses a fallback trap for an absent unit and returns the value of a present unit; both results keep the fallback type, including generic, cord and ship uses.
3+expect: parses
4+expect-types: a partial inference report
tests/golden/types-prelude-bond/modules.txtnew file+1
@@ -0,0 +1 @@
1+# Use the source-backed prelude.
tests/golden/types-prelude-bond/source.jibbnew file+6
@@ -0,0 +1,6 @@
1+++ choose (bond |=(~ "default"))
2+++ missing (choose ~)
3+++ present (choose `"found")
4+++ wrap |= fallback=$-(~ A) (bond fallback)
5+++ choose-ship (bond |=(~ ~zod))
6+++ present-ship (choose-ship `~zod)
tests/golden/types-prelude-bond/tokens.txtnew file+57
@@ -0,0 +1,57 @@
1+1:1 glyph ++
2+1:4 name choose
3+1:11 glyph (
4+1:12 tight name bond
5+1:17 glyph |=(
6+1:20 tight lit ~
7+1:22 str "default"
8+1:31 tight glyph )
9+1:32 tight glyph )
10+2:1 NEWLINE
11+2:1 glyph ++
12+2:4 name missing
13+2:12 glyph (
14+2:13 tight name choose
15+2:20 lit ~
16+2:21 tight glyph )
17+3:1 NEWLINE
18+3:1 glyph ++
19+3:4 name present
20+3:12 glyph (
21+3:13 tight name choose
22+3:20 glyph `
23+3:21 tight str "found"
24+3:28 tight glyph )
25+4:1 NEWLINE
26+4:1 glyph ++
27+4:4 name wrap
28+4:9 glyph |=
29+4:12 name fallback
30+4:20 tight glyph =
31+4:21 tight glyph $-(
32+4:24 tight lit ~
33+4:26 tvar A
34+4:27 tight glyph )
35+4:29 glyph (
36+4:30 tight name bond
37+4:35 name fallback
38+4:43 tight glyph )
39+5:1 NEWLINE
40+5:1 glyph ++
41+5:4 name choose-ship
42+5:16 glyph (
43+5:17 tight name bond
44+5:22 glyph |=(
45+5:25 tight lit ~
46+5:27 lit ~zod
47+5:31 tight glyph )
48+5:32 tight glyph )
49+6:1 NEWLINE
50+6:1 glyph ++
51+6:4 name present-ship
52+6:17 glyph (
53+6:18 tight name choose-ship
54+6:30 glyph `
55+6:31 tight lit ~zod
56+6:35 tight glyph )
57+6:36 NEWLINE
tests/golden/types-prelude-bond/tree.txtnew file+30
@@ -0,0 +1,30 @@
1+(module
2+ (value 1:1 choose
3+ (group 1:11
4+ (call 1:12
5+ (wing 1:12 bond)
6+ (gate-wide 1:17 (const 1:20 ~) (str 1:22 "default")))))
7+ (value 2:1 missing
8+ (group 2:12
9+ (call 2:13 (wing 2:13 choose) (lit 2:20 ~))))
10+ (value 3:1 present
11+ (group 3:12
12+ (call 3:13
13+ (wing 3:13 choose)
14+ (unit 3:20 (str 3:21 "found")))))
15+ (value 4:1 wrap
16+ (gate 4:9
17+ (face 4:12 fallback
18+ (fn 4:21 (const 4:24 ~) (tvar 4:26 A)))
19+ (group 4:29
20+ (call 4:30 (wing 4:30 bond) (wing 4:35 fallback)))))
21+ (value 5:1 choose-ship
22+ (group 5:16
23+ (call 5:17
24+ (wing 5:17 bond)
25+ (gate-wide 5:22 (const 5:25 ~) (lit 5:27 ~zod)))))
26+ (value 6:1 present-ship
27+ (group 6:17
28+ (call 6:18
29+ (wing 6:18 choose-ship)
30+ (unit 6:30 (lit 6:31 ~zod))))))
tests/golden/types-prelude-bond/types.txtnew file+7
@@ -0,0 +1,7 @@
1+partial inference; module not checked
2+++ choose: $-((unit @t) @t)
3+++ missing: @t
4+++ present: @t
5+++ wrap: $-($-(~ A) $-((unit A) A))
6+++ choose-ship: $-((unit @p) @p)
7+++ present-ship: @p
tests/lib/jibb.hoon+465−459
@@ -1841,380 +1841,384 @@
18411841/* tok-518 %txt /tests/golden/types-prelude-arithmetic/tokens/txt
18421842/* tre-518 %txt /tests/golden/types-prelude-arithmetic/tree/txt
18431843/* typ-518 %txt /tests/golden/types-prelude-arithmetic/types/txt
1844−/* src-519 %jibb /tests/golden/types-prelude-cmd/source/jibb
1845−/* tok-519 %txt /tests/golden/types-prelude-cmd/tokens/txt
1846−/* tre-519 %txt /tests/golden/types-prelude-cmd/tree/txt
1847−/* typ-519 %txt /tests/golden/types-prelude-cmd/types/txt
1848−/* src-520 %jibb /tests/golden/types-prelude-direct/source/jibb
1849−/* tok-520 %txt /tests/golden/types-prelude-direct/tokens/txt
1850−/* tre-520 %txt /tests/golden/types-prelude-direct/tree/txt
1851−/* typ-520 %txt /tests/golden/types-prelude-direct/types/txt
1852−/* src-521 %jibb /tests/golden/types-prelude-functional/source/jibb
1853−/* tok-521 %txt /tests/golden/types-prelude-functional/tokens/txt
1854−/* tre-521 %txt /tests/golden/types-prelude-functional/tree/txt
1855−/* typ-521 %txt /tests/golden/types-prelude-functional/types/txt
1856−/* src-522 %jibb /tests/golden/types-prelude-interface/source/jibb
1857−/* tok-522 %txt /tests/golden/types-prelude-interface/tokens/txt
1858−/* tre-522 %txt /tests/golden/types-prelude-interface/tree/txt
1859−/* mod-522-1 %jibb /tests/golden/types-prelude-interface/modules/ui/left/jibb
1860−/* mod-522-2 %jibb /tests/golden/types-prelude-interface/modules/ui/right/jibb
1861−/* typ-522 %txt /tests/golden/types-prelude-interface/types/txt
1862−/* mtre-522 %txt /tests/golden/types-prelude-interface/module-trees/txt
1863−/* src-523 %jibb /tests/golden/types-prelude-list-alias/source/jibb
1864−/* tok-523 %txt /tests/golden/types-prelude-list-alias/tokens/txt
1865−/* tre-523 %txt /tests/golden/types-prelude-list-alias/tree/txt
1866−/* typ-523 %txt /tests/golden/types-prelude-list-alias/types/txt
1867−/* src-524 %jibb /tests/golden/types-prelude-list-functions/source/jibb
1868−/* tok-524 %txt /tests/golden/types-prelude-list-functions/tokens/txt
1869−/* tre-524 %txt /tests/golden/types-prelude-list-functions/tree/txt
1870−/* mod-524-1 %jibb /tests/golden/types-prelude-list-functions/modules/ui/lib/jibb
1871−/* typ-524 %txt /tests/golden/types-prelude-list-functions/types/txt
1872−/* mtre-524 %txt /tests/golden/types-prelude-list-functions/module-trees/txt
1873−/* src-525 %jibb /tests/golden/types-prelude-list-helpers/source/jibb
1874−/* tok-525 %txt /tests/golden/types-prelude-list-helpers/tokens/txt
1875−/* tre-525 %txt /tests/golden/types-prelude-list-helpers/tree/txt
1876−/* typ-525 %txt /tests/golden/types-prelude-list-helpers/types/txt
1877−/* src-526 %jibb /tests/golden/types-prelude-predicates/source/jibb
1878−/* tok-526 %txt /tests/golden/types-prelude-predicates/tokens/txt
1879−/* tre-526 %txt /tests/golden/types-prelude-predicates/tree/txt
1880−/* typ-526 %txt /tests/golden/types-prelude-predicates/types/txt
1881−/* src-527 %jibb /tests/golden/types-prelude-unit-helpers/source/jibb
1882−/* tok-527 %txt /tests/golden/types-prelude-unit-helpers/tokens/txt
1883−/* tre-527 %txt /tests/golden/types-prelude-unit-helpers/tree/txt
1884−/* typ-527 %txt /tests/golden/types-prelude-unit-helpers/types/txt
1885−/* src-528 %jibb /tests/golden/types-record-bound-variable/source/jibb
1886−/* tok-528 %txt /tests/golden/types-record-bound-variable/tokens/txt
1887−/* tre-528 %txt /tests/golden/types-record-bound-variable/tree/txt
1888−/* typ-528 %txt /tests/golden/types-record-bound-variable/types/txt
1889−/* src-529 %jibb /tests/golden/types-record-cast-context/source/jibb
1890−/* tok-529 %txt /tests/golden/types-record-cast-context/tokens/txt
1891−/* tre-529 %txt /tests/golden/types-record-cast-context/tree/txt
1892−/* typ-529 %txt /tests/golden/types-record-cast-context/types/txt
1893−/* src-530 %jibb /tests/golden/types-record-change/source/jibb
1894−/* tok-530 %txt /tests/golden/types-record-change/tokens/txt
1895−/* tre-530 %txt /tests/golden/types-record-change/tree/txt
1896−/* typ-530 %txt /tests/golden/types-record-change/types/txt
1897−/* src-531 %jibb /tests/golden/types-record-change-generic/source/jibb
1898−/* tok-531 %txt /tests/golden/types-record-change-generic/tokens/txt
1899−/* tre-531 %txt /tests/golden/types-record-change-generic/tree/txt
1900−/* typ-531 %txt /tests/golden/types-record-change-generic/types/txt
1901−/* src-532 %jibb /tests/golden/types-record-faces/source/jibb
1902−/* tok-532 %txt /tests/golden/types-record-faces/tokens/txt
1903−/* tre-532 %txt /tests/golden/types-record-faces/tree/txt
1904−/* typ-532 %txt /tests/golden/types-record-faces/types/txt
1905−/* src-533 %jibb /tests/golden/types-record-field-edit-separate/source/jibb
1906−/* tok-533 %txt /tests/golden/types-record-field-edit-separate/tokens/txt
1907−/* tre-533 %txt /tests/golden/types-record-field-edit-separate/tree/txt
1908−/* typ-533 %txt /tests/golden/types-record-field-edit-separate/types/txt
1909−/* src-534 %jibb /tests/golden/types-record-field-expr-duplicate/source/jibb
1910−/* tok-534 %txt /tests/golden/types-record-field-expr-duplicate/tokens/txt
1911−/* tre-534 %txt /tests/golden/types-record-field-expr-duplicate/tree/txt
1912−/* typ-534 %txt /tests/golden/types-record-field-expr-duplicate/types/txt
1913−/* src-535 %jibb /tests/golden/types-record-field-expr-separate/source/jibb
1914−/* tok-535 %txt /tests/golden/types-record-field-expr-separate/tokens/txt
1915−/* tre-535 %txt /tests/golden/types-record-field-expr-separate/tree/txt
1916−/* typ-535 %txt /tests/golden/types-record-field-expr-separate/types/txt
1917−/* src-536 %jibb /tests/golden/types-record-field-module-reachable/source/jibb
1918−/* tok-536 %txt /tests/golden/types-record-field-module-reachable/tokens/txt
1919−/* tre-536 %txt /tests/golden/types-record-field-module-reachable/tree/txt
1920−/* mod-536-1 %jibb /tests/golden/types-record-field-module-reachable/modules/ui/lib/jibb
1921−/* typ-536 %txt /tests/golden/types-record-field-module-reachable/types/txt
1922−/* mtre-536 %txt /tests/golden/types-record-field-module-reachable/module-trees/txt
1923−/* src-537 %jibb /tests/golden/types-record-field-module-unused/source/jibb
1924−/* tok-537 %txt /tests/golden/types-record-field-module-unused/tokens/txt
1925−/* tre-537 %txt /tests/golden/types-record-field-module-unused/tree/txt
1926−/* mod-537-1 %jibb /tests/golden/types-record-field-module-unused/modules/ui/good/jibb
1927−/* mod-537-2 %jibb /tests/golden/types-record-field-module-unused/modules/ui/unused/jibb
1928−/* typ-537 %txt /tests/golden/types-record-field-module-unused/types/txt
1929−/* mtre-537 %txt /tests/golden/types-record-field-module-unused/module-trees/txt
1930−/* src-538 %jibb /tests/golden/types-record-field-nested-mold/source/jibb
1931−/* tok-538 %txt /tests/golden/types-record-field-nested-mold/tokens/txt
1932−/* tre-538 %txt /tests/golden/types-record-field-nested-mold/tree/txt
1933−/* typ-538 %txt /tests/golden/types-record-field-nested-mold/types/txt
1934−/* src-539 %jibb /tests/golden/types-record-field-outer-inner/source/jibb
1935−/* tok-539 %txt /tests/golden/types-record-field-outer-inner/tokens/txt
1936−/* tre-539 %txt /tests/golden/types-record-field-outer-inner/tree/txt
1937−/* typ-539 %txt /tests/golden/types-record-field-outer-inner/types/txt
1938−/* src-540 %jibb /tests/golden/types-record-field-sample-duplicate/source/jibb
1939−/* tok-540 %txt /tests/golden/types-record-field-sample-duplicate/tokens/txt
1940−/* tre-540 %txt /tests/golden/types-record-field-sample-duplicate/tree/txt
1941−/* typ-540 %txt /tests/golden/types-record-field-sample-duplicate/types/txt
1942−/* src-541 %jibb /tests/golden/types-record-field-separate-molds/source/jibb
1943−/* tok-541 %txt /tests/golden/types-record-field-separate-molds/tokens/txt
1944−/* tre-541 %txt /tests/golden/types-record-field-separate-molds/tree/txt
1945−/* typ-541 %txt /tests/golden/types-record-field-separate-molds/types/txt
1946−/* src-542 %jibb /tests/golden/types-record-field-unused-mold/source/jibb
1947−/* tok-542 %txt /tests/golden/types-record-field-unused-mold/tokens/txt
1948−/* tre-542 %txt /tests/golden/types-record-field-unused-mold/tree/txt
1949−/* typ-542 %txt /tests/golden/types-record-field-unused-mold/types/txt
1950−/* src-543 %jibb /tests/golden/types-record-import/source/jibb
1951−/* tok-543 %txt /tests/golden/types-record-import/tokens/txt
1952−/* tre-543 %txt /tests/golden/types-record-import/tree/txt
1953−/* mod-543-1 %jibb /tests/golden/types-record-import/modules/ui/lib/jibb
1954−/* typ-543 %txt /tests/golden/types-record-import/types/txt
1955−/* mtre-543 %txt /tests/golden/types-record-import/module-trees/txt
1956−/* src-544 %jibb /tests/golden/types-record-local-scheme/source/jibb
1957−/* tok-544 %txt /tests/golden/types-record-local-scheme/tokens/txt
1958−/* tre-544 %txt /tests/golden/types-record-local-scheme/tree/txt
1959−/* typ-544 %txt /tests/golden/types-record-local-scheme/types/txt
1960−/* src-545 %jibb /tests/golden/types-record-nested/source/jibb
1961−/* tok-545 %txt /tests/golden/types-record-nested/tokens/txt
1962−/* tre-545 %txt /tests/golden/types-record-nested/tree/txt
1963−/* typ-545 %txt /tests/golden/types-record-nested/types/txt
1964−/* src-546 %jibb /tests/golden/types-record-to-tuple/source/jibb
1965−/* tok-546 %txt /tests/golden/types-record-to-tuple/tokens/txt
1966−/* tre-546 %txt /tests/golden/types-record-to-tuple/tree/txt
1967−/* typ-546 %txt /tests/golden/types-record-to-tuple/types/txt
1968−/* src-547 %jibb /tests/golden/types-recursion-scc-failures/source/jibb
1969−/* tok-547 %txt /tests/golden/types-recursion-scc-failures/tokens/txt
1970−/* tre-547 %txt /tests/golden/types-recursion-scc-failures/tree/txt
1971−/* typ-547 %txt /tests/golden/types-recursion-scc-failures/types/txt
1972−/* src-548 %jibb /tests/golden/types-recursion-scc-groups/source/jibb
1973−/* tok-548 %txt /tests/golden/types-recursion-scc-groups/tokens/txt
1974−/* tre-548 %txt /tests/golden/types-recursion-scc-groups/tree/txt
1975−/* typ-548 %txt /tests/golden/types-recursion-scc-groups/types/txt
1976−/* src-549 %jibb /tests/golden/types-recursion-scc-import/source/jibb
1977−/* tok-549 %txt /tests/golden/types-recursion-scc-import/tokens/txt
1978−/* tre-549 %txt /tests/golden/types-recursion-scc-import/tree/txt
1979−/* mod-549-1 %jibb /tests/golden/types-recursion-scc-import/modules/ui/lib/jibb
1980−/* typ-549 %txt /tests/golden/types-recursion-scc-import/types/txt
1981−/* mtre-549 %txt /tests/golden/types-recursion-scc-import/module-trees/txt
1982−/* src-550 %jibb /tests/golden/types-recursion-scc-import-bad/source/jibb
1983−/* tok-550 %txt /tests/golden/types-recursion-scc-import-bad/tokens/txt
1984−/* tre-550 %txt /tests/golden/types-recursion-scc-import-bad/tree/txt
1985−/* mod-550-1 %jibb /tests/golden/types-recursion-scc-import-bad/modules/ui/lib/jibb
1986−/* typ-550 %txt /tests/golden/types-recursion-scc-import-bad/types/txt
1987−/* mtre-550 %txt /tests/golden/types-recursion-scc-import-bad/module-trees/txt
1988−/* src-551 %jibb /tests/golden/types-recursion-scc-local/source/jibb
1989−/* tok-551 %txt /tests/golden/types-recursion-scc-local/tokens/txt
1990−/* tre-551 %txt /tests/golden/types-recursion-scc-local/tree/txt
1991−/* typ-551 %txt /tests/golden/types-recursion-scc-local/types/txt
1992−/* src-552 %jibb /tests/golden/types-recursion-scc-order/source/jibb
1993−/* tok-552 %txt /tests/golden/types-recursion-scc-order/tokens/txt
1994−/* tre-552 %txt /tests/golden/types-recursion-scc-order/tree/txt
1995−/* typ-552 %txt /tests/golden/types-recursion-scc-order/types/txt
1996−/* src-553 %jibb /tests/golden/types-recursion-scc-shadow/source/jibb
1997−/* tok-553 %txt /tests/golden/types-recursion-scc-shadow/tokens/txt
1998−/* tre-553 %txt /tests/golden/types-recursion-scc-shadow/tree/txt
1999−/* typ-553 %txt /tests/golden/types-recursion-scc-shadow/types/txt
2000−/* src-554 %jibb /tests/golden/types-recursive-branch/source/jibb
2001−/* tok-554 %txt /tests/golden/types-recursive-branch/tokens/txt
2002−/* tre-554 %txt /tests/golden/types-recursive-branch/tree/txt
2003−/* typ-554 %txt /tests/golden/types-recursive-branch/types/txt
2004−/* src-555 %jibb /tests/golden/types-recursive-gate/source/jibb
2005−/* tok-555 %txt /tests/golden/types-recursive-gate/tokens/txt
2006−/* tre-555 %txt /tests/golden/types-recursive-gate/tree/txt
2007−/* typ-555 %txt /tests/golden/types-recursive-gate/types/txt
2008−/* src-556 %jibb /tests/golden/types-recursive-sample/source/jibb
2009−/* tok-556 %txt /tests/golden/types-recursive-sample/tokens/txt
2010−/* tre-556 %txt /tests/golden/types-recursive-sample/tree/txt
2011−/* typ-556 %txt /tests/golden/types-recursive-sample/types/txt
2012−/* src-557 %jibb /tests/golden/types-scope-library-poke/source/jibb
2013−/* tok-557 %txt /tests/golden/types-scope-library-poke/tokens/txt
2014−/* tre-557 %txt /tests/golden/types-scope-library-poke/tree/txt
2015−/* typ-557 %txt /tests/golden/types-scope-library-poke/types/txt
2016−/* src-558 %jibb /tests/golden/types-scope-root-api/source/jibb
2017−/* tok-558 %txt /tests/golden/types-scope-root-api/tokens/txt
2018−/* tre-558 %txt /tests/golden/types-scope-root-api/tree/txt
2019−/* typ-558 %txt /tests/golden/types-scope-root-api/types/txt
2020−/* src-559 %jibb /tests/golden/types-scope-store-duplicate/source/jibb
2021−/* tok-559 %txt /tests/golden/types-scope-store-duplicate/tokens/txt
2022−/* tre-559 %txt /tests/golden/types-scope-store-duplicate/tree/txt
2023−/* typ-559 %txt /tests/golden/types-scope-store-duplicate/types/txt
2024−/* src-560 %jibb /tests/golden/types-scope-store-shadow/source/jibb
2025−/* tok-560 %txt /tests/golden/types-scope-store-shadow/tokens/txt
2026−/* tre-560 %txt /tests/golden/types-scope-store-shadow/tree/txt
2027−/* typ-560 %txt /tests/golden/types-scope-store-shadow/types/txt
2028−/* src-561 %jibb /tests/golden/types-single-case-pattern/source/jibb
2029−/* tok-561 %txt /tests/golden/types-single-case-pattern/tokens/txt
2030−/* tre-561 %txt /tests/golden/types-single-case-pattern/tree/txt
2031−/* typ-561 %txt /tests/golden/types-single-case-pattern/types/txt
2032−/* src-562 %jibb /tests/golden/types-string-interpolation/source/jibb
2033−/* tok-562 %txt /tests/golden/types-string-interpolation/tokens/txt
2034−/* tre-562 %txt /tests/golden/types-string-interpolation/tree/txt
2035−/* typ-562 %txt /tests/golden/types-string-interpolation/types/txt
2036−/* src-563 %jibb /tests/golden/types-tuple-context/source/jibb
2037−/* tok-563 %txt /tests/golden/types-tuple-context/tokens/txt
2038−/* tre-563 %txt /tests/golden/types-tuple-context/tree/txt
2039−/* typ-563 %txt /tests/golden/types-tuple-context/types/txt
2040−/* src-564 %jibb /tests/golden/types-tuple-context-nested/source/jibb
2041−/* tok-564 %txt /tests/golden/types-tuple-context-nested/tokens/txt
2042−/* tre-564 %txt /tests/golden/types-tuple-context-nested/tree/txt
2043−/* typ-564 %txt /tests/golden/types-tuple-context-nested/types/txt
2044−/* src-565 %jibb /tests/golden/types-union-alias/source/jibb
2045−/* tok-565 %txt /tests/golden/types-union-alias/tokens/txt
2046−/* tre-565 %txt /tests/golden/types-union-alias/tree/txt
2047−/* typ-565 %txt /tests/golden/types-union-alias/types/txt
2048−/* src-566 %jibb /tests/golden/types-union-branch-context/source/jibb
2049−/* tok-566 %txt /tests/golden/types-union-branch-context/tokens/txt
2050−/* tre-566 %txt /tests/golden/types-union-branch-context/tree/txt
2051−/* typ-566 %txt /tests/golden/types-union-branch-context/types/txt
2052−/* src-567 %jibb /tests/golden/types-union-branch-pending/source/jibb
2053−/* tok-567 %txt /tests/golden/types-union-branch-pending/tokens/txt
2054−/* tre-567 %txt /tests/golden/types-union-branch-pending/tree/txt
2055−/* typ-567 %txt /tests/golden/types-union-branch-pending/types/txt
2056−/* src-568 %jibb /tests/golden/types-union-constructor-shape/source/jibb
2057−/* tok-568 %txt /tests/golden/types-union-constructor-shape/tokens/txt
2058−/* tre-568 %txt /tests/golden/types-union-constructor-shape/tree/txt
2059−/* typ-568 %txt /tests/golden/types-union-constructor-shape/types/txt
2060−/* src-569 %jibb /tests/golden/types-union-context-flow/source/jibb
2061−/* tok-569 %txt /tests/golden/types-union-context-flow/tokens/txt
2062−/* tre-569 %txt /tests/golden/types-union-context-flow/tree/txt
2063−/* typ-569 %txt /tests/golden/types-union-context-flow/types/txt
2064−/* src-570 %jibb /tests/golden/types-union-finite/source/jibb
2065−/* tok-570 %txt /tests/golden/types-union-finite/tokens/txt
2066−/* tre-570 %txt /tests/golden/types-union-finite/tree/txt
2067−/* typ-570 %txt /tests/golden/types-union-finite/types/txt
2068−/* src-571 %jibb /tests/golden/types-union-finite-context/source/jibb
2069−/* tok-571 %txt /tests/golden/types-union-finite-context/tokens/txt
2070−/* tre-571 %txt /tests/golden/types-union-finite-context/tree/txt
2071−/* typ-571 %txt /tests/golden/types-union-finite-context/types/txt
2072−/* src-572 %jibb /tests/golden/types-union-finite-generic/source/jibb
2073−/* tok-572 %txt /tests/golden/types-union-finite-generic/tokens/txt
2074−/* tre-572 %txt /tests/golden/types-union-finite-generic/tree/txt
2075−/* typ-572 %txt /tests/golden/types-union-finite-generic/types/txt
2076−/* src-573 %jibb /tests/golden/types-union-finite-limit/source/jibb
2077−/* tok-573 %txt /tests/golden/types-union-finite-limit/tokens/txt
2078−/* tre-573 %txt /tests/golden/types-union-finite-limit/tree/txt
2079−/* typ-573 %txt /tests/golden/types-union-finite-limit/types/txt
2080−/* src-574 %jibb /tests/golden/types-union-import/source/jibb
2081−/* tok-574 %txt /tests/golden/types-union-import/tokens/txt
2082−/* tre-574 %txt /tests/golden/types-union-import/tree/txt
2083−/* mod-574-1 %jibb /tests/golden/types-union-import/modules/ui/lib/jibb
2084−/* typ-574 %txt /tests/golden/types-union-import/types/txt
2085−/* mtre-574 %txt /tests/golden/types-union-import/module-trees/txt
2086−/* src-575 %jibb /tests/golden/types-union-local-pending/source/jibb
2087−/* tok-575 %txt /tests/golden/types-union-local-pending/tokens/txt
2088−/* tre-575 %txt /tests/golden/types-union-local-pending/tree/txt
2089−/* typ-575 %txt /tests/golden/types-union-local-pending/types/txt
2090−/* src-576 %jibb /tests/golden/types-union-nonwing-subject/source/jibb
2091−/* tok-576 %txt /tests/golden/types-union-nonwing-subject/tokens/txt
2092−/* tre-576 %txt /tests/golden/types-union-nonwing-subject/tree/txt
2093−/* typ-576 %txt /tests/golden/types-union-nonwing-subject/types/txt
2094−/* src-577 %jibb /tests/golden/types-union-overlap/source/jibb
2095−/* tok-577 %txt /tests/golden/types-union-overlap/tokens/txt
2096−/* tre-577 %txt /tests/golden/types-union-overlap/tree/txt
2097−/* typ-577 %txt /tests/golden/types-union-overlap/types/txt
2098−/* src-578 %jibb /tests/golden/types-union-overlap-nested/source/jibb
2099−/* tok-578 %txt /tests/golden/types-union-overlap-nested/tokens/txt
2100−/* tre-578 %txt /tests/golden/types-union-overlap-nested/tree/txt
2101−/* typ-578 %txt /tests/golden/types-union-overlap-nested/types/txt
2102−/* src-579 %jibb /tests/golden/types-union-pattern-result-context/source/jibb
2103−/* tok-579 %txt /tests/golden/types-union-pattern-result-context/tokens/txt
2104−/* tre-579 %txt /tests/golden/types-union-pattern-result-context/tree/txt
2105−/* typ-579 %txt /tests/golden/types-union-pattern-result-context/types/txt
2106−/* src-580 %jibb /tests/golden/types-union-pattern-result-controls/source/jibb
2107−/* tok-580 %txt /tests/golden/types-union-pattern-result-controls/tokens/txt
2108−/* tre-580 %txt /tests/golden/types-union-pattern-result-controls/tree/txt
2109−/* typ-580 %txt /tests/golden/types-union-pattern-result-controls/types/txt
2110−/* src-581 %jibb /tests/golden/types-union-patterns/source/jibb
2111−/* tok-581 %txt /tests/golden/types-union-patterns/tokens/txt
2112−/* tre-581 %txt /tests/golden/types-union-patterns/tree/txt
2113−/* typ-581 %txt /tests/golden/types-union-patterns/types/txt
2114−/* src-582 %jibb /tests/golden/types-union-patterns-generic/source/jibb
2115−/* tok-582 %txt /tests/golden/types-union-patterns-generic/tokens/txt
2116−/* tre-582 %txt /tests/golden/types-union-patterns-generic/tree/txt
2117−/* typ-582 %txt /tests/golden/types-union-patterns-generic/types/txt
2118−/* src-583 %jibb /tests/golden/types-union-patterns-import/source/jibb
2119−/* tok-583 %txt /tests/golden/types-union-patterns-import/tokens/txt
2120−/* tre-583 %txt /tests/golden/types-union-patterns-import/tree/txt
2121−/* mod-583-1 %jibb /tests/golden/types-union-patterns-import/modules/ui/lib/jibb
2122−/* typ-583 %txt /tests/golden/types-union-patterns-import/types/txt
2123−/* mtre-583 %txt /tests/golden/types-union-patterns-import/module-trees/txt
2124−/* src-584 %jibb /tests/golden/types-union-phantom-generic/source/jibb
2125−/* tok-584 %txt /tests/golden/types-union-phantom-generic/tokens/txt
2126−/* tre-584 %txt /tests/golden/types-union-phantom-generic/tree/txt
2127−/* typ-584 %txt /tests/golden/types-union-phantom-generic/types/txt
2128−/* src-585 %jibb /tests/golden/types-union-polymorphic-identity/source/jibb
2129−/* tok-585 %txt /tests/golden/types-union-polymorphic-identity/tokens/txt
2130−/* tre-585 %txt /tests/golden/types-union-polymorphic-identity/tree/txt
2131−/* mod-585-1 %jibb /tests/golden/types-union-polymorphic-identity/modules/ui/one/jibb
2132−/* mod-585-2 %jibb /tests/golden/types-union-polymorphic-identity/modules/ui/two/jibb
2133−/* typ-585 %txt /tests/golden/types-union-polymorphic-identity/types/txt
2134−/* mtre-585 %txt /tests/golden/types-union-polymorphic-identity/module-trees/txt
2135−/* src-586 %jibb /tests/golden/types-union-print-cross-namespace/source/jibb
2136−/* tok-586 %txt /tests/golden/types-union-print-cross-namespace/tokens/txt
2137−/* tre-586 %txt /tests/golden/types-union-print-cross-namespace/tree/txt
2138−/* mod-586-1 %jibb /tests/golden/types-union-print-cross-namespace/modules/ui/lib/jibb
2139−/* typ-586 %txt /tests/golden/types-union-print-cross-namespace/types/txt
2140−/* mtre-586 %txt /tests/golden/types-union-print-cross-namespace/module-trees/txt
2141−/* src-587 %jibb /tests/golden/types-union-print-distinct/source/jibb
2142−/* tok-587 %txt /tests/golden/types-union-print-distinct/tokens/txt
2143−/* tre-587 %txt /tests/golden/types-union-print-distinct/tree/txt
2144−/* mod-587-1 %jibb /tests/golden/types-union-print-distinct/modules/ui/left/jibb
2145−/* mod-587-2 %jibb /tests/golden/types-union-print-distinct/modules/ui/right/jibb
2146−/* mod-587-3 %jibb /tests/golden/types-union-print-distinct/modules/ui/twin/jibb
2147−/* typ-587 %txt /tests/golden/types-union-print-distinct/types/txt
2148−/* mtre-587 %txt /tests/golden/types-union-print-distinct/module-trees/txt
2149−/* src-588 %jibb /tests/golden/types-union-print-escape/source/jibb
2150−/* tok-588 %txt /tests/golden/types-union-print-escape/tokens/txt
2151−/* tre-588 %txt /tests/golden/types-union-print-escape/tree/txt
2152−/* typ-588 %txt /tests/golden/types-union-print-escape/types/txt
2153−/* src-589 %jibb /tests/golden/types-union-print-local/source/jibb
2154−/* tok-589 %txt /tests/golden/types-union-print-local/tokens/txt
2155−/* tre-589 %txt /tests/golden/types-union-print-local/tree/txt
2156−/* typ-589 %txt /tests/golden/types-union-print-local/types/txt
2157−/* src-590 %jibb /tests/golden/types-union-print-nested/source/jibb
2158−/* tok-590 %txt /tests/golden/types-union-print-nested/tokens/txt
2159−/* tre-590 %txt /tests/golden/types-union-print-nested/tree/txt
2160−/* typ-590 %txt /tests/golden/types-union-print-nested/types/txt
2161−/* src-591 %jibb /tests/golden/types-union-print-same-origin/source/jibb
2162−/* tok-591 %txt /tests/golden/types-union-print-same-origin/tokens/txt
2163−/* tre-591 %txt /tests/golden/types-union-print-same-origin/tree/txt
2164−/* mod-591-1 %jibb /tests/golden/types-union-print-same-origin/modules/ui/shared/jibb
2165−/* typ-591 %txt /tests/golden/types-union-print-same-origin/types/txt
2166−/* mtre-591 %txt /tests/golden/types-union-print-same-origin/module-trees/txt
2167−/* src-592 %jibb /tests/golden/types-union-print-transitive/source/jibb
2168−/* tok-592 %txt /tests/golden/types-union-print-transitive/tokens/txt
2169−/* tre-592 %txt /tests/golden/types-union-print-transitive/tree/txt
2170−/* mod-592-1 %jibb /tests/golden/types-union-print-transitive/modules/ui/mid/jibb
2171−/* mod-592-2 %jibb /tests/golden/types-union-print-transitive/modules/ui/base/jibb
2172−/* typ-592 %txt /tests/golden/types-union-print-transitive/types/txt
2173−/* mtre-592 %txt /tests/golden/types-union-print-transitive/module-trees/txt
2174−/* src-593 %jibb /tests/golden/types-union-singleton/source/jibb
2175−/* tok-593 %txt /tests/golden/types-union-singleton/tokens/txt
2176−/* tre-593 %txt /tests/golden/types-union-singleton/tree/txt
2177−/* typ-593 %txt /tests/golden/types-union-singleton/types/txt
2178−/* src-594 %jibb /tests/golden/types-union-tag-atoms/source/jibb
2179−/* tok-594 %txt /tests/golden/types-union-tag-atoms/tokens/txt
2180−/* tre-594 %txt /tests/golden/types-union-tag-atoms/tree/txt
2181−/* typ-594 %txt /tests/golden/types-union-tag-atoms/types/txt
2182−/* src-595 %jibb /tests/golden/types-union-tags/source/jibb
2183−/* tok-595 %txt /tests/golden/types-union-tags/tokens/txt
2184−/* tre-595 %txt /tests/golden/types-union-tags/tree/txt
2185−/* typ-595 %txt /tests/golden/types-union-tags/types/txt
2186−/* src-596 %jibb /tests/golden/types-union-unresolved/source/jibb
2187−/* tok-596 %txt /tests/golden/types-union-unresolved/tokens/txt
2188−/* tre-596 %txt /tests/golden/types-union-unresolved/tree/txt
2189−/* typ-596 %txt /tests/golden/types-union-unresolved/types/txt
2190−/* src-597 %jibb /tests/golden/types-union-unresolved-flow/source/jibb
2191−/* tok-597 %txt /tests/golden/types-union-unresolved-flow/tokens/txt
2192−/* tre-597 %txt /tests/golden/types-union-unresolved-flow/tree/txt
2193−/* typ-597 %txt /tests/golden/types-union-unresolved-flow/types/txt
2194−/* src-598 %jibb /tests/golden/types-unit-construction/source/jibb
2195−/* tok-598 %txt /tests/golden/types-unit-construction/tokens/txt
2196−/* tre-598 %txt /tests/golden/types-unit-construction/tree/txt
2197−/* typ-598 %txt /tests/golden/types-unit-construction/types/txt
2198−/* src-599 %jibb /tests/golden/types-unit-context/source/jibb
2199−/* tok-599 %txt /tests/golden/types-unit-context/tokens/txt
2200−/* tre-599 %txt /tests/golden/types-unit-context/tree/txt
2201−/* typ-599 %txt /tests/golden/types-unit-context/types/txt
2202−/* src-600 %jibb /tests/golden/types-unit-patterns/source/jibb
2203−/* tok-600 %txt /tests/golden/types-unit-patterns/tokens/txt
2204−/* tre-600 %txt /tests/golden/types-unit-patterns/tree/txt
2205−/* typ-600 %txt /tests/golden/types-unit-patterns/types/txt
2206−/* src-601 %jibb /tests/golden/types-value-cycle-shadow/source/jibb
2207−/* tok-601 %txt /tests/golden/types-value-cycle-shadow/tokens/txt
2208−/* tre-601 %txt /tests/golden/types-value-cycle-shadow/tree/txt
2209−/* typ-601 %txt /tests/golden/types-value-cycle-shadow/types/txt
2210−/* src-602 %jibb /tests/golden/types-value-cycle-unsupported/source/jibb
2211−/* tok-602 %txt /tests/golden/types-value-cycle-unsupported/tokens/txt
2212−/* tre-602 %txt /tests/golden/types-value-cycle-unsupported/tree/txt
2213−/* typ-602 %txt /tests/golden/types-value-cycle-unsupported/types/txt
2214−/* src-603 %jibb /tests/golden/types-value-cycles/source/jibb
2215−/* tok-603 %txt /tests/golden/types-value-cycles/tokens/txt
2216−/* tre-603 %txt /tests/golden/types-value-cycles/tree/txt
2217−/* typ-603 %txt /tests/golden/types-value-cycles/types/txt
1844+/* src-519 %jibb /tests/golden/types-prelude-bond/source/jibb
1845+/* tok-519 %txt /tests/golden/types-prelude-bond/tokens/txt
1846+/* tre-519 %txt /tests/golden/types-prelude-bond/tree/txt
1847+/* typ-519 %txt /tests/golden/types-prelude-bond/types/txt
1848+/* src-520 %jibb /tests/golden/types-prelude-cmd/source/jibb
1849+/* tok-520 %txt /tests/golden/types-prelude-cmd/tokens/txt
1850+/* tre-520 %txt /tests/golden/types-prelude-cmd/tree/txt
1851+/* typ-520 %txt /tests/golden/types-prelude-cmd/types/txt
1852+/* src-521 %jibb /tests/golden/types-prelude-direct/source/jibb
1853+/* tok-521 %txt /tests/golden/types-prelude-direct/tokens/txt
1854+/* tre-521 %txt /tests/golden/types-prelude-direct/tree/txt
1855+/* typ-521 %txt /tests/golden/types-prelude-direct/types/txt
1856+/* src-522 %jibb /tests/golden/types-prelude-functional/source/jibb
1857+/* tok-522 %txt /tests/golden/types-prelude-functional/tokens/txt
1858+/* tre-522 %txt /tests/golden/types-prelude-functional/tree/txt
1859+/* typ-522 %txt /tests/golden/types-prelude-functional/types/txt
1860+/* src-523 %jibb /tests/golden/types-prelude-interface/source/jibb
1861+/* tok-523 %txt /tests/golden/types-prelude-interface/tokens/txt
1862+/* tre-523 %txt /tests/golden/types-prelude-interface/tree/txt
1863+/* mod-523-1 %jibb /tests/golden/types-prelude-interface/modules/ui/left/jibb
1864+/* mod-523-2 %jibb /tests/golden/types-prelude-interface/modules/ui/right/jibb
1865+/* typ-523 %txt /tests/golden/types-prelude-interface/types/txt
1866+/* mtre-523 %txt /tests/golden/types-prelude-interface/module-trees/txt
1867+/* src-524 %jibb /tests/golden/types-prelude-list-alias/source/jibb
1868+/* tok-524 %txt /tests/golden/types-prelude-list-alias/tokens/txt
1869+/* tre-524 %txt /tests/golden/types-prelude-list-alias/tree/txt
1870+/* typ-524 %txt /tests/golden/types-prelude-list-alias/types/txt
1871+/* src-525 %jibb /tests/golden/types-prelude-list-functions/source/jibb
1872+/* tok-525 %txt /tests/golden/types-prelude-list-functions/tokens/txt
1873+/* tre-525 %txt /tests/golden/types-prelude-list-functions/tree/txt
1874+/* mod-525-1 %jibb /tests/golden/types-prelude-list-functions/modules/ui/lib/jibb
1875+/* typ-525 %txt /tests/golden/types-prelude-list-functions/types/txt
1876+/* mtre-525 %txt /tests/golden/types-prelude-list-functions/module-trees/txt
1877+/* src-526 %jibb /tests/golden/types-prelude-list-helpers/source/jibb
1878+/* tok-526 %txt /tests/golden/types-prelude-list-helpers/tokens/txt
1879+/* tre-526 %txt /tests/golden/types-prelude-list-helpers/tree/txt
1880+/* typ-526 %txt /tests/golden/types-prelude-list-helpers/types/txt
1881+/* src-527 %jibb /tests/golden/types-prelude-predicates/source/jibb
1882+/* tok-527 %txt /tests/golden/types-prelude-predicates/tokens/txt
1883+/* tre-527 %txt /tests/golden/types-prelude-predicates/tree/txt
1884+/* typ-527 %txt /tests/golden/types-prelude-predicates/types/txt
1885+/* src-528 %jibb /tests/golden/types-prelude-unit-helpers/source/jibb
1886+/* tok-528 %txt /tests/golden/types-prelude-unit-helpers/tokens/txt
1887+/* tre-528 %txt /tests/golden/types-prelude-unit-helpers/tree/txt
1888+/* typ-528 %txt /tests/golden/types-prelude-unit-helpers/types/txt
1889+/* src-529 %jibb /tests/golden/types-record-bound-variable/source/jibb
1890+/* tok-529 %txt /tests/golden/types-record-bound-variable/tokens/txt
1891+/* tre-529 %txt /tests/golden/types-record-bound-variable/tree/txt
1892+/* typ-529 %txt /tests/golden/types-record-bound-variable/types/txt
1893+/* src-530 %jibb /tests/golden/types-record-cast-context/source/jibb
1894+/* tok-530 %txt /tests/golden/types-record-cast-context/tokens/txt
1895+/* tre-530 %txt /tests/golden/types-record-cast-context/tree/txt
1896+/* typ-530 %txt /tests/golden/types-record-cast-context/types/txt
1897+/* src-531 %jibb /tests/golden/types-record-change/source/jibb
1898+/* tok-531 %txt /tests/golden/types-record-change/tokens/txt
1899+/* tre-531 %txt /tests/golden/types-record-change/tree/txt
1900+/* typ-531 %txt /tests/golden/types-record-change/types/txt
1901+/* src-532 %jibb /tests/golden/types-record-change-generic/source/jibb
1902+/* tok-532 %txt /tests/golden/types-record-change-generic/tokens/txt
1903+/* tre-532 %txt /tests/golden/types-record-change-generic/tree/txt
1904+/* typ-532 %txt /tests/golden/types-record-change-generic/types/txt
1905+/* src-533 %jibb /tests/golden/types-record-faces/source/jibb
1906+/* tok-533 %txt /tests/golden/types-record-faces/tokens/txt
1907+/* tre-533 %txt /tests/golden/types-record-faces/tree/txt
1908+/* typ-533 %txt /tests/golden/types-record-faces/types/txt
1909+/* src-534 %jibb /tests/golden/types-record-field-edit-separate/source/jibb
1910+/* tok-534 %txt /tests/golden/types-record-field-edit-separate/tokens/txt
1911+/* tre-534 %txt /tests/golden/types-record-field-edit-separate/tree/txt
1912+/* typ-534 %txt /tests/golden/types-record-field-edit-separate/types/txt
1913+/* src-535 %jibb /tests/golden/types-record-field-expr-duplicate/source/jibb
1914+/* tok-535 %txt /tests/golden/types-record-field-expr-duplicate/tokens/txt
1915+/* tre-535 %txt /tests/golden/types-record-field-expr-duplicate/tree/txt
1916+/* typ-535 %txt /tests/golden/types-record-field-expr-duplicate/types/txt
1917+/* src-536 %jibb /tests/golden/types-record-field-expr-separate/source/jibb
1918+/* tok-536 %txt /tests/golden/types-record-field-expr-separate/tokens/txt
1919+/* tre-536 %txt /tests/golden/types-record-field-expr-separate/tree/txt
1920+/* typ-536 %txt /tests/golden/types-record-field-expr-separate/types/txt
1921+/* src-537 %jibb /tests/golden/types-record-field-module-reachable/source/jibb
1922+/* tok-537 %txt /tests/golden/types-record-field-module-reachable/tokens/txt
1923+/* tre-537 %txt /tests/golden/types-record-field-module-reachable/tree/txt
1924+/* mod-537-1 %jibb /tests/golden/types-record-field-module-reachable/modules/ui/lib/jibb
1925+/* typ-537 %txt /tests/golden/types-record-field-module-reachable/types/txt
1926+/* mtre-537 %txt /tests/golden/types-record-field-module-reachable/module-trees/txt
1927+/* src-538 %jibb /tests/golden/types-record-field-module-unused/source/jibb
1928+/* tok-538 %txt /tests/golden/types-record-field-module-unused/tokens/txt
1929+/* tre-538 %txt /tests/golden/types-record-field-module-unused/tree/txt
1930+/* mod-538-1 %jibb /tests/golden/types-record-field-module-unused/modules/ui/good/jibb
1931+/* mod-538-2 %jibb /tests/golden/types-record-field-module-unused/modules/ui/unused/jibb
1932+/* typ-538 %txt /tests/golden/types-record-field-module-unused/types/txt
1933+/* mtre-538 %txt /tests/golden/types-record-field-module-unused/module-trees/txt
1934+/* src-539 %jibb /tests/golden/types-record-field-nested-mold/source/jibb
1935+/* tok-539 %txt /tests/golden/types-record-field-nested-mold/tokens/txt
1936+/* tre-539 %txt /tests/golden/types-record-field-nested-mold/tree/txt
1937+/* typ-539 %txt /tests/golden/types-record-field-nested-mold/types/txt
1938+/* src-540 %jibb /tests/golden/types-record-field-outer-inner/source/jibb
1939+/* tok-540 %txt /tests/golden/types-record-field-outer-inner/tokens/txt
1940+/* tre-540 %txt /tests/golden/types-record-field-outer-inner/tree/txt
1941+/* typ-540 %txt /tests/golden/types-record-field-outer-inner/types/txt
1942+/* src-541 %jibb /tests/golden/types-record-field-sample-duplicate/source/jibb
1943+/* tok-541 %txt /tests/golden/types-record-field-sample-duplicate/tokens/txt
1944+/* tre-541 %txt /tests/golden/types-record-field-sample-duplicate/tree/txt
1945+/* typ-541 %txt /tests/golden/types-record-field-sample-duplicate/types/txt
1946+/* src-542 %jibb /tests/golden/types-record-field-separate-molds/source/jibb
1947+/* tok-542 %txt /tests/golden/types-record-field-separate-molds/tokens/txt
1948+/* tre-542 %txt /tests/golden/types-record-field-separate-molds/tree/txt
1949+/* typ-542 %txt /tests/golden/types-record-field-separate-molds/types/txt
1950+/* src-543 %jibb /tests/golden/types-record-field-unused-mold/source/jibb
1951+/* tok-543 %txt /tests/golden/types-record-field-unused-mold/tokens/txt
1952+/* tre-543 %txt /tests/golden/types-record-field-unused-mold/tree/txt
1953+/* typ-543 %txt /tests/golden/types-record-field-unused-mold/types/txt
1954+/* src-544 %jibb /tests/golden/types-record-import/source/jibb
1955+/* tok-544 %txt /tests/golden/types-record-import/tokens/txt
1956+/* tre-544 %txt /tests/golden/types-record-import/tree/txt
1957+/* mod-544-1 %jibb /tests/golden/types-record-import/modules/ui/lib/jibb
1958+/* typ-544 %txt /tests/golden/types-record-import/types/txt
1959+/* mtre-544 %txt /tests/golden/types-record-import/module-trees/txt
1960+/* src-545 %jibb /tests/golden/types-record-local-scheme/source/jibb
1961+/* tok-545 %txt /tests/golden/types-record-local-scheme/tokens/txt
1962+/* tre-545 %txt /tests/golden/types-record-local-scheme/tree/txt
1963+/* typ-545 %txt /tests/golden/types-record-local-scheme/types/txt
1964+/* src-546 %jibb /tests/golden/types-record-nested/source/jibb
1965+/* tok-546 %txt /tests/golden/types-record-nested/tokens/txt
1966+/* tre-546 %txt /tests/golden/types-record-nested/tree/txt
1967+/* typ-546 %txt /tests/golden/types-record-nested/types/txt
1968+/* src-547 %jibb /tests/golden/types-record-to-tuple/source/jibb
1969+/* tok-547 %txt /tests/golden/types-record-to-tuple/tokens/txt
1970+/* tre-547 %txt /tests/golden/types-record-to-tuple/tree/txt
1971+/* typ-547 %txt /tests/golden/types-record-to-tuple/types/txt
1972+/* src-548 %jibb /tests/golden/types-recursion-scc-failures/source/jibb
1973+/* tok-548 %txt /tests/golden/types-recursion-scc-failures/tokens/txt
1974+/* tre-548 %txt /tests/golden/types-recursion-scc-failures/tree/txt
1975+/* typ-548 %txt /tests/golden/types-recursion-scc-failures/types/txt
1976+/* src-549 %jibb /tests/golden/types-recursion-scc-groups/source/jibb
1977+/* tok-549 %txt /tests/golden/types-recursion-scc-groups/tokens/txt
1978+/* tre-549 %txt /tests/golden/types-recursion-scc-groups/tree/txt
1979+/* typ-549 %txt /tests/golden/types-recursion-scc-groups/types/txt
1980+/* src-550 %jibb /tests/golden/types-recursion-scc-import/source/jibb
1981+/* tok-550 %txt /tests/golden/types-recursion-scc-import/tokens/txt
1982+/* tre-550 %txt /tests/golden/types-recursion-scc-import/tree/txt
1983+/* mod-550-1 %jibb /tests/golden/types-recursion-scc-import/modules/ui/lib/jibb
1984+/* typ-550 %txt /tests/golden/types-recursion-scc-import/types/txt
1985+/* mtre-550 %txt /tests/golden/types-recursion-scc-import/module-trees/txt
1986+/* src-551 %jibb /tests/golden/types-recursion-scc-import-bad/source/jibb
1987+/* tok-551 %txt /tests/golden/types-recursion-scc-import-bad/tokens/txt
1988+/* tre-551 %txt /tests/golden/types-recursion-scc-import-bad/tree/txt
1989+/* mod-551-1 %jibb /tests/golden/types-recursion-scc-import-bad/modules/ui/lib/jibb
1990+/* typ-551 %txt /tests/golden/types-recursion-scc-import-bad/types/txt
1991+/* mtre-551 %txt /tests/golden/types-recursion-scc-import-bad/module-trees/txt
1992+/* src-552 %jibb /tests/golden/types-recursion-scc-local/source/jibb
1993+/* tok-552 %txt /tests/golden/types-recursion-scc-local/tokens/txt
1994+/* tre-552 %txt /tests/golden/types-recursion-scc-local/tree/txt
1995+/* typ-552 %txt /tests/golden/types-recursion-scc-local/types/txt
1996+/* src-553 %jibb /tests/golden/types-recursion-scc-order/source/jibb
1997+/* tok-553 %txt /tests/golden/types-recursion-scc-order/tokens/txt
1998+/* tre-553 %txt /tests/golden/types-recursion-scc-order/tree/txt
1999+/* typ-553 %txt /tests/golden/types-recursion-scc-order/types/txt
2000+/* src-554 %jibb /tests/golden/types-recursion-scc-shadow/source/jibb
2001+/* tok-554 %txt /tests/golden/types-recursion-scc-shadow/tokens/txt
2002+/* tre-554 %txt /tests/golden/types-recursion-scc-shadow/tree/txt
2003+/* typ-554 %txt /tests/golden/types-recursion-scc-shadow/types/txt
2004+/* src-555 %jibb /tests/golden/types-recursive-branch/source/jibb
2005+/* tok-555 %txt /tests/golden/types-recursive-branch/tokens/txt
2006+/* tre-555 %txt /tests/golden/types-recursive-branch/tree/txt
2007+/* typ-555 %txt /tests/golden/types-recursive-branch/types/txt
2008+/* src-556 %jibb /tests/golden/types-recursive-gate/source/jibb
2009+/* tok-556 %txt /tests/golden/types-recursive-gate/tokens/txt
2010+/* tre-556 %txt /tests/golden/types-recursive-gate/tree/txt
2011+/* typ-556 %txt /tests/golden/types-recursive-gate/types/txt
2012+/* src-557 %jibb /tests/golden/types-recursive-sample/source/jibb
2013+/* tok-557 %txt /tests/golden/types-recursive-sample/tokens/txt
2014+/* tre-557 %txt /tests/golden/types-recursive-sample/tree/txt
2015+/* typ-557 %txt /tests/golden/types-recursive-sample/types/txt
2016+/* src-558 %jibb /tests/golden/types-scope-library-poke/source/jibb
2017+/* tok-558 %txt /tests/golden/types-scope-library-poke/tokens/txt
2018+/* tre-558 %txt /tests/golden/types-scope-library-poke/tree/txt
2019+/* typ-558 %txt /tests/golden/types-scope-library-poke/types/txt
2020+/* src-559 %jibb /tests/golden/types-scope-root-api/source/jibb
2021+/* tok-559 %txt /tests/golden/types-scope-root-api/tokens/txt
2022+/* tre-559 %txt /tests/golden/types-scope-root-api/tree/txt
2023+/* typ-559 %txt /tests/golden/types-scope-root-api/types/txt
2024+/* src-560 %jibb /tests/golden/types-scope-store-duplicate/source/jibb
2025+/* tok-560 %txt /tests/golden/types-scope-store-duplicate/tokens/txt
2026+/* tre-560 %txt /tests/golden/types-scope-store-duplicate/tree/txt
2027+/* typ-560 %txt /tests/golden/types-scope-store-duplicate/types/txt
2028+/* src-561 %jibb /tests/golden/types-scope-store-shadow/source/jibb
2029+/* tok-561 %txt /tests/golden/types-scope-store-shadow/tokens/txt
2030+/* tre-561 %txt /tests/golden/types-scope-store-shadow/tree/txt
2031+/* typ-561 %txt /tests/golden/types-scope-store-shadow/types/txt
2032+/* src-562 %jibb /tests/golden/types-single-case-pattern/source/jibb
2033+/* tok-562 %txt /tests/golden/types-single-case-pattern/tokens/txt
2034+/* tre-562 %txt /tests/golden/types-single-case-pattern/tree/txt
2035+/* typ-562 %txt /tests/golden/types-single-case-pattern/types/txt
2036+/* src-563 %jibb /tests/golden/types-string-interpolation/source/jibb
2037+/* tok-563 %txt /tests/golden/types-string-interpolation/tokens/txt
2038+/* tre-563 %txt /tests/golden/types-string-interpolation/tree/txt
2039+/* typ-563 %txt /tests/golden/types-string-interpolation/types/txt
2040+/* src-564 %jibb /tests/golden/types-tuple-context/source/jibb
2041+/* tok-564 %txt /tests/golden/types-tuple-context/tokens/txt
2042+/* tre-564 %txt /tests/golden/types-tuple-context/tree/txt
2043+/* typ-564 %txt /tests/golden/types-tuple-context/types/txt
2044+/* src-565 %jibb /tests/golden/types-tuple-context-nested/source/jibb
2045+/* tok-565 %txt /tests/golden/types-tuple-context-nested/tokens/txt
2046+/* tre-565 %txt /tests/golden/types-tuple-context-nested/tree/txt
2047+/* typ-565 %txt /tests/golden/types-tuple-context-nested/types/txt
2048+/* src-566 %jibb /tests/golden/types-union-alias/source/jibb
2049+/* tok-566 %txt /tests/golden/types-union-alias/tokens/txt
2050+/* tre-566 %txt /tests/golden/types-union-alias/tree/txt
2051+/* typ-566 %txt /tests/golden/types-union-alias/types/txt
2052+/* src-567 %jibb /tests/golden/types-union-branch-context/source/jibb
2053+/* tok-567 %txt /tests/golden/types-union-branch-context/tokens/txt
2054+/* tre-567 %txt /tests/golden/types-union-branch-context/tree/txt
2055+/* typ-567 %txt /tests/golden/types-union-branch-context/types/txt
2056+/* src-568 %jibb /tests/golden/types-union-branch-pending/source/jibb
2057+/* tok-568 %txt /tests/golden/types-union-branch-pending/tokens/txt
2058+/* tre-568 %txt /tests/golden/types-union-branch-pending/tree/txt
2059+/* typ-568 %txt /tests/golden/types-union-branch-pending/types/txt
2060+/* src-569 %jibb /tests/golden/types-union-constructor-shape/source/jibb
2061+/* tok-569 %txt /tests/golden/types-union-constructor-shape/tokens/txt
2062+/* tre-569 %txt /tests/golden/types-union-constructor-shape/tree/txt
2063+/* typ-569 %txt /tests/golden/types-union-constructor-shape/types/txt
2064+/* src-570 %jibb /tests/golden/types-union-context-flow/source/jibb
2065+/* tok-570 %txt /tests/golden/types-union-context-flow/tokens/txt
2066+/* tre-570 %txt /tests/golden/types-union-context-flow/tree/txt
2067+/* typ-570 %txt /tests/golden/types-union-context-flow/types/txt
2068+/* src-571 %jibb /tests/golden/types-union-finite/source/jibb
2069+/* tok-571 %txt /tests/golden/types-union-finite/tokens/txt
2070+/* tre-571 %txt /tests/golden/types-union-finite/tree/txt
2071+/* typ-571 %txt /tests/golden/types-union-finite/types/txt
2072+/* src-572 %jibb /tests/golden/types-union-finite-context/source/jibb
2073+/* tok-572 %txt /tests/golden/types-union-finite-context/tokens/txt
2074+/* tre-572 %txt /tests/golden/types-union-finite-context/tree/txt
2075+/* typ-572 %txt /tests/golden/types-union-finite-context/types/txt
2076+/* src-573 %jibb /tests/golden/types-union-finite-generic/source/jibb
2077+/* tok-573 %txt /tests/golden/types-union-finite-generic/tokens/txt
2078+/* tre-573 %txt /tests/golden/types-union-finite-generic/tree/txt
2079+/* typ-573 %txt /tests/golden/types-union-finite-generic/types/txt
2080+/* src-574 %jibb /tests/golden/types-union-finite-limit/source/jibb
2081+/* tok-574 %txt /tests/golden/types-union-finite-limit/tokens/txt
2082+/* tre-574 %txt /tests/golden/types-union-finite-limit/tree/txt
2083+/* typ-574 %txt /tests/golden/types-union-finite-limit/types/txt
2084+/* src-575 %jibb /tests/golden/types-union-import/source/jibb
2085+/* tok-575 %txt /tests/golden/types-union-import/tokens/txt
2086+/* tre-575 %txt /tests/golden/types-union-import/tree/txt
2087+/* mod-575-1 %jibb /tests/golden/types-union-import/modules/ui/lib/jibb
2088+/* typ-575 %txt /tests/golden/types-union-import/types/txt
2089+/* mtre-575 %txt /tests/golden/types-union-import/module-trees/txt
2090+/* src-576 %jibb /tests/golden/types-union-local-pending/source/jibb
2091+/* tok-576 %txt /tests/golden/types-union-local-pending/tokens/txt
2092+/* tre-576 %txt /tests/golden/types-union-local-pending/tree/txt
2093+/* typ-576 %txt /tests/golden/types-union-local-pending/types/txt
2094+/* src-577 %jibb /tests/golden/types-union-nonwing-subject/source/jibb
2095+/* tok-577 %txt /tests/golden/types-union-nonwing-subject/tokens/txt
2096+/* tre-577 %txt /tests/golden/types-union-nonwing-subject/tree/txt
2097+/* typ-577 %txt /tests/golden/types-union-nonwing-subject/types/txt
2098+/* src-578 %jibb /tests/golden/types-union-overlap/source/jibb
2099+/* tok-578 %txt /tests/golden/types-union-overlap/tokens/txt
2100+/* tre-578 %txt /tests/golden/types-union-overlap/tree/txt
2101+/* typ-578 %txt /tests/golden/types-union-overlap/types/txt
2102+/* src-579 %jibb /tests/golden/types-union-overlap-nested/source/jibb
2103+/* tok-579 %txt /tests/golden/types-union-overlap-nested/tokens/txt
2104+/* tre-579 %txt /tests/golden/types-union-overlap-nested/tree/txt
2105+/* typ-579 %txt /tests/golden/types-union-overlap-nested/types/txt
2106+/* src-580 %jibb /tests/golden/types-union-pattern-result-context/source/jibb
2107+/* tok-580 %txt /tests/golden/types-union-pattern-result-context/tokens/txt
2108+/* tre-580 %txt /tests/golden/types-union-pattern-result-context/tree/txt
2109+/* typ-580 %txt /tests/golden/types-union-pattern-result-context/types/txt
2110+/* src-581 %jibb /tests/golden/types-union-pattern-result-controls/source/jibb
2111+/* tok-581 %txt /tests/golden/types-union-pattern-result-controls/tokens/txt
2112+/* tre-581 %txt /tests/golden/types-union-pattern-result-controls/tree/txt
2113+/* typ-581 %txt /tests/golden/types-union-pattern-result-controls/types/txt
2114+/* src-582 %jibb /tests/golden/types-union-patterns/source/jibb
2115+/* tok-582 %txt /tests/golden/types-union-patterns/tokens/txt
2116+/* tre-582 %txt /tests/golden/types-union-patterns/tree/txt
2117+/* typ-582 %txt /tests/golden/types-union-patterns/types/txt
2118+/* src-583 %jibb /tests/golden/types-union-patterns-generic/source/jibb
2119+/* tok-583 %txt /tests/golden/types-union-patterns-generic/tokens/txt
2120+/* tre-583 %txt /tests/golden/types-union-patterns-generic/tree/txt
2121+/* typ-583 %txt /tests/golden/types-union-patterns-generic/types/txt
2122+/* src-584 %jibb /tests/golden/types-union-patterns-import/source/jibb
2123+/* tok-584 %txt /tests/golden/types-union-patterns-import/tokens/txt
2124+/* tre-584 %txt /tests/golden/types-union-patterns-import/tree/txt
2125+/* mod-584-1 %jibb /tests/golden/types-union-patterns-import/modules/ui/lib/jibb
2126+/* typ-584 %txt /tests/golden/types-union-patterns-import/types/txt
2127+/* mtre-584 %txt /tests/golden/types-union-patterns-import/module-trees/txt
2128+/* src-585 %jibb /tests/golden/types-union-phantom-generic/source/jibb
2129+/* tok-585 %txt /tests/golden/types-union-phantom-generic/tokens/txt
2130+/* tre-585 %txt /tests/golden/types-union-phantom-generic/tree/txt
2131+/* typ-585 %txt /tests/golden/types-union-phantom-generic/types/txt
2132+/* src-586 %jibb /tests/golden/types-union-polymorphic-identity/source/jibb
2133+/* tok-586 %txt /tests/golden/types-union-polymorphic-identity/tokens/txt
2134+/* tre-586 %txt /tests/golden/types-union-polymorphic-identity/tree/txt
2135+/* mod-586-1 %jibb /tests/golden/types-union-polymorphic-identity/modules/ui/one/jibb
2136+/* mod-586-2 %jibb /tests/golden/types-union-polymorphic-identity/modules/ui/two/jibb
2137+/* typ-586 %txt /tests/golden/types-union-polymorphic-identity/types/txt
2138+/* mtre-586 %txt /tests/golden/types-union-polymorphic-identity/module-trees/txt
2139+/* src-587 %jibb /tests/golden/types-union-print-cross-namespace/source/jibb
2140+/* tok-587 %txt /tests/golden/types-union-print-cross-namespace/tokens/txt
2141+/* tre-587 %txt /tests/golden/types-union-print-cross-namespace/tree/txt
2142+/* mod-587-1 %jibb /tests/golden/types-union-print-cross-namespace/modules/ui/lib/jibb
2143+/* typ-587 %txt /tests/golden/types-union-print-cross-namespace/types/txt
2144+/* mtre-587 %txt /tests/golden/types-union-print-cross-namespace/module-trees/txt
2145+/* src-588 %jibb /tests/golden/types-union-print-distinct/source/jibb
2146+/* tok-588 %txt /tests/golden/types-union-print-distinct/tokens/txt
2147+/* tre-588 %txt /tests/golden/types-union-print-distinct/tree/txt
2148+/* mod-588-1 %jibb /tests/golden/types-union-print-distinct/modules/ui/left/jibb
2149+/* mod-588-2 %jibb /tests/golden/types-union-print-distinct/modules/ui/right/jibb
2150+/* mod-588-3 %jibb /tests/golden/types-union-print-distinct/modules/ui/twin/jibb
2151+/* typ-588 %txt /tests/golden/types-union-print-distinct/types/txt
2152+/* mtre-588 %txt /tests/golden/types-union-print-distinct/module-trees/txt
2153+/* src-589 %jibb /tests/golden/types-union-print-escape/source/jibb
2154+/* tok-589 %txt /tests/golden/types-union-print-escape/tokens/txt
2155+/* tre-589 %txt /tests/golden/types-union-print-escape/tree/txt
2156+/* typ-589 %txt /tests/golden/types-union-print-escape/types/txt
2157+/* src-590 %jibb /tests/golden/types-union-print-local/source/jibb
2158+/* tok-590 %txt /tests/golden/types-union-print-local/tokens/txt
2159+/* tre-590 %txt /tests/golden/types-union-print-local/tree/txt
2160+/* typ-590 %txt /tests/golden/types-union-print-local/types/txt
2161+/* src-591 %jibb /tests/golden/types-union-print-nested/source/jibb
2162+/* tok-591 %txt /tests/golden/types-union-print-nested/tokens/txt
2163+/* tre-591 %txt /tests/golden/types-union-print-nested/tree/txt
2164+/* typ-591 %txt /tests/golden/types-union-print-nested/types/txt
2165+/* src-592 %jibb /tests/golden/types-union-print-same-origin/source/jibb
2166+/* tok-592 %txt /tests/golden/types-union-print-same-origin/tokens/txt
2167+/* tre-592 %txt /tests/golden/types-union-print-same-origin/tree/txt
2168+/* mod-592-1 %jibb /tests/golden/types-union-print-same-origin/modules/ui/shared/jibb
2169+/* typ-592 %txt /tests/golden/types-union-print-same-origin/types/txt
2170+/* mtre-592 %txt /tests/golden/types-union-print-same-origin/module-trees/txt
2171+/* src-593 %jibb /tests/golden/types-union-print-transitive/source/jibb
2172+/* tok-593 %txt /tests/golden/types-union-print-transitive/tokens/txt
2173+/* tre-593 %txt /tests/golden/types-union-print-transitive/tree/txt
2174+/* mod-593-1 %jibb /tests/golden/types-union-print-transitive/modules/ui/mid/jibb
2175+/* mod-593-2 %jibb /tests/golden/types-union-print-transitive/modules/ui/base/jibb
2176+/* typ-593 %txt /tests/golden/types-union-print-transitive/types/txt
2177+/* mtre-593 %txt /tests/golden/types-union-print-transitive/module-trees/txt
2178+/* src-594 %jibb /tests/golden/types-union-singleton/source/jibb
2179+/* tok-594 %txt /tests/golden/types-union-singleton/tokens/txt
2180+/* tre-594 %txt /tests/golden/types-union-singleton/tree/txt
2181+/* typ-594 %txt /tests/golden/types-union-singleton/types/txt
2182+/* src-595 %jibb /tests/golden/types-union-tag-atoms/source/jibb
2183+/* tok-595 %txt /tests/golden/types-union-tag-atoms/tokens/txt
2184+/* tre-595 %txt /tests/golden/types-union-tag-atoms/tree/txt
2185+/* typ-595 %txt /tests/golden/types-union-tag-atoms/types/txt
2186+/* src-596 %jibb /tests/golden/types-union-tags/source/jibb
2187+/* tok-596 %txt /tests/golden/types-union-tags/tokens/txt
2188+/* tre-596 %txt /tests/golden/types-union-tags/tree/txt
2189+/* typ-596 %txt /tests/golden/types-union-tags/types/txt
2190+/* src-597 %jibb /tests/golden/types-union-unresolved/source/jibb
2191+/* tok-597 %txt /tests/golden/types-union-unresolved/tokens/txt
2192+/* tre-597 %txt /tests/golden/types-union-unresolved/tree/txt
2193+/* typ-597 %txt /tests/golden/types-union-unresolved/types/txt
2194+/* src-598 %jibb /tests/golden/types-union-unresolved-flow/source/jibb
2195+/* tok-598 %txt /tests/golden/types-union-unresolved-flow/tokens/txt
2196+/* tre-598 %txt /tests/golden/types-union-unresolved-flow/tree/txt
2197+/* typ-598 %txt /tests/golden/types-union-unresolved-flow/types/txt
2198+/* src-599 %jibb /tests/golden/types-unit-construction/source/jibb
2199+/* tok-599 %txt /tests/golden/types-unit-construction/tokens/txt
2200+/* tre-599 %txt /tests/golden/types-unit-construction/tree/txt
2201+/* typ-599 %txt /tests/golden/types-unit-construction/types/txt
2202+/* src-600 %jibb /tests/golden/types-unit-context/source/jibb
2203+/* tok-600 %txt /tests/golden/types-unit-context/tokens/txt
2204+/* tre-600 %txt /tests/golden/types-unit-context/tree/txt
2205+/* typ-600 %txt /tests/golden/types-unit-context/types/txt
2206+/* src-601 %jibb /tests/golden/types-unit-patterns/source/jibb
2207+/* tok-601 %txt /tests/golden/types-unit-patterns/tokens/txt
2208+/* tre-601 %txt /tests/golden/types-unit-patterns/tree/txt
2209+/* typ-601 %txt /tests/golden/types-unit-patterns/types/txt
2210+/* src-602 %jibb /tests/golden/types-value-cycle-shadow/source/jibb
2211+/* tok-602 %txt /tests/golden/types-value-cycle-shadow/tokens/txt
2212+/* tre-602 %txt /tests/golden/types-value-cycle-shadow/tree/txt
2213+/* typ-602 %txt /tests/golden/types-value-cycle-shadow/types/txt
2214+/* src-603 %jibb /tests/golden/types-value-cycle-unsupported/source/jibb
2215+/* tok-603 %txt /tests/golden/types-value-cycle-unsupported/tokens/txt
2216+/* tre-603 %txt /tests/golden/types-value-cycle-unsupported/tree/txt
2217+/* typ-603 %txt /tests/golden/types-value-cycle-unsupported/types/txt
2218+/* src-604 %jibb /tests/golden/types-value-cycles/source/jibb
2219+/* tok-604 %txt /tests/golden/types-value-cycles/tokens/txt
2220+/* tre-604 %txt /tests/golden/types-value-cycles/tree/txt
2221+/* typ-604 %txt /tests/golden/types-value-cycles/types/txt
22182222=/ prepared-prelude (prepare-prelude-with-internal:jibb prelude-source internal-source)
22192223|%
22202224:: one arm per case
@@ -3255,176 +3259,178 @@
32553259 (weld (check ~.types-partial-unresolved-tag src-517 `tok-517 `tre-517) (check-types ~.types-partial-unresolved-tag ~[%tests %golden ~.types-partial-unresolved-tag %source %jibb] src-517 `typ-517))
32563260++ test-types-prelude-arithmetic
32573261 (weld (check ~.types-prelude-arithmetic src-518 `tok-518 `tre-518) (check-module-types ~.types-prelude-arithmetic ~[%tests %golden ~.types-prelude-arithmetic %source %jibb] src-518 `typ-518 ~ ~ ~))
3262+++ test-types-prelude-bond
3263+ (weld (check ~.types-prelude-bond src-519 `tok-519 `tre-519) (check-module-types ~.types-prelude-bond ~[%tests %golden ~.types-prelude-bond %source %jibb] src-519 `typ-519 ~ ~ ~))
32583264++ test-types-prelude-cmd
3259− (weld (check ~.types-prelude-cmd src-519 `tok-519 `tre-519) (check-module-types ~.types-prelude-cmd ~[%tests %golden ~.types-prelude-cmd %source %jibb] src-519 `typ-519 ~ ~ ~))
3265+ (weld (check ~.types-prelude-cmd src-520 `tok-520 `tre-520) (check-module-types ~.types-prelude-cmd ~[%tests %golden ~.types-prelude-cmd %source %jibb] src-520 `typ-520 ~ ~ ~))
32603266++ test-types-prelude-direct
3261− (weld (check ~.types-prelude-direct src-520 `tok-520 `tre-520) (check-module-types ~.types-prelude-direct ~[%tests %golden ~.types-prelude-direct %source %jibb] src-520 `typ-520 ~ ~ ~))
3267+ (weld (check ~.types-prelude-direct src-521 `tok-521 `tre-521) (check-module-types ~.types-prelude-direct ~[%tests %golden ~.types-prelude-direct %source %jibb] src-521 `typ-521 ~ ~ ~))
32623268++ test-types-prelude-functional
3263− (weld (check ~.types-prelude-functional src-521 `tok-521 `tre-521) (check-module-types ~.types-prelude-functional ~[%tests %golden ~.types-prelude-functional %source %jibb] src-521 `typ-521 ~ ~ ~))
3269+ (weld (check ~.types-prelude-functional src-522 `tok-522 `tre-522) (check-module-types ~.types-prelude-functional ~[%tests %golden ~.types-prelude-functional %source %jibb] src-522 `typ-522 ~ ~ ~))
32643270++ test-types-prelude-interface
3265− (weld (weld (check ~.types-prelude-interface src-522 `tok-522 `tre-522) (check-module-types ~.types-prelude-interface ~[%tests %golden ~.types-prelude-interface %source %jibb] src-522 `typ-522 ~ ~ ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-522-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-522-2]])) (check-module-trees ~.types-prelude-interface `mtre-522 ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-522-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-522-2]]))
3271+ (weld (weld (check ~.types-prelude-interface src-523 `tok-523 `tre-523) (check-module-types ~.types-prelude-interface ~[%tests %golden ~.types-prelude-interface %source %jibb] src-523 `typ-523 ~ ~ ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-523-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-523-2]])) (check-module-trees ~.types-prelude-interface `mtre-523 ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-523-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-523-2]]))
32663272++ test-types-prelude-list-alias
3267− (weld (check ~.types-prelude-list-alias src-523 `tok-523 `tre-523) (check-module-types ~.types-prelude-list-alias ~[%tests %golden ~.types-prelude-list-alias %source %jibb] src-523 `typ-523 ~ ~ ~))
3273+ (weld (check ~.types-prelude-list-alias src-524 `tok-524 `tre-524) (check-module-types ~.types-prelude-list-alias ~[%tests %golden ~.types-prelude-list-alias %source %jibb] src-524 `typ-524 ~ ~ ~))
32683274++ test-types-prelude-list-functions
3269− (weld (weld (check ~.types-prelude-list-functions src-524 `tok-524 `tre-524) (check-module-types ~.types-prelude-list-functions ~[%tests %golden ~.types-prelude-list-functions %source %jibb] src-524 `typ-524 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-524-1]])) (check-module-trees ~.types-prelude-list-functions `mtre-524 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-524-1]]))
3275+ (weld (weld (check ~.types-prelude-list-functions src-525 `tok-525 `tre-525) (check-module-types ~.types-prelude-list-functions ~[%tests %golden ~.types-prelude-list-functions %source %jibb] src-525 `typ-525 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-525-1]])) (check-module-trees ~.types-prelude-list-functions `mtre-525 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-525-1]]))
32703276++ test-types-prelude-list-helpers
3271− (weld (check ~.types-prelude-list-helpers src-525 `tok-525 `tre-525) (check-module-types ~.types-prelude-list-helpers ~[%tests %golden ~.types-prelude-list-helpers %source %jibb] src-525 `typ-525 ~ ~ ~))
3277+ (weld (check ~.types-prelude-list-helpers src-526 `tok-526 `tre-526) (check-module-types ~.types-prelude-list-helpers ~[%tests %golden ~.types-prelude-list-helpers %source %jibb] src-526 `typ-526 ~ ~ ~))
32723278++ test-types-prelude-predicates
3273− (weld (check ~.types-prelude-predicates src-526 `tok-526 `tre-526) (check-module-types ~.types-prelude-predicates ~[%tests %golden ~.types-prelude-predicates %source %jibb] src-526 `typ-526 ~ ~ ~))
3279+ (weld (check ~.types-prelude-predicates src-527 `tok-527 `tre-527) (check-module-types ~.types-prelude-predicates ~[%tests %golden ~.types-prelude-predicates %source %jibb] src-527 `typ-527 ~ ~ ~))
32743280++ test-types-prelude-unit-helpers
3275− (weld (check ~.types-prelude-unit-helpers src-527 `tok-527 `tre-527) (check-module-types ~.types-prelude-unit-helpers ~[%tests %golden ~.types-prelude-unit-helpers %source %jibb] src-527 `typ-527 ~ ~ ~))
3281+ (weld (check ~.types-prelude-unit-helpers src-528 `tok-528 `tre-528) (check-module-types ~.types-prelude-unit-helpers ~[%tests %golden ~.types-prelude-unit-helpers %source %jibb] src-528 `typ-528 ~ ~ ~))
32763282++ test-types-record-bound-variable
3277− (weld (check ~.types-record-bound-variable src-528 `tok-528 `tre-528) (check-types ~.types-record-bound-variable ~[%tests %golden ~.types-record-bound-variable %source %jibb] src-528 `typ-528))
3283+ (weld (check ~.types-record-bound-variable src-529 `tok-529 `tre-529) (check-types ~.types-record-bound-variable ~[%tests %golden ~.types-record-bound-variable %source %jibb] src-529 `typ-529))
32783284++ test-types-record-cast-context
3279− (weld (check ~.types-record-cast-context src-529 `tok-529 `tre-529) (check-module-types ~.types-record-cast-context ~[%tests %golden ~.types-record-cast-context %source %jibb] src-529 `typ-529 ~ ~ ~))
3285+ (weld (check ~.types-record-cast-context src-530 `tok-530 `tre-530) (check-module-types ~.types-record-cast-context ~[%tests %golden ~.types-record-cast-context %source %jibb] src-530 `typ-530 ~ ~ ~))
32803286++ test-types-record-change
3281− (weld (check ~.types-record-change src-530 `tok-530 `tre-530) (check-module-types ~.types-record-change ~[%tests %golden ~.types-record-change %source %jibb] src-530 `typ-530 ~ ~ ~))
3287+ (weld (check ~.types-record-change src-531 `tok-531 `tre-531) (check-module-types ~.types-record-change ~[%tests %golden ~.types-record-change %source %jibb] src-531 `typ-531 ~ ~ ~))
32823288++ test-types-record-change-generic
3283− (weld (check ~.types-record-change-generic src-531 `tok-531 `tre-531) (check-module-types ~.types-record-change-generic ~[%tests %golden ~.types-record-change-generic %source %jibb] src-531 `typ-531 ~ ~ ~))
3289+ (weld (check ~.types-record-change-generic src-532 `tok-532 `tre-532) (check-module-types ~.types-record-change-generic ~[%tests %golden ~.types-record-change-generic %source %jibb] src-532 `typ-532 ~ ~ ~))
32843290++ test-types-record-faces
3285− (weld (check ~.types-record-faces src-532 `tok-532 `tre-532) (check-types ~.types-record-faces ~[%tests %golden ~.types-record-faces %source %jibb] src-532 `typ-532))
3291+ (weld (check ~.types-record-faces src-533 `tok-533 `tre-533) (check-types ~.types-record-faces ~[%tests %golden ~.types-record-faces %source %jibb] src-533 `typ-533))
32863292++ test-types-record-field-edit-separate
3287− (weld (check ~.types-record-field-edit-separate src-533 `tok-533 `tre-533) (check-types ~.types-record-field-edit-separate ~[%tests %golden ~.types-record-field-edit-separate %source %jibb] src-533 `typ-533))
3293+ (weld (check ~.types-record-field-edit-separate src-534 `tok-534 `tre-534) (check-types ~.types-record-field-edit-separate ~[%tests %golden ~.types-record-field-edit-separate %source %jibb] src-534 `typ-534))
32883294++ test-types-record-field-expr-duplicate
3289− (weld (check ~.types-record-field-expr-duplicate src-534 `tok-534 `tre-534) (check-types ~.types-record-field-expr-duplicate ~[%tests %golden ~.types-record-field-expr-duplicate %source %jibb] src-534 `typ-534))
3295+ (weld (check ~.types-record-field-expr-duplicate src-535 `tok-535 `tre-535) (check-types ~.types-record-field-expr-duplicate ~[%tests %golden ~.types-record-field-expr-duplicate %source %jibb] src-535 `typ-535))
32903296++ test-types-record-field-expr-separate
3291− (weld (check ~.types-record-field-expr-separate src-535 `tok-535 `tre-535) (check-types ~.types-record-field-expr-separate ~[%tests %golden ~.types-record-field-expr-separate %source %jibb] src-535 `typ-535))
3297+ (weld (check ~.types-record-field-expr-separate src-536 `tok-536 `tre-536) (check-types ~.types-record-field-expr-separate ~[%tests %golden ~.types-record-field-expr-separate %source %jibb] src-536 `typ-536))
32923298++ test-types-record-field-module-reachable
3293− (weld (weld (check ~.types-record-field-module-reachable src-536 `tok-536 `tre-536) (check-module-types ~.types-record-field-module-reachable ~[%tests %golden ~.types-record-field-module-reachable %source %jibb] src-536 `typ-536 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-536-1]])) (check-module-trees ~.types-record-field-module-reachable `mtre-536 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-536-1]]))
3299+ (weld (weld (check ~.types-record-field-module-reachable src-537 `tok-537 `tre-537) (check-module-types ~.types-record-field-module-reachable ~[%tests %golden ~.types-record-field-module-reachable %source %jibb] src-537 `typ-537 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-537-1]])) (check-module-trees ~.types-record-field-module-reachable `mtre-537 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-537-1]]))
32943300++ test-types-record-field-module-unused
3295− (weld (weld (check ~.types-record-field-module-unused src-537 `tok-537 `tre-537) (check-module-types ~.types-record-field-module-unused ~[%tests %golden ~.types-record-field-module-unused %source %jibb] src-537 `typ-537 ~ ~ ~[['/ui/good.jibb' ~[~.ui ~.good ~.jibb] mod-537-1] ['/ui/unused.jibb' ~[~.ui ~.unused ~.jibb] mod-537-2]])) (check-module-trees ~.types-record-field-module-unused `mtre-537 ~[['/ui/good.jibb' ~[~.ui ~.good ~.jibb] mod-537-1] ['/ui/unused.jibb' ~[~.ui ~.unused ~.jibb] mod-537-2]]))
3301+ (weld (weld (check ~.types-record-field-module-unused src-538 `tok-538 `tre-538) (check-module-types ~.types-record-field-module-unused ~[%tests %golden ~.types-record-field-module-unused %source %jibb] src-538 `typ-538 ~ ~ ~[['/ui/good.jibb' ~[~.ui ~.good ~.jibb] mod-538-1] ['/ui/unused.jibb' ~[~.ui ~.unused ~.jibb] mod-538-2]])) (check-module-trees ~.types-record-field-module-unused `mtre-538 ~[['/ui/good.jibb' ~[~.ui ~.good ~.jibb] mod-538-1] ['/ui/unused.jibb' ~[~.ui ~.unused ~.jibb] mod-538-2]]))
32963302++ test-types-record-field-nested-mold
3297− (weld (check ~.types-record-field-nested-mold src-538 `tok-538 `tre-538) (check-types ~.types-record-field-nested-mold ~[%tests %golden ~.types-record-field-nested-mold %source %jibb] src-538 `typ-538))
3303+ (weld (check ~.types-record-field-nested-mold src-539 `tok-539 `tre-539) (check-types ~.types-record-field-nested-mold ~[%tests %golden ~.types-record-field-nested-mold %source %jibb] src-539 `typ-539))
32983304++ test-types-record-field-outer-inner
3299− (weld (check ~.types-record-field-outer-inner src-539 `tok-539 `tre-539) (check-types ~.types-record-field-outer-inner ~[%tests %golden ~.types-record-field-outer-inner %source %jibb] src-539 `typ-539))
3305+ (weld (check ~.types-record-field-outer-inner src-540 `tok-540 `tre-540) (check-types ~.types-record-field-outer-inner ~[%tests %golden ~.types-record-field-outer-inner %source %jibb] src-540 `typ-540))
33003306++ test-types-record-field-sample-duplicate
3301− (weld (check ~.types-record-field-sample-duplicate src-540 `tok-540 `tre-540) (check-types ~.types-record-field-sample-duplicate ~[%tests %golden ~.types-record-field-sample-duplicate %source %jibb] src-540 `typ-540))
3307+ (weld (check ~.types-record-field-sample-duplicate src-541 `tok-541 `tre-541) (check-types ~.types-record-field-sample-duplicate ~[%tests %golden ~.types-record-field-sample-duplicate %source %jibb] src-541 `typ-541))
33023308++ test-types-record-field-separate-molds
3303− (weld (check ~.types-record-field-separate-molds src-541 `tok-541 `tre-541) (check-types ~.types-record-field-separate-molds ~[%tests %golden ~.types-record-field-separate-molds %source %jibb] src-541 `typ-541))
3309+ (weld (check ~.types-record-field-separate-molds src-542 `tok-542 `tre-542) (check-types ~.types-record-field-separate-molds ~[%tests %golden ~.types-record-field-separate-molds %source %jibb] src-542 `typ-542))
33043310++ test-types-record-field-unused-mold
3305− (weld (check ~.types-record-field-unused-mold src-542 `tok-542 `tre-542) (check-types ~.types-record-field-unused-mold ~[%tests %golden ~.types-record-field-unused-mold %source %jibb] src-542 `typ-542))
3311+ (weld (check ~.types-record-field-unused-mold src-543 `tok-543 `tre-543) (check-types ~.types-record-field-unused-mold ~[%tests %golden ~.types-record-field-unused-mold %source %jibb] src-543 `typ-543))
33063312++ test-types-record-import
3307− (weld (weld (check ~.types-record-import src-543 `tok-543 `tre-543) (check-module-types ~.types-record-import ~[%tests %golden ~.types-record-import %source %jibb] src-543 `typ-543 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-543-1]])) (check-module-trees ~.types-record-import `mtre-543 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-543-1]]))
3313+ (weld (weld (check ~.types-record-import src-544 `tok-544 `tre-544) (check-module-types ~.types-record-import ~[%tests %golden ~.types-record-import %source %jibb] src-544 `typ-544 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-544-1]])) (check-module-trees ~.types-record-import `mtre-544 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-544-1]]))
33083314++ test-types-record-local-scheme
3309− (weld (check ~.types-record-local-scheme src-544 `tok-544 `tre-544) (check-types ~.types-record-local-scheme ~[%tests %golden ~.types-record-local-scheme %source %jibb] src-544 `typ-544))
3315+ (weld (check ~.types-record-local-scheme src-545 `tok-545 `tre-545) (check-types ~.types-record-local-scheme ~[%tests %golden ~.types-record-local-scheme %source %jibb] src-545 `typ-545))
33103316++ test-types-record-nested
3311− (weld (check ~.types-record-nested src-545 `tok-545 `tre-545) (check-types ~.types-record-nested ~[%tests %golden ~.types-record-nested %source %jibb] src-545 `typ-545))
3317+ (weld (check ~.types-record-nested src-546 `tok-546 `tre-546) (check-types ~.types-record-nested ~[%tests %golden ~.types-record-nested %source %jibb] src-546 `typ-546))
33123318++ test-types-record-to-tuple
3313− (weld (check ~.types-record-to-tuple src-546 `tok-546 `tre-546) (check-types ~.types-record-to-tuple ~[%tests %golden ~.types-record-to-tuple %source %jibb] src-546 `typ-546))
3319+ (weld (check ~.types-record-to-tuple src-547 `tok-547 `tre-547) (check-types ~.types-record-to-tuple ~[%tests %golden ~.types-record-to-tuple %source %jibb] src-547 `typ-547))
33143320++ test-types-recursion-scc-failures
3315− (weld (check ~.types-recursion-scc-failures src-547 `tok-547 `tre-547) (check-module-types ~.types-recursion-scc-failures ~[%tests %golden ~.types-recursion-scc-failures %source %jibb] src-547 `typ-547 ~ ~ ~))
3321+ (weld (check ~.types-recursion-scc-failures src-548 `tok-548 `tre-548) (check-module-types ~.types-recursion-scc-failures ~[%tests %golden ~.types-recursion-scc-failures %source %jibb] src-548 `typ-548 ~ ~ ~))
33163322++ test-types-recursion-scc-groups
3317− (weld (check ~.types-recursion-scc-groups src-548 `tok-548 `tre-548) (check-module-types ~.types-recursion-scc-groups ~[%tests %golden ~.types-recursion-scc-groups %source %jibb] src-548 `typ-548 ~ ~ ~))
3323+ (weld (check ~.types-recursion-scc-groups src-549 `tok-549 `tre-549) (check-module-types ~.types-recursion-scc-groups ~[%tests %golden ~.types-recursion-scc-groups %source %jibb] src-549 `typ-549 ~ ~ ~))
33183324++ test-types-recursion-scc-import
3319− (weld (weld (check ~.types-recursion-scc-import src-549 `tok-549 `tre-549) (check-module-types ~.types-recursion-scc-import ~[%tests %golden ~.types-recursion-scc-import %source %jibb] src-549 `typ-549 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-549-1]])) (check-module-trees ~.types-recursion-scc-import `mtre-549 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-549-1]]))
3325+ (weld (weld (check ~.types-recursion-scc-import src-550 `tok-550 `tre-550) (check-module-types ~.types-recursion-scc-import ~[%tests %golden ~.types-recursion-scc-import %source %jibb] src-550 `typ-550 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-550-1]])) (check-module-trees ~.types-recursion-scc-import `mtre-550 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-550-1]]))
33203326++ test-types-recursion-scc-import-bad
3321− (weld (weld (check ~.types-recursion-scc-import-bad src-550 `tok-550 `tre-550) (check-module-types ~.types-recursion-scc-import-bad ~[%tests %golden ~.types-recursion-scc-import-bad %source %jibb] src-550 `typ-550 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-550-1]])) (check-module-trees ~.types-recursion-scc-import-bad `mtre-550 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-550-1]]))
3327+ (weld (weld (check ~.types-recursion-scc-import-bad src-551 `tok-551 `tre-551) (check-module-types ~.types-recursion-scc-import-bad ~[%tests %golden ~.types-recursion-scc-import-bad %source %jibb] src-551 `typ-551 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-551-1]])) (check-module-trees ~.types-recursion-scc-import-bad `mtre-551 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-551-1]]))
33223328++ test-types-recursion-scc-local
3323− (weld (check ~.types-recursion-scc-local src-551 `tok-551 `tre-551) (check-module-types ~.types-recursion-scc-local ~[%tests %golden ~.types-recursion-scc-local %source %jibb] src-551 `typ-551 ~ ~ ~))
3329+ (weld (check ~.types-recursion-scc-local src-552 `tok-552 `tre-552) (check-module-types ~.types-recursion-scc-local ~[%tests %golden ~.types-recursion-scc-local %source %jibb] src-552 `typ-552 ~ ~ ~))
33243330++ test-types-recursion-scc-order
3325− (weld (check ~.types-recursion-scc-order src-552 `tok-552 `tre-552) (check-module-types ~.types-recursion-scc-order ~[%tests %golden ~.types-recursion-scc-order %source %jibb] src-552 `typ-552 ~ ~ ~))
3331+ (weld (check ~.types-recursion-scc-order src-553 `tok-553 `tre-553) (check-module-types ~.types-recursion-scc-order ~[%tests %golden ~.types-recursion-scc-order %source %jibb] src-553 `typ-553 ~ ~ ~))
33263332++ test-types-recursion-scc-shadow
3327− (weld (check ~.types-recursion-scc-shadow src-553 `tok-553 `tre-553) (check-module-types ~.types-recursion-scc-shadow ~[%tests %golden ~.types-recursion-scc-shadow %source %jibb] src-553 `typ-553 ~ ~ ~))
3333+ (weld (check ~.types-recursion-scc-shadow src-554 `tok-554 `tre-554) (check-module-types ~.types-recursion-scc-shadow ~[%tests %golden ~.types-recursion-scc-shadow %source %jibb] src-554 `typ-554 ~ ~ ~))
33283334++ test-types-recursive-branch
3329− (weld (check ~.types-recursive-branch src-554 `tok-554 `tre-554) (check-module-types ~.types-recursive-branch ~[%tests %golden ~.types-recursive-branch %source %jibb] src-554 `typ-554 ~ ~ ~))
3335+ (weld (check ~.types-recursive-branch src-555 `tok-555 `tre-555) (check-module-types ~.types-recursive-branch ~[%tests %golden ~.types-recursive-branch %source %jibb] src-555 `typ-555 ~ ~ ~))
33303336++ test-types-recursive-gate
3331− (weld (check ~.types-recursive-gate src-555 `tok-555 `tre-555) (check-types ~.types-recursive-gate ~[%tests %golden ~.types-recursive-gate %source %jibb] src-555 `typ-555))
3337+ (weld (check ~.types-recursive-gate src-556 `tok-556 `tre-556) (check-types ~.types-recursive-gate ~[%tests %golden ~.types-recursive-gate %source %jibb] src-556 `typ-556))
33323338++ test-types-recursive-sample
3333− (weld (check ~.types-recursive-sample src-556 `tok-556 `tre-556) (check-types ~.types-recursive-sample ~[%tests %golden ~.types-recursive-sample %source %jibb] src-556 `typ-556))
3339+ (weld (check ~.types-recursive-sample src-557 `tok-557 `tre-557) (check-types ~.types-recursive-sample ~[%tests %golden ~.types-recursive-sample %source %jibb] src-557 `typ-557))
33343340++ test-types-scope-library-poke
3335− (weld (check-at ~.types-scope-library-poke ~[~.ui ~.lib ~.library ~.jibb] src-557 `tok-557 `tre-557) (check-module-types ~.types-scope-library-poke ~[~.ui ~.lib ~.library ~.jibb] src-557 `typ-557 ~ ~ ~))
3341+ (weld (check-at ~.types-scope-library-poke ~[~.ui ~.lib ~.library ~.jibb] src-558 `tok-558 `tre-558) (check-module-types ~.types-scope-library-poke ~[~.ui ~.lib ~.library ~.jibb] src-558 `typ-558 ~ ~ ~))
33363342++ test-types-scope-root-api
3337− (weld (check-at ~.types-scope-root-api ~[~.ui ~.api ~.todo ~.jibb] src-558 `tok-558 `tre-558) (check-module-types ~.types-scope-root-api ~[~.ui ~.api ~.todo ~.jibb] src-558 `typ-558 ~ ~ ~))
3343+ (weld (check-at ~.types-scope-root-api ~[~.ui ~.api ~.todo ~.jibb] src-559 `tok-559 `tre-559) (check-module-types ~.types-scope-root-api ~[~.ui ~.api ~.todo ~.jibb] src-559 `typ-559 ~ ~ ~))
33383344++ test-types-scope-store-duplicate
3339− (weld (check-at ~.types-scope-store-duplicate ~[~.ui ~.stores ~.cart ~.jibb] src-559 `tok-559 `tre-559) (check-module-types ~.types-scope-store-duplicate ~[~.ui ~.stores ~.cart ~.jibb] src-559 `typ-559 ~ ~ ~))
3345+ (weld (check-at ~.types-scope-store-duplicate ~[~.ui ~.stores ~.cart ~.jibb] src-560 `tok-560 `tre-560) (check-module-types ~.types-scope-store-duplicate ~[~.ui ~.stores ~.cart ~.jibb] src-560 `typ-560 ~ ~ ~))
33403346++ test-types-scope-store-shadow
3341− (weld (check-at ~.types-scope-store-shadow ~[~.ui ~.stores ~.cart ~.jibb] src-560 `tok-560 `tre-560) (check-module-types ~.types-scope-store-shadow ~[~.ui ~.stores ~.cart ~.jibb] src-560 `typ-560 ~ ~ ~))
3347+ (weld (check-at ~.types-scope-store-shadow ~[~.ui ~.stores ~.cart ~.jibb] src-561 `tok-561 `tre-561) (check-module-types ~.types-scope-store-shadow ~[~.ui ~.stores ~.cart ~.jibb] src-561 `typ-561 ~ ~ ~))
33423348++ test-types-single-case-pattern
3343− (weld (check ~.types-single-case-pattern src-561 `tok-561 `tre-561) (check-module-types ~.types-single-case-pattern ~[%tests %golden ~.types-single-case-pattern %source %jibb] src-561 `typ-561 ~ ~ ~))
3349+ (weld (check ~.types-single-case-pattern src-562 `tok-562 `tre-562) (check-module-types ~.types-single-case-pattern ~[%tests %golden ~.types-single-case-pattern %source %jibb] src-562 `typ-562 ~ ~ ~))
33443350++ test-types-string-interpolation
3345− (weld (check ~.types-string-interpolation src-562 `tok-562 `tre-562) (check-module-types ~.types-string-interpolation ~[%tests %golden ~.types-string-interpolation %source %jibb] src-562 `typ-562 ~ ~ ~))
3351+ (weld (check ~.types-string-interpolation src-563 `tok-563 `tre-563) (check-module-types ~.types-string-interpolation ~[%tests %golden ~.types-string-interpolation %source %jibb] src-563 `typ-563 ~ ~ ~))
33463352++ test-types-tuple-context
3347− (weld (check ~.types-tuple-context src-563 `tok-563 `tre-563) (check-module-types ~.types-tuple-context ~[%tests %golden ~.types-tuple-context %source %jibb] src-563 `typ-563 ~ ~ ~))
3353+ (weld (check ~.types-tuple-context src-564 `tok-564 `tre-564) (check-module-types ~.types-tuple-context ~[%tests %golden ~.types-tuple-context %source %jibb] src-564 `typ-564 ~ ~ ~))
33483354++ test-types-tuple-context-nested
3349− (weld (check ~.types-tuple-context-nested src-564 `tok-564 `tre-564) (check-module-types ~.types-tuple-context-nested ~[%tests %golden ~.types-tuple-context-nested %source %jibb] src-564 `typ-564 ~ ~ ~))
3355+ (weld (check ~.types-tuple-context-nested src-565 `tok-565 `tre-565) (check-module-types ~.types-tuple-context-nested ~[%tests %golden ~.types-tuple-context-nested %source %jibb] src-565 `typ-565 ~ ~ ~))
33503356++ test-types-union-alias
3351− (weld (check ~.types-union-alias src-565 `tok-565 `tre-565) (check-types ~.types-union-alias ~[%tests %golden ~.types-union-alias %source %jibb] src-565 `typ-565))
3357+ (weld (check ~.types-union-alias src-566 `tok-566 `tre-566) (check-types ~.types-union-alias ~[%tests %golden ~.types-union-alias %source %jibb] src-566 `typ-566))
33523358++ test-types-union-branch-context
3353− (weld (check ~.types-union-branch-context src-566 `tok-566 `tre-566) (check-types ~.types-union-branch-context ~[%tests %golden ~.types-union-branch-context %source %jibb] src-566 `typ-566))
3359+ (weld (check ~.types-union-branch-context src-567 `tok-567 `tre-567) (check-types ~.types-union-branch-context ~[%tests %golden ~.types-union-branch-context %source %jibb] src-567 `typ-567))
33543360++ test-types-union-branch-pending
3355− (weld (check ~.types-union-branch-pending src-567 `tok-567 `tre-567) (check-types ~.types-union-branch-pending ~[%tests %golden ~.types-union-branch-pending %source %jibb] src-567 `typ-567))
3361+ (weld (check ~.types-union-branch-pending src-568 `tok-568 `tre-568) (check-types ~.types-union-branch-pending ~[%tests %golden ~.types-union-branch-pending %source %jibb] src-568 `typ-568))
33563362++ test-types-union-constructor-shape
3357− (weld (check ~.types-union-constructor-shape src-568 `tok-568 `tre-568) (check-types ~.types-union-constructor-shape ~[%tests %golden ~.types-union-constructor-shape %source %jibb] src-568 `typ-568))
3363+ (weld (check ~.types-union-constructor-shape src-569 `tok-569 `tre-569) (check-types ~.types-union-constructor-shape ~[%tests %golden ~.types-union-constructor-shape %source %jibb] src-569 `typ-569))
33583364++ test-types-union-context-flow
3359− (weld (check ~.types-union-context-flow src-569 `tok-569 `tre-569) (check-types ~.types-union-context-flow ~[%tests %golden ~.types-union-context-flow %source %jibb] src-569 `typ-569))
3365+ (weld (check ~.types-union-context-flow src-570 `tok-570 `tre-570) (check-types ~.types-union-context-flow ~[%tests %golden ~.types-union-context-flow %source %jibb] src-570 `typ-570))
33603366++ test-types-union-finite
3361− (weld (check ~.types-union-finite src-570 `tok-570 `tre-570) (check-module-types ~.types-union-finite ~[%tests %golden ~.types-union-finite %source %jibb] src-570 `typ-570 ~ ~ ~))
3367+ (weld (check ~.types-union-finite src-571 `tok-571 `tre-571) (check-module-types ~.types-union-finite ~[%tests %golden ~.types-union-finite %source %jibb] src-571 `typ-571 ~ ~ ~))
33623368++ test-types-union-finite-context
3363− (weld (check ~.types-union-finite-context src-571 `tok-571 `tre-571) (check-module-types ~.types-union-finite-context ~[%tests %golden ~.types-union-finite-context %source %jibb] src-571 `typ-571 ~ ~ ~))
3369+ (weld (check ~.types-union-finite-context src-572 `tok-572 `tre-572) (check-module-types ~.types-union-finite-context ~[%tests %golden ~.types-union-finite-context %source %jibb] src-572 `typ-572 ~ ~ ~))
33643370++ test-types-union-finite-generic
3365− (weld (check ~.types-union-finite-generic src-572 `tok-572 `tre-572) (check-module-types ~.types-union-finite-generic ~[%tests %golden ~.types-union-finite-generic %source %jibb] src-572 `typ-572 ~ ~ ~))
3371+ (weld (check ~.types-union-finite-generic src-573 `tok-573 `tre-573) (check-module-types ~.types-union-finite-generic ~[%tests %golden ~.types-union-finite-generic %source %jibb] src-573 `typ-573 ~ ~ ~))
33663372++ test-types-union-finite-limit
3367− (weld (check ~.types-union-finite-limit src-573 `tok-573 `tre-573) (check-module-types ~.types-union-finite-limit ~[%tests %golden ~.types-union-finite-limit %source %jibb] src-573 `typ-573 ~ ~ ~))
3373+ (weld (check ~.types-union-finite-limit src-574 `tok-574 `tre-574) (check-module-types ~.types-union-finite-limit ~[%tests %golden ~.types-union-finite-limit %source %jibb] src-574 `typ-574 ~ ~ ~))
33683374++ test-types-union-import
3369− (weld (weld (check ~.types-union-import src-574 `tok-574 `tre-574) (check-module-types ~.types-union-import ~[%tests %golden ~.types-union-import %source %jibb] src-574 `typ-574 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-574-1]])) (check-module-trees ~.types-union-import `mtre-574 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-574-1]]))
3375+ (weld (weld (check ~.types-union-import src-575 `tok-575 `tre-575) (check-module-types ~.types-union-import ~[%tests %golden ~.types-union-import %source %jibb] src-575 `typ-575 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-575-1]])) (check-module-trees ~.types-union-import `mtre-575 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-575-1]]))
33703376++ test-types-union-local-pending
3371− (weld (check ~.types-union-local-pending src-575 `tok-575 `tre-575) (check-types ~.types-union-local-pending ~[%tests %golden ~.types-union-local-pending %source %jibb] src-575 `typ-575))
3377+ (weld (check ~.types-union-local-pending src-576 `tok-576 `tre-576) (check-types ~.types-union-local-pending ~[%tests %golden ~.types-union-local-pending %source %jibb] src-576 `typ-576))
33723378++ test-types-union-nonwing-subject
3373− (weld (check ~.types-union-nonwing-subject src-576 `tok-576 `tre-576) (check-module-types ~.types-union-nonwing-subject ~[%tests %golden ~.types-union-nonwing-subject %source %jibb] src-576 `typ-576 ~ ~ ~))
3379+ (weld (check ~.types-union-nonwing-subject src-577 `tok-577 `tre-577) (check-module-types ~.types-union-nonwing-subject ~[%tests %golden ~.types-union-nonwing-subject %source %jibb] src-577 `typ-577 ~ ~ ~))
33743380++ test-types-union-overlap
3375− (weld (check ~.types-union-overlap src-577 `tok-577 `tre-577) (check-types ~.types-union-overlap ~[%tests %golden ~.types-union-overlap %source %jibb] src-577 `typ-577))
3381+ (weld (check ~.types-union-overlap src-578 `tok-578 `tre-578) (check-types ~.types-union-overlap ~[%tests %golden ~.types-union-overlap %source %jibb] src-578 `typ-578))
33763382++ test-types-union-overlap-nested
3377− (weld (check ~.types-union-overlap-nested src-578 `tok-578 `tre-578) (check-types ~.types-union-overlap-nested ~[%tests %golden ~.types-union-overlap-nested %source %jibb] src-578 `typ-578))
3383+ (weld (check ~.types-union-overlap-nested src-579 `tok-579 `tre-579) (check-types ~.types-union-overlap-nested ~[%tests %golden ~.types-union-overlap-nested %source %jibb] src-579 `typ-579))
33783384++ test-types-union-pattern-result-context
3379− (weld (check ~.types-union-pattern-result-context src-579 `tok-579 `tre-579) (check-module-types ~.types-union-pattern-result-context ~[%tests %golden ~.types-union-pattern-result-context %source %jibb] src-579 `typ-579 ~ ~ ~))
3385+ (weld (check ~.types-union-pattern-result-context src-580 `tok-580 `tre-580) (check-module-types ~.types-union-pattern-result-context ~[%tests %golden ~.types-union-pattern-result-context %source %jibb] src-580 `typ-580 ~ ~ ~))
33803386++ test-types-union-pattern-result-controls
3381− (weld (check ~.types-union-pattern-result-controls src-580 `tok-580 `tre-580) (check-module-types ~.types-union-pattern-result-controls ~[%tests %golden ~.types-union-pattern-result-controls %source %jibb] src-580 `typ-580 ~ ~ ~))
3387+ (weld (check ~.types-union-pattern-result-controls src-581 `tok-581 `tre-581) (check-module-types ~.types-union-pattern-result-controls ~[%tests %golden ~.types-union-pattern-result-controls %source %jibb] src-581 `typ-581 ~ ~ ~))
33823388++ test-types-union-patterns
3383− (weld (check ~.types-union-patterns src-581 `tok-581 `tre-581) (check-module-types ~.types-union-patterns ~[%tests %golden ~.types-union-patterns %source %jibb] src-581 `typ-581 ~ ~ ~))
3389+ (weld (check ~.types-union-patterns src-582 `tok-582 `tre-582) (check-module-types ~.types-union-patterns ~[%tests %golden ~.types-union-patterns %source %jibb] src-582 `typ-582 ~ ~ ~))
33843390++ test-types-union-patterns-generic
3385− (weld (check ~.types-union-patterns-generic src-582 `tok-582 `tre-582) (check-module-types ~.types-union-patterns-generic ~[%tests %golden ~.types-union-patterns-generic %source %jibb] src-582 `typ-582 ~ ~ ~))
3391+ (weld (check ~.types-union-patterns-generic src-583 `tok-583 `tre-583) (check-module-types ~.types-union-patterns-generic ~[%tests %golden ~.types-union-patterns-generic %source %jibb] src-583 `typ-583 ~ ~ ~))
33863392++ test-types-union-patterns-import
3387− (weld (weld (check ~.types-union-patterns-import src-583 `tok-583 `tre-583) (check-module-types ~.types-union-patterns-import ~[%tests %golden ~.types-union-patterns-import %source %jibb] src-583 `typ-583 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-583-1]])) (check-module-trees ~.types-union-patterns-import `mtre-583 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-583-1]]))
3393+ (weld (weld (check ~.types-union-patterns-import src-584 `tok-584 `tre-584) (check-module-types ~.types-union-patterns-import ~[%tests %golden ~.types-union-patterns-import %source %jibb] src-584 `typ-584 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-584-1]])) (check-module-trees ~.types-union-patterns-import `mtre-584 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-584-1]]))
33883394++ test-types-union-phantom-generic
3389− (weld (check ~.types-union-phantom-generic src-584 `tok-584 `tre-584) (check-types ~.types-union-phantom-generic ~[%tests %golden ~.types-union-phantom-generic %source %jibb] src-584 `typ-584))
3395+ (weld (check ~.types-union-phantom-generic src-585 `tok-585 `tre-585) (check-types ~.types-union-phantom-generic ~[%tests %golden ~.types-union-phantom-generic %source %jibb] src-585 `typ-585))
33903396++ test-types-union-polymorphic-identity
3391− (weld (weld (check ~.types-union-polymorphic-identity src-585 `tok-585 `tre-585) (check-module-types ~.types-union-polymorphic-identity ~[%tests %golden ~.types-union-polymorphic-identity %source %jibb] src-585 `typ-585 ~ ~ ~[['/ui/one.jibb' ~[~.ui ~.one ~.jibb] mod-585-1] ['/ui/two.jibb' ~[~.ui ~.two ~.jibb] mod-585-2]])) (check-module-trees ~.types-union-polymorphic-identity `mtre-585 ~[['/ui/one.jibb' ~[~.ui ~.one ~.jibb] mod-585-1] ['/ui/two.jibb' ~[~.ui ~.two ~.jibb] mod-585-2]]))
3397+ (weld (weld (check ~.types-union-polymorphic-identity src-586 `tok-586 `tre-586) (check-module-types ~.types-union-polymorphic-identity ~[%tests %golden ~.types-union-polymorphic-identity %source %jibb] src-586 `typ-586 ~ ~ ~[['/ui/one.jibb' ~[~.ui ~.one ~.jibb] mod-586-1] ['/ui/two.jibb' ~[~.ui ~.two ~.jibb] mod-586-2]])) (check-module-trees ~.types-union-polymorphic-identity `mtre-586 ~[['/ui/one.jibb' ~[~.ui ~.one ~.jibb] mod-586-1] ['/ui/two.jibb' ~[~.ui ~.two ~.jibb] mod-586-2]]))
33923398++ test-types-union-print-cross-namespace
3393− (weld (weld (check ~.types-union-print-cross-namespace src-586 `tok-586 `tre-586) (check-module-types ~.types-union-print-cross-namespace ~[%tests %golden ~.types-union-print-cross-namespace %source %jibb] src-586 `typ-586 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-586-1]])) (check-module-trees ~.types-union-print-cross-namespace `mtre-586 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-586-1]]))
3399+ (weld (weld (check ~.types-union-print-cross-namespace src-587 `tok-587 `tre-587) (check-module-types ~.types-union-print-cross-namespace ~[%tests %golden ~.types-union-print-cross-namespace %source %jibb] src-587 `typ-587 ~ ~ ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-587-1]])) (check-module-trees ~.types-union-print-cross-namespace `mtre-587 ~[['/ui/lib.jibb' ~[~.ui ~.lib ~.jibb] mod-587-1]]))
33943400++ test-types-union-print-distinct
3395− (weld (weld (check ~.types-union-print-distinct src-587 `tok-587 `tre-587) (check-module-types ~.types-union-print-distinct ~[%tests %golden ~.types-union-print-distinct %source %jibb] src-587 `typ-587 ~ ~ ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-587-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-587-2] ['/ui/twin.jibb' ~[~.ui ~.twin ~.jibb] mod-587-3]])) (check-module-trees ~.types-union-print-distinct `mtre-587 ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-587-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-587-2] ['/ui/twin.jibb' ~[~.ui ~.twin ~.jibb] mod-587-3]]))
3401+ (weld (weld (check ~.types-union-print-distinct src-588 `tok-588 `tre-588) (check-module-types ~.types-union-print-distinct ~[%tests %golden ~.types-union-print-distinct %source %jibb] src-588 `typ-588 ~ ~ ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-588-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-588-2] ['/ui/twin.jibb' ~[~.ui ~.twin ~.jibb] mod-588-3]])) (check-module-trees ~.types-union-print-distinct `mtre-588 ~[['/ui/left.jibb' ~[~.ui ~.left ~.jibb] mod-588-1] ['/ui/right.jibb' ~[~.ui ~.right ~.jibb] mod-588-2] ['/ui/twin.jibb' ~[~.ui ~.twin ~.jibb] mod-588-3]]))
33963402++ test-types-union-print-escape
3397− (weld (check ~.types-union-print-escape src-588 `tok-588 `tre-588) (check-types ~.types-union-print-escape ~[%tests %golden ~.types-union-print-escape %source %jibb] src-588 `typ-588))
3403+ (weld (check ~.types-union-print-escape src-589 `tok-589 `tre-589) (check-types ~.types-union-print-escape ~[%tests %golden ~.types-union-print-escape %source %jibb] src-589 `typ-589))
33983404++ test-types-union-print-local
3399− (weld (check ~.types-union-print-local src-589 `tok-589 `tre-589) (check-types ~.types-union-print-local ~[%tests %golden ~.types-union-print-local %source %jibb] src-589 `typ-589))
3405+ (weld (check ~.types-union-print-local src-590 `tok-590 `tre-590) (check-types ~.types-union-print-local ~[%tests %golden ~.types-union-print-local %source %jibb] src-590 `typ-590))
34003406++ test-types-union-print-nested
3401− (weld (check ~.types-union-print-nested src-590 `tok-590 `tre-590) (check-types ~.types-union-print-nested ~[%tests %golden ~.types-union-print-nested %source %jibb] src-590 `typ-590))
3407+ (weld (check ~.types-union-print-nested src-591 `tok-591 `tre-591) (check-types ~.types-union-print-nested ~[%tests %golden ~.types-union-print-nested %source %jibb] src-591 `typ-591))
34023408++ test-types-union-print-same-origin
3403− (weld (weld (check ~.types-union-print-same-origin src-591 `tok-591 `tre-591) (check-module-types ~.types-union-print-same-origin ~[%tests %golden ~.types-union-print-same-origin %source %jibb] src-591 `typ-591 ~ ~ ~[['/ui/shared.jibb' ~[~.ui ~.shared ~.jibb] mod-591-1]])) (check-module-trees ~.types-union-print-same-origin `mtre-591 ~[['/ui/shared.jibb' ~[~.ui ~.shared ~.jibb] mod-591-1]]))
3409+ (weld (weld (check ~.types-union-print-same-origin src-592 `tok-592 `tre-592) (check-module-types ~.types-union-print-same-origin ~[%tests %golden ~.types-union-print-same-origin %source %jibb] src-592 `typ-592 ~ ~ ~[['/ui/shared.jibb' ~[~.ui ~.shared ~.jibb] mod-592-1]])) (check-module-trees ~.types-union-print-same-origin `mtre-592 ~[['/ui/shared.jibb' ~[~.ui ~.shared ~.jibb] mod-592-1]]))
34043410++ test-types-union-print-transitive
3405− (weld (weld (check ~.types-union-print-transitive src-592 `tok-592 `tre-592) (check-module-types ~.types-union-print-transitive ~[%tests %golden ~.types-union-print-transitive %source %jibb] src-592 `typ-592 ~ ~ ~[['/ui/mid.jibb' ~[~.ui ~.mid ~.jibb] mod-592-1] ['/ui/base.jibb' ~[~.ui ~.base ~.jibb] mod-592-2]])) (check-module-trees ~.types-union-print-transitive `mtre-592 ~[['/ui/mid.jibb' ~[~.ui ~.mid ~.jibb] mod-592-1] ['/ui/base.jibb' ~[~.ui ~.base ~.jibb] mod-592-2]]))
3411+ (weld (weld (check ~.types-union-print-transitive src-593 `tok-593 `tre-593) (check-module-types ~.types-union-print-transitive ~[%tests %golden ~.types-union-print-transitive %source %jibb] src-593 `typ-593 ~ ~ ~[['/ui/mid.jibb' ~[~.ui ~.mid ~.jibb] mod-593-1] ['/ui/base.jibb' ~[~.ui ~.base ~.jibb] mod-593-2]])) (check-module-trees ~.types-union-print-transitive `mtre-593 ~[['/ui/mid.jibb' ~[~.ui ~.mid ~.jibb] mod-593-1] ['/ui/base.jibb' ~[~.ui ~.base ~.jibb] mod-593-2]]))
34063412++ test-types-union-singleton
3407− (weld (check ~.types-union-singleton src-593 `tok-593 `tre-593) (check-types ~.types-union-singleton ~[%tests %golden ~.types-union-singleton %source %jibb] src-593 `typ-593))
3413+ (weld (check ~.types-union-singleton src-594 `tok-594 `tre-594) (check-types ~.types-union-singleton ~[%tests %golden ~.types-union-singleton %source %jibb] src-594 `typ-594))
34083414++ test-types-union-tag-atoms
3409− (weld (check ~.types-union-tag-atoms src-594 `tok-594 `tre-594) (check-types ~.types-union-tag-atoms ~[%tests %golden ~.types-union-tag-atoms %source %jibb] src-594 `typ-594))
3415+ (weld (check ~.types-union-tag-atoms src-595 `tok-595 `tre-595) (check-types ~.types-union-tag-atoms ~[%tests %golden ~.types-union-tag-atoms %source %jibb] src-595 `typ-595))
34103416++ test-types-union-tags
3411− (weld (check ~.types-union-tags src-595 `tok-595 `tre-595) (check-types ~.types-union-tags ~[%tests %golden ~.types-union-tags %source %jibb] src-595 `typ-595))
3417+ (weld (check ~.types-union-tags src-596 `tok-596 `tre-596) (check-types ~.types-union-tags ~[%tests %golden ~.types-union-tags %source %jibb] src-596 `typ-596))
34123418++ test-types-union-unresolved
3413− (weld (check ~.types-union-unresolved src-596 `tok-596 `tre-596) (check-types ~.types-union-unresolved ~[%tests %golden ~.types-union-unresolved %source %jibb] src-596 `typ-596))
3419+ (weld (check ~.types-union-unresolved src-597 `tok-597 `tre-597) (check-types ~.types-union-unresolved ~[%tests %golden ~.types-union-unresolved %source %jibb] src-597 `typ-597))
34143420++ test-types-union-unresolved-flow
3415− (weld (check ~.types-union-unresolved-flow src-597 `tok-597 `tre-597) (check-types ~.types-union-unresolved-flow ~[%tests %golden ~.types-union-unresolved-flow %source %jibb] src-597 `typ-597))
3421+ (weld (check ~.types-union-unresolved-flow src-598 `tok-598 `tre-598) (check-types ~.types-union-unresolved-flow ~[%tests %golden ~.types-union-unresolved-flow %source %jibb] src-598 `typ-598))
34163422++ test-types-unit-construction
3417− (weld (check ~.types-unit-construction src-598 `tok-598 `tre-598) (check-module-types ~.types-unit-construction ~[%tests %golden ~.types-unit-construction %source %jibb] src-598 `typ-598 ~ ~ ~))
3423+ (weld (check ~.types-unit-construction src-599 `tok-599 `tre-599) (check-module-types ~.types-unit-construction ~[%tests %golden ~.types-unit-construction %source %jibb] src-599 `typ-599 ~ ~ ~))
34183424++ test-types-unit-context
3419− (weld (check ~.types-unit-context src-599 `tok-599 `tre-599) (check-module-types ~.types-unit-context ~[%tests %golden ~.types-unit-context %source %jibb] src-599 `typ-599 ~ ~ ~))
3425+ (weld (check ~.types-unit-context src-600 `tok-600 `tre-600) (check-module-types ~.types-unit-context ~[%tests %golden ~.types-unit-context %source %jibb] src-600 `typ-600 ~ ~ ~))
34203426++ test-types-unit-patterns
3421− (weld (check ~.types-unit-patterns src-600 `tok-600 `tre-600) (check-types ~.types-unit-patterns ~[%tests %golden ~.types-unit-patterns %source %jibb] src-600 `typ-600))
3427+ (weld (check ~.types-unit-patterns src-601 `tok-601 `tre-601) (check-types ~.types-unit-patterns ~[%tests %golden ~.types-unit-patterns %source %jibb] src-601 `typ-601))
34223428++ test-types-value-cycle-shadow
3423− (weld (check ~.types-value-cycle-shadow src-601 `tok-601 `tre-601) (check-module-types ~.types-value-cycle-shadow ~[%tests %golden ~.types-value-cycle-shadow %source %jibb] src-601 `typ-601 ~ ~ ~))
3429+ (weld (check ~.types-value-cycle-shadow src-602 `tok-602 `tre-602) (check-module-types ~.types-value-cycle-shadow ~[%tests %golden ~.types-value-cycle-shadow %source %jibb] src-602 `typ-602 ~ ~ ~))
34243430++ test-types-value-cycle-unsupported
3425− (weld (check ~.types-value-cycle-unsupported src-602 `tok-602 `tre-602) (check-module-types ~.types-value-cycle-unsupported ~[%tests %golden ~.types-value-cycle-unsupported %source %jibb] src-602 `typ-602 ~ ~ ~))
3431+ (weld (check ~.types-value-cycle-unsupported src-603 `tok-603 `tre-603) (check-module-types ~.types-value-cycle-unsupported ~[%tests %golden ~.types-value-cycle-unsupported %source %jibb] src-603 `typ-603 ~ ~ ~))
34263432++ test-types-value-cycles
3427− (weld (check ~.types-value-cycles src-603 `tok-603 `tre-603) (check-module-types ~.types-value-cycles ~[%tests %golden ~.types-value-cycles %source %jibb] src-603 `typ-603 ~ ~ ~))
3433+ (weld (check ~.types-value-cycles src-604 `tok-604 `tre-604) (check-module-types ~.types-value-cycles ~[%tests %golden ~.types-value-cycles %source %jibb] src-604 `typ-604 ~ ~ ~))
34283434::
34293435:: +check: run golden:jibb on a case and compare both outputs
34303436::