Release Notes
Added
- Expanded proof-backed Type-4 equivalence coverage across common collection and
quantifier idioms: Python counterexample loops and all, JavaScript/TypeScript
every, Rust Iterator::all, Ruby Enumerable#any?/all?, and Swift
allSatisfy, membership, empty checks, and string prefix/suffix checks now
converge only when receiver identity, callback coordinates, effects, dispatch,
and language-specific safety obligations are proven.
- Preserved every accepted pair endpoint through overlapping family-site folding
(#817), so a valid refactoring candidate is no longer lost merely because its
span collapses into a larger displayed site.
- Added pair-local connected witnesses (#821) and bounded same-unit windows (#832)
as separate, budgeted near-match routes. They recover coherent refactoring
candidates that do not share one exact fragment while keeping ordinary accepted
pairs, work limits, deduplication, ranking, and output attribution explicit.
- Added the durable #791/#799 blocked-surface closeout. The checked snapshot
records all 7 frozen rows resolved, all 12 required neutral facts
modeled-controlled, 358/358 executable expectations, the unchanged 29/29
real-frontier replay, 7 unchanged target packets, and no exact-admission-ready
packet. No focused fixture or probe is promoted as new real-corpus evidence.
- Added the controlled Swift
Dictionary default-subscript slice for #798.
Import-free plain parameters written as [K: V], unshadowed
Dictionary<K, V>, or Swift.Dictionary<K, V> now converge with existing
absence-preserving map defaults when receiver, key, and fallback are direct
immutable parameter coordinates. Wrong coordinates, ??, lazy call/operator
defaults and lazy-versus-hoisted calls, inout mutation, custom Dictionary
types, visible/conditional/alias-targeted subscript overloads, imports,
macros, aliases, Swift namespace shadows, comment-qualified extensions, and
property-wrapped or modified parameters remain split. The executable Type-4
suite is 358/358 and the open
surface audit now has zero rows.
- Added controlled Java and Swift flat-map aggregate slices for #797. Java
Arrays.stream(...).flatMap(...).reduce(seed, step) now converges with the
equivalent nested reduction when one-level sources, optional outer/inner
guards, emitted values, identity, step, callback effects, and Arrays
dispatch are proven. Swift eager flatMap(...).allSatisfy(...) now converges
with equivalent nested counterexample loops over direct bracket-array
parameters, with at most one admitted pure filter on each traversal
coordinate and standard flatMap/filter/map/allSatisfy dispatch.
Changed guards, seed, step, source/cardinality, depth, terminal predicate,
effects, and custom dispatch stay split. Maps in which neither the contribution
nor a carried guard retains a bound inner element remain source-bound and
opaque so captured or constant emissions cannot erase repetition count;
repeated same-source or derived coordinate aliases and recursive Java
flatMap depth also remain closed. Swift reduce
remains closed pending separate fold/operator/overload/trap proof. Explicit
reducers and method-terminal
predicates that ignore their bound flattened value stay opaque so source
cardinality and empty-input behavior cannot disappear, and a disjoint
two-argument callback overload does not suppress the standard unary
allSatisfy surface. The
executable Type-4 suite is 341/341.
- Added a controlled Swift one-level
flatMap slice for #796: eager unary
callbacks over direct language-core-proven plain bracket-array parameters may
expose either that inner collection or one admitted inner map. The dedicated
proof preserves outer/inner traversal order, emitted-value coordinates, and
exactly one flatten layer. Derived, nominal, attributed, or modified sources;
zero/recursive depth; reordered traversal; changed values or sources; effects;
imports; property-wrapped or parser-recovered callback parameters; lexically
unrelated parameter proofs; and same-file/cross-file custom flatMap/map
dispatch remain split. Surviving raw Swift flatMap selectors cannot borrow
opaque exact-call identity; the executable Type-4 suite is 314/314.
- Added a controlled Swift
compactMap option-emission slice for #795: eager unary
callbacks converge with explicit filtered emission only over a direct, attribute- and modifier-free
function parameter carrying language-core bracket-array ([T]) source evidence when the same callback-bound
Bool is the drop condition and emitted value opposite a single nil branch. Nominal or
custom receivers, captured or Optional values, custom nil-literal channels, changed or
derived/aliased sources, effects, custom/cross-file compactMap/map/filter methods
and callable properties,
parameter attributes/modifiers/property wrappers, imports, type aliases, macros, retroactive nil-literal conformances, and overloadable
expressions remain split; the executable Type-4 suite is 300/300.
- Added the #820 post-#817 missed-worthy frontier: snapshot-aware validation that preserves
#816, exact combined dev/held-out evaluation and zero-regression comparison, regenerated
raw stages, chronology- and source-bound dev decisions, a held-out-source-free mechanical
confirmation, and the bounded connected-witness follow-up #821.
- Added the #816 current missed-worthy frontier audit: complete nose 0.18.0
reproduction provenance, exact v5-worthy recall counts, a frozen seven-language
dev source audit, raw extraction/candidate/accepted stage evidence, one-time
held-out confirmation, a #809 current-baseline/noise envelope, and the bounded
#817 follow-up for preserving already-accepted pair coverage through family
folding, including the omitted-route protocol deviation and deferred head cost.
- Added the v6 product-label composite: a hash-checked, split-safe overlay of 115
current top-10 judgments (including all 15 real Swift repositories) on the frozen
v5 pool, with durable selection/source provenance, panel votes and arbitration,
precision-only eligibility, improved top-10 match coverage, and an exact v5
reproduction artifact.
- Added a bounded base/head semantic regression CI gate with a pinned seven-repository
language-balanced corpus, exact intentional-output declarations, same-binary noise
controls, 5%/5 ms repository and stage thresholds, automatic focused reruns, raw
provenance artifacts, and a deterministic Ruby superlinear-scan tripwire.
Fixed
- Fixed performance-regression identity on Darwin by retaining exact artifact
SHA-256 while comparing a normalized Mach-O code SHA-256 that excludes
per-link LC_UUID and ad-hoc signature bytes. The official v0.18.0 binary now
anchors the #829 baseline; current head is 4.61% faster on the checked
seven-repository slice while reporting 464 additional families. The same pass
shares Rust map-default evidence fixture setup and tightens the substantial
self-duplication budget from 30 families to 29 without product-output drift.
- Hardened higher-order callback admission so free/global reads, JavaScript
default/rest/destructured parameters, spread, instanceof, and BigInt-ambiguous
arithmetic; Ruby splat/non-plain parameters and map-key hashing; plus Swift
contextual literals, nominally ambiguous operators, and overloadable/trapping
surfaces, casts, and capture lists remain split unless their purity coordinates are
proven. Ruby dynamic regex interpolation, nonlocal return, and runtime definitions,
plus JavaScript/TypeScript runtime class heritage, stay closed. Equality-shaped
operators require a unique source identity, and nested HOF callbacks are rechecked
whenever their own obligation is weaker than the enclosing transform obligation.
Callback variable proof now follows cached lexical binders, stops at intervening
parameter/assignment/destructuring/foreach shadows, and never crosses a fresh
function's alpha-renaming namespace on numeric canonical-id coincidence.
- Restored the v5 product-quality evaluation workflow against query JSON schema v7,
added a strict live schema-drift check, refreshed dev/held-out precision and recall,
and made frozen-label coverage explicit in a reproducible artifact.
- Restored Ruby query performance after the option absence-channel expansion by
indexing same-file method-redefinition facts, memoizing InstructionSequence
resolution, and reusing first-party occurrence evidence without changing product
output across the pinned 120-repository corpus.
Performance
- Stabilized the semantic runtime regression smoke by pairing base and head
measurements back-to-back within each repository, while still reversing pair
order between iterations, using six focused samples for an exact 3:3 first-run
balance, and retaining the same-binary control. This prevents runner load or
temperature drift across the corpus from accumulating on only one binary
without relaxing the 5%/5ms thresholds.
- Replaced the front-end ANSI artifact detector's repeated 256 KiB adjacent-byte
scan with an escape-byte prefilter. Exact output is preserved; on the focused
control-paired Fastlane/Prettier slice, Prettier lower improved by about 8%
and parse+lower by about 13.5%, removing the Linux release-smoke outlier.
- Completed the 0.19.0 release pass against the published v0.18.0 Darwin arm64
binary using the final versioned candidate. The established semantic-only
surface measured 28,389.31ms -> 28,964.56ms (+2.03%) across all 120 pinned
repositories. The expanded default surface measured 34,322.88ms -> 36,159.03ms (+5.35%, approximately +5.05% after the same-binary control)
while returning 9.47% more families.
Profiling also removed an accepted-coverage reporting hot path: the focused
Alamofire/Raylib slice improved 6,787.93ms -> 3,591.61ms (-47.09%) with
identical output, and Alamofire rank_map fell from 3,203.7ms to 22.0ms.
Product-quality metrics exactly reproduced the checked #832 result and the
recall-loss gate remained at 0 false merges and 0 canon-preservation violations.
See the 0.19.0 release evidence.
Install nose-cli 0.19.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/corca-ai/nose/releases/download/v0.19.0/nose-cli-installer.sh | sh
Install prebuilt binaries via Homebrew
brew install corca-ai/tap/nose
Download nose-cli 0.19.0