Repository navigation
RN 0.82.1 certification requires a fmt 12.1.0 backport #303
Description
Finding
Severity: Medium. Unmodified RN 0.82 fails fmt compilation on the tested Apple toolchain.
The subsequent application evaluation passed with an explicit fmt 12.1.0 patch.
See the evaluation comment for exact commits and commands.
The operator approved RN 0.82.1 minimum adoption for 0.4.0-rc.2.
Implementation and release certification remain incomplete.
Initial source and evaluation scope
- Synchro source:
7bc2f7a34b619099edd6cb0645e44de19fca1e7a. - The repository worktree was clean before and after evaluation.
- An isolated directory contained source archived from that commit.
- Evaluation dependencies were React Native 0.82.1, React 19.1.1, Codegen 0.82.1, and TypeScript 5.9.2.
- The npm registry lists only stable RN 0.82.0 and 0.82.1.
- The available compiler was Xcode 27.0, build 27A266a.
- No support declaration or production dependency changed.
Initial executable evidence
make lint-rn082passed for the production TypeScript source.make codegen-rn082passed and generated Android and iOS native declarations.make compile-fmt11failed with five consteval errors.make compile-fmt12passed with the same compiler and flags.
The compilation command was:
xcrun --sdk iphonesimulator clang++ -std=c++20 -arch arm64 -mios-simulator-version-min=16.0 -I fmt-11/include -c fmt-11/src/format.cc -o fmt11.oThe first failure was:
fmt-11/include/fmt/format-inl.h:59:24: error: call to consteval function ... is not a constant expression
RN 0.82.1 publishes fmt 11.0.2 and requires C++20.
RN 0.83.5 publishes fmt 12.1.0.
The fmt 12.1.0 check isolates the upstream dependency failure.
It does not establish a working RN 0.82 application.
Full native compilation, installed application execution, and packaged lifecycle checks did not run.
These probes are evaluation evidence, not release certification.
Upstream evidence
- RN 0.82 Xcode 26.4 fix request.
- Upstream closed that request because RN 0.82 reached end of support.
- Merged fmt 12.1.0 correction.
The local probe reproduced the reported failure under Xcode 27.0.
It did not test Xcode 26.6 directly.
Required adoption changes
- Review RN and React peer ranges in
clients/react-native/package.json:88. - RN 0.82.1 bundles React 19.1.1, which the current React peer range excludes.
- Add explicit RN minimum cells alongside current cells in
conformance/support-matrix.json:133. - Update the fixed support tuples in
conformance/internal/contract/policy.go:43. - Parameterize the consumer version pinned in
verification/consumers/react-native/test-consumer.sh:83. - Parameterize the upgrade consumer version in
verification/consumers/upgrade/react-native/build-app.sh:30. - Update CI, release environment records, and support documentation.
- Bind the minimum cells to the existing authoritative semantic runners.
Applicable existing cells are SUP-RN-IOS-CURRENT-001 and SUP-RN-ANDROID-CURRENT-001.
Applicable release gates are Candidate and Package in RELEASE.md.
Updated recommendation and remaining work
Use RN 0.82.1 as the approved minimum for certification.
Require the reproducible fmt 12.1.0 patch for RN 0.82 iOS consumers on current Xcode.
The consumer application must apply this patch to its RN dependency.
The Synchro package cannot enforce a consumer application's package-manager patch.
Do not describe patched RN as compatibility with the unmodified published RN package.
The initial recommendation required an upstream release or an older toolchain.
The later complete application builds support a third path: an explicit, tested dependency backport.
The support declaration and full release certification remain incomplete.
Acceptance criteria
- Record the approved RN version and Apple-toolchain scope.
- Demonstrate clean native builds from the exact RN version and declared fmt patch.
- Verify the packaged bridge on both platforms with real SQLite and the extension-backed adapter.
- Run the existing authored semantic corpus with structured results and zero skips.
- Verify packaged install, connect, push, pull, process termination, and resume.
- Verify each declared minimum OS track and current track.
- Keep package peer ranges, support cells, version records, and documentation consistent.
- Preserve this failed compiler result with final evidence.
Activity
[-]React Native 0.82 certification is blocked by fmt on current Xcode[/-][+]RN 0.82.1 certification requires a fmt 12.1.0 backport[/+]mdspinali commentedon Oct 4, 2026
RN 0.82.1 application evaluation
The user authorized validation of fmt 12.1.0 before a support-policy decision.
The evaluation used a separate Git worktree.
The main worktree remains clean at
7bc2f7a34b619099edd6cb0645e44de19fca1e7a.No declared support cell changed.
Complete application builds
Clean evaluation commit:
deee1414646c6e8c745e8a5d23d28c7b18cab1a2.make test-rn-android-paritypassed.make -f evaluation.mk eval-rn082-android-buildpassed.make -f evaluation.mk eval-rn082-ios-buildpassed on Xcode 27.0, build 27A266a.The source change comprises three version entries across RN's two iOS podspecs.
It changes the fmt version and Git tag to 12.1.0.
It changes the RCT-Folly fmt constraint to 12.1.0.
No Synchro production source changed.
Android used its published RN artifacts and needed no CocoaPods patch.
Reproducible patch and unit checks
Clean initial unit-check commit:
1f7df534eac695b4a95f1b312af5f5e96e054b39.The existing Yarn 4 patch mechanism now applies the dependency correction.
Both workspace manifests reference the checked-in patch.
Both installed RN copies contain the fmt 12.1.0 correction.
make lint-rn test-rn-unitpassed.The structured Jest parser recorded 239 tests in 10 suites, with zero failures and zero skips.
Lint recorded zero errors and nine warnings in unchanged source files.
The initial unit attempt failed before test execution because RN 0.82's Jest setup requires Prettier.
The RN 0.83 setup guards that optional dependency.
The evaluation adds Prettier 3.6.2 as a test dependency.
No assertion or test selection changed.
Native test harness failure
The initial extra iOS transaction attempt used Release mode without Swift testability.
It failed at
@testable import SynchroReactNativeand executed zero tests.The structured parser rejected the zero-test result.
This evaluation harness differed from the supported Debug test target.
The correction enables
ENABLE_TESTABILITY=YESfor this test build only.It also selects the active simulator architecture for test execution.
No production source or test assertion changed.
The failed log and xcresult remain available.
Native execution results
Clean iOS 27 attempt:
44755f0c99e2f8e1c944c00079907d5568f83821.The corrected test target compiled successfully.
The generated CocoaPods test host crashed during UIKit's scene lifecycle check before test execution.
The structured result parser rejected the failed run.
This separate fixture defect is recorded in #304.
Clean iOS 18.1 evaluation:
8965675747961ec4defde1f4a2a3c6a304b2b27d.The following command passed:
make -f evaluation.mk eval-rn082-ios-transactions \ RN_IOS_TEST_DESTINATION='platform=iOS Simulator,id=BD7DCDC3-2E39-4C1B-A00A-487978B1965B' \ RN_EVAL_IOS_RESULT=ios/build/eval-rn082-transactions-ios18.xcresultThe structured xcresult parser recorded 11 passed tests with zero skips.
These tests exercise the native bridge transaction target with real SQLite.
This diagnostic older-runtime result does not satisfy the current iOS support cell.
It does not prove the iOS 16 minimum cell.
The full evaluation remains on local branch
evaluation/rn-082-fmt-121.The main branch and declared support policy remain unchanged.
The final clean commit is
8965675747961ec4defde1f4a2a3c6a304b2b27d.make -f evaluation.mk eval-rn082-install lint-rn test-rn-unitpassed on that commit.This final run confirms the immutable patch install, lint, and all 239 unit tests.
Remaining certification scope
These checks establish a working dependency backport for the tested application.
They do not certify packaged consumers or full synchronization behavior.
The extension-backed semantic corpus and packaged lifecycle checks remain required.
Minimum operating-system execution also remains required.
RN 0.82.0 was not tested.
Proposed minimum: RN 0.82.1 with the declared iOS fmt patch.
Use exact version records and an upper bound at the highest certified RN minor.
Run full semantic proof on minimum and current RN versions for both platforms.
Run packaged install, connect, push, pull, process termination, and resume for every supported minor.
Add minimum operating-system bridge cells rather than relying only on native SDK coverage.
The application owns its RN patch.
Publishing the Synchro library does not apply this patch to downstream applications.
The support policy must state this consumer prerequisite.
Local logs are retained in
/tmp/synchro-rn082-validation.Idnu2R-logs.The original fmt 11.0.2 failure remains in the issue history.
The first iOS build emitted four Swift diagnostics stating exit code zero with no further output.
The build returned success and produced both native slices.
Those diagnostics remain in the retained build log.
mdspinali commentedon Oct 4, 2026
Decision
The operator approved RN 0.82.1 minimum adoption and another release candidate.
The candidate version is
0.4.0-rc.2.RN 0.82.1 uses the explicit upstream fmt 12.1.0 iOS backport.
Existing RN 0.83 support remains required.
Consumer documentation must explain the application-owned RN patch.
Required validation
Complete local Mac and Linux desktop validation before CI starts.
Use GPT-6.1-Sol workers and independent Astra release review.
Keep the existing semantic corpus, assertions, and structured zero-skip checks.
Bind support evidence to the exact clean source commit and executed environment.
Resolve #304 before current iOS certification.
The isolated implementation branch starts at
7bc2f7a34b619099edd6cb0645e44de19fca1e7a.No implementation or release gate is complete.
The existing assignment candidate in #300 requires a separate integration scope decision.
mdspinali commentedon Oct 4, 2026
The next candidate remains
0.4.0-rc.2.Support decision
SUP-RN-IOS-MIN-001andSUP-RN-ANDROID-MIN-001.0.82.1on the current stable platform.0.83.10for their validation.>=0.82.1 <0.84.0and React>=19.1.1 <20.0.0.19.1.1with the minimum RN fixture.Dependency input
The RN
0.82.1fixture uses the exact fmt12.1.0backport.The patch changes the fmt pod version, source tag, and RCT-Folly dependency.
Its upstream commit is
faeef2b90a56633ad44289b994d31e7ce590b145.Its SHA-256 is
da0bcf392ec9b086fab5f540a1ead36684ad7675db2e453d7a83e3ffd1524011.The consumer application must retain this patch before CocoaPods installation.
Installing the Synchro package does not patch a consumer application automatically.
The documentation states this requirement.
Open validation work
Astra found an incomplete positive validator fixture and an ineffective fallback control.
Sol corrected both source gaps without reducing the support requirement.
Independent source review and executable acceptance remain separate.
Published Synchro
0.3.1requires RN>=0.83.0 <0.84.0.Its upgrade proof cannot install that predecessor on RN
0.82.1with valid dependencies.The correct upgrade path remains under review.
No dependency checks will be bypassed.
The desktop has the required Android images and usable KVM acceleration.
Application execution and the complete local test gates remain pending.
The iOS 16 minimum gate still needs an accessible compatible Mac.
The release integration scope also remains pending.
No CI, push, pull request, or release publication has started.
No candidate certification or issue closure is claimed.
mdspinali commentedon Oct 4, 2026
RC.2 preparation now uses
0.4.0-rc.2.The tag will be
v0.4.0-rc.2.No CI, push, pull request, tag, or publication has started.
Source preparation
b855f6dcc49d529d71c77b921b48930743214398.0.82.1and React19.1.1from both workspace and application resolution.12.1.0and Folly's matching fmt dependency.0.83.0checkout at7bc2f7a34b619099edd6cb0645e44de19fca1e7a.0.83.10predecessor, then the RN0.82.1candidate.0.83.x. No peer bypass permits a minimum predecessor installation.Executed focused validation
These commands passed on clean commit
b4f309e9c710ece462a236959a821e7ee7b8691fwith Node22.22.0:Structured results report zero failures and zero skips.
The runtime helper runs nine tests.
Contract, driver, and scenario results report 162, 786, and 357 tests respectively.
Packaged smoke structure and release artifact controls report 18 and 32 tests respectively.
The version contract runs one test.
The released update check confirms two immutable update scripts.
Minimum source preparation, lint, and unit execution also passed on that clean commit:
The Jest result contains 239 passed tests, zero failures, zero pending tests, and zero todo tests.
CocoaPods installation completed.
These results do not establish native certification or final release signoff.
Demonstrated negative control
The full
make test-conformance-driversgate passed on clean baselined27f7d5135937a415082842a298565769f8e2afc.The isolated clean mutant
173b28f6cd882ba803dc6fb249a372fff31165eapermits invalid explicit application paths to select the valid default.The same full gate fails the empty, relative, and missing path controls.
No production or test assertion was weakened.
Retained failures and corrections
override exportsyntax. The source now uses supported assignments and explicit recursive workspace propagation.skip-buildfor non-gate preparation only.make verify-contractinstalled and verified them.All failed logs remain in the owned local release evidence directory.
Remaining source review and release blockers
Astra reported two additional source binding defects:
The implementation worker is preparing bounded corrections in the existing proof home.
Astra must review the corrected source before complete platform validation and release acceptance.
The release scope decision for issue #300 remains pending.
An accessible iOS
16.4and Xcode16.4host remains required for minimum native certification.The local host cannot provide that cell.
mdspinali commentedon Oct 4, 2026
RC.2 local validation update
The committed version is
0.4.0-rc.2.The planned tag is
v0.4.0-rc.2.No tag, CI dispatch, push, or publication occurred from this task.
Clean integrated source:
d205f479e1afeaa3adc759b0f830fcd98c8ccd9c.Completed evidence
make ci-source-qualitypassed on the Mac and desktop10.0.0.86on that exact clean source.Makefile:562-567.make lint-rn test-rn-unitpassed for the exact minimum fixture on the same clean source, with 239 tests in 10 suites.make test-rn-bridge-transactions-iospassed all 11 tests for RN 0.82.1 on iOS 27 and iOS 18.1.make rn-runtime-checkcalls passed after the minimum and current native builds.The supported iOS gates used owned simulator UDIDs.
Their complete result bundles remain in
.ignore/release-rc2/evidence/.The exact source, lock, installed RN, installed React, and fmt patch identities remain in the fixture runtime records.
Retained failures and active work
The first desktop source-quality attempt failed because the copied checkout lacked published release tags.
Fetching the published tags corrected that prerequisite.
The complete desktop gate then passed on the integrated source above.
The first RN 0.83.10 iOS build failed because the Mac disk became full.
Its structured result contained zero tests and was rejected.
The primary retained that result and removed obsolete task outputs.
The complete gate then passed after disk cleanup.
The first Android bridge attempt built its APK but could not install it into the full 800M emulator data partition.
The corrected owned emulator has 2 GiB RAM and an 8 GiB data partition.
Its measured guest is Android 17, API 37, REL, x86_64.
The complete retry ran 16 tests, with 7 failures and zero skips.
Those failures report a missing app database directory during initialization.
The root cause remains under investigation.
No test assertion or selection changed.
Complete Android failure logs and XML remain retained.
The desktop broad integration mutation gate is running from the exact source above for #305.
The required iOS 16.4 native gate still needs a compatible host.
Full scenario, upgrade, package, security, and final release signoffs remain pending.
These completed results do not establish complete RN certification or release acceptance.
mdspinali commentedon Oct 4, 2026
Local preparation uses version
0.4.0-rc.2and intended tagv0.4.0-rc.2.No CI, tag, or publication started for this change.
Additional executable evidence ran on clean commit
d205f479e1afeaa3adc759b0f830fcd98c8ccd9c:make test-swift-unitpassed all 351 tests through structured xcresult parsing.The first current-RN iOS run failed because the Mac disk became full.
The structured parser rejected its zero-test result.
The failed bundle and log remain with the later passing results.
Only task-owned compiler outputs were removed before the corrected run.
Android diagnosis found that
ContextImplattempted database directory creation and receivedmkdir failed: ENOENT.The saved retry also records disconnected external FUSE storage before instrumentation.
The evidence does not identify the unavailable parent component or prove a Synchro initialization defect.
The complete retry remains failed with 7 failures among 16 tests.
No SDK directory workaround was added.
The failed installation, retry XML, and per-test logcats remain retained.
The desktop also reproduced #305 after 21 completed mutation categories.
Its selected seed-portability assertion passed, but parent setup expired clients that unselected callbacks did not create.
Commit
3d95bc20f37f18af00e665ae0952b1439aa503c4moves those existing setup calls before their unchanged assertions.It also retains scheduled mutation failure diagnostics.
Independent source review and complete executable validation are in progress.
RN minimum certification remains incomplete.
The required iOS 16.4 host, Android storage cause, complete semantic corpus, packaged lifecycle gates, and final signoffs remain pending.
mdspinali commentedon Oct 4, 2026
Complete Mac Swift Candidate validation passed on clean
0110c472cb75cd05f7b618a9939db80107eb7916.The source SHA remained unchanged and the worktree remained clean.
Command:
make ci-candidate-swiftwith the owned PostgreSQL fixture and supported artifact paths.Actual host: macOS
27.0.1, Xcode27.0, build27A266a, PostgreSQL18.3.The earlier missing-PG-binary environment failure remains retained.
The correction supplies
SYNCHRO_CONFORMANCE_PG18_BINDIRfrom the actual PostgreSQL18 binary directory.Separately, the corrected short-path Mac PostgreSQL gate passed on clean
3d95bc20f37f18af00e665ae0952b1439aa503c4.Command:
make test-rust-pg PGRX_TARGET_DIR=/private/tmp/synchro-rc2-pgrx-20261004.It executed 430 tests with zero failures, ignored tests, or filtered tests.
The failed long-path attempt remains retained with its measured socket-length cause.
Retained evidence includes
ci-candidate-swift-0110c472.log, its source/status/exit records, and copied integration and schema xcresult bundles.PostgreSQL evidence includes
rust-pg-short-path-3d95bc20.logand its source/status/exit records.The required iOS16.4/Xcode16.4 package cell remains unavailable locally.
Current-platform results do not replace that minimum-cell proof.
Android, sealed-package, final integrated review, and release gates remain pending.
No CI, push, tag, or publication started for this RN candidate task.
mdspinali commentedon Oct 4, 2026
The RN candidate branch now contains the reviewed platform and workflow compiler changes.
Current clean commit:
67f95489a2b9a5b6d564cebbd36f8299248a352c.Change
27A266a.REL.RELEASE.md:224states the Xcode27 simulator limit and the separate iOS16.4 native gate.Astra accepted the complete final platform and compiler source proposals.
The primary inspected and integrated their complete diffs.
Local executable evidence
make lint-workflowspassed on clean67f95489a2b9a5b6d564cebbd36f8299248a352c.Initial and final source identities matched.
The exact pinned action parser produced one unchanged command for each folded Android input.
The parser came from commit
a421e43855164a8197daf9d8d40fe71c6996bb0dwith verified Git blob identity.All 14 shell controls passed on that clean source.
Incorrect properties, transport failures with matching stdout, and a filter failure prevented Make.
Matching probes reached the unchanged Make command.
The simulated Make failure remained exit42.
These isolated shell controls use diagnostic commands and provide no native test result.
Both committed compiler negative controls failed as required:
.yamlworkflow: cleanf0ae3fa790f40f2f4c5d698338ce5e231be69b94, Make exit2.cb43fa9b6e8e671c836800f355853e0a6f14939b, Make exit2.The exact
xcode-27allowance passed without changing hosted workflow routing.Full integrated Mac source-quality execution remains active.
The desktop currently fails SSH banner exchange.
The complete Android and iOS16 minimum gates remain pending.
This task has not started CI or published the candidate.
mdspinali commentedon Oct 4, 2026
Both complete local source-quality gates passed on clean
67f95489a2b9a5b6d564cebbd36f8299248a352c.The primary inspected retained structured results and exact initial/final source identities.
Every required test executed.
No test failed, skipped, or produced an unexplained flaky outcome.
Both commands returned exit0.
Initial and final source identities matched, and both worktrees remained clean.
Rust executed 78 core tests and an empty auxiliary documentation harness.
The strict Rust parser accepted the positive aggregate and zero failure, ignore, and filter counts.
The first local summary observer incorrectly required a positive count in the empty documentation harness.
Its failed assertion remains recorded and was corrected without changing any gate or test.
The Mac run completed all 27 source-quality targets in their declared order.
The desktop used a separate committed checkout while the broad mutation run retained its original source.
The documented test prerequisites, lockfiles, checks, and parser controls remain unchanged.
Retained summaries:
.ignore/release-rc2/mac-source-quality-67f95489-summary.json..ignore/release-rc2/desktop-source-quality-67f95489-summary.json..ignore/release-rc2/dispatch/mac-final-source-quality-report.md.The complete RN iOS Candidate gates are now in preparation on the owned iOS27 simulator with Xcode27.
The current Android and iOS16.4 minimum runtime gates remain pending.
Source-quality success does not replace those native or package gates.
This task has not started CI or published the candidate.
mdspinali commentedon Oct 4, 2026
Complete Mac source quality passed on clean commit
2c8bd17c0ad53031dae1b4a28adbbc8f0bd8587e.Xcode remained
27.0, build27A266a.Validation
Command:
make ci-source-quality PGRX_TARGET_DIR=/private/tmp/synchro-rc2-pgrx-20261004.The complete target returned
0.Its initial and final source hashes matched, and both tracked statuses were clean.
The primary independently parsed the retained results:
Fresh adapter, seed, and extension artifact preparation also returned
0on this exact clean commit.The previous
67f95489artifact identities remain unchanged.Raw records use
mac-integrated-2c8bd17c-20261004T224429Zunder the owned dispatch directory.Structured client results remain in
.ignore/release-rc2/evidence/mac-integrated-2c8bd17c-20261004T224429Z-source-quality.Retained native attempt
The earlier complete RN 0.82.1 attempt on
67f95489passed fixture preparation, lint, and 239 unit tests.It failed before native compilation because the local runner created a 162-byte Watchman socket path.
Its full logs, exit 2, current tuple evidence, and successful owned-service cleanup remain retained.
The next runner will use a short owned temporary directory.
Watchman, assertions, test selections, and SDKs remain unchanged.
Both complete native RN tuple gates and the separate iOS 16.4 minimum gate remain required.
Integrated desktop validation is in progress.
No CI, tag, pull request, or publication has started from this RN preparation task.
Issue #303 remains open.
mdspinali commentedon Oct 5, 2026
The RN 0.82.1 app builds with fmt 12.1.0 under Xcode 27.
The complete candidate gate then fails its iOS smoke suite.
This result does not certify the minimum runtime or permit CI or release.
Execution
2c8bd17c0ad53031dae1b4a28adbbc8f0bd8587ebefore and after execution.27A266a.0B03ABF6-AC85-46BE-9A69-BE241BEC19BE.make ci-candidate-rn-ios RN_RUNTIME_VERSION=0.82.1.Observed failures
Eight sync-flow tests fail.
Several expose
NotStartedError: Sync has not been startedthrough the native bridge.The lifecycle failure occurs after the harness records
lifecycle:foreground.Push/pull, conflict, atomic-write, and offline-first failures also expose that error.
The busy-main-run-loop messages are observations, not an established root cause.
Two conformance host tests fail the
conformance-harnessvisibility assertion.Detox reports that the view does not meet its 75 percent visibility threshold.
The worker is inspecting the completed raw results and relevant source before selecting a correction.
No synchronization setting, assertion, production behavior, or test selection has changed.
No replacement attempt has started.
The subsequent bridge, package consumer, predecessor upgrade, scenario, and final runtime gates did not execute.
The RN 0.83.10 candidate gate did not start after the failed minimum gate.
The iOS 16.4 minimum gate also remains pending.
Retained execution prefix:
mac-rn-ios-integrated-2c8bd17c-082-20261004T232830Z.Raw Jest result:
.ignore/rn-runtime/0.82.1/clients/react-native/example/artifacts/ios-test-results.json.The complete log, result copies, source records, and prior failed attempts remain preserved.
mdspinali commentedon Oct 5, 2026
The failed Mac attempt used incorrect local endpoint and authentication bindings.
This finding changes the diagnosis of that attempt. Its failed results remain retained.
Exact clean source:
2c8bd17c0ad53031dae1b4a28adbbc8f0bd8587e.clients/react-native/example/src/App.tsx:26selects port 8091 for the iOS example.App.tsx:31contains the documented example test token.SYNCHROD_PG_PORT=9182andSYNCHRO_TEST_PORT=9182.These mismatches establish a local execution setup defect.
The initial start case does not prove readiness. It only awaits lifecycle arming before stop.
Native start can return while its durable retry remains pending.
The later step labels also do not identify which native call failed.
Multi-user and seed-resume failures do not establish measured
NOT_STARTEDoutcomes.The primary stopped the proposed debugger run before any Make reproduction.
Complete native validation now uses the unchanged example's actual port and test-authentication bindings.
Private conformance credentials remain unchanged for the separate provisioned adapter.
No production code, token, endpoint constant, assertion, or native retry behavior changed.
The previous 27-test result remains failed, with 17 passes, ten failures, and zero skips.
This setup correction does not prove that all ten failures have one cause.
The two conformance launch-visibility failures remain separate outcomes.
Source-only lifecycle interleavings remain unmeasured and do not justify a speculative production correction.
Full native gates and release acceptance remain pending. No CI or publication has started.
35 remaining items
mdspinali commentedon Oct 9, 2026
The requested minimum-version consumer build passed on clean
6e89fe57e512aba997b708f4869e07af423fca55.Command:
make test-consumer-rn-ios SYNCHRO_RN_VERSION=0.82.1, within the full RN iOS Candidate.The owned helper verified the exact clean source before starting the Candidate.
The source remains clean and unchanged while that complete gate runs.
The consumer installed
React-Core0.82.1andfmt12.1.0.Xcode 27 completed the device and simulator builds.
The consumer target reported
Packaged React Native iOS consumer build passed.The RN
0.83.10consumer target also passed.The local log preserves the dependency resolution and both complete build results.
This result validates the fmt backport for the RN 0.82.1 consumer build.
It does not replace runtime, upgrade, corpus, packaged-cell, security, or Candidate checks.
The full RN iOS Candidate has advanced to its package upgrade gate.
The RN Android corpus repair remains in diagnosis.
No PR, CI, merge, tag, release, or publication has occurred.
mdspinali commentedon Oct 10, 2026
Validation on
e2c3024380e288a65efdf2f9cbae27b7aefe87c0make ci-source-qualitypassed in 931 seconds on desktop10.0.0.86.The worktree remained clean before and after the gate.
The gate includes documentation, version, package, build, lint, contract, harness, and unit checks.
Structured Kotlin and React Native results were retained in the owned result directory.
Unrelated installed SQL remained unchanged.
Only the verified quality-owned ADB service was stopped. It had no connected devices.
Full server, Swift, Android, React Native, and packaged support-cell gates remain active or pending.
The known unfixed dependency advisories remain open. This result does not waive them.
No release certification is claimed.
mdspinali commentedon Oct 10, 2026
Full Swift validation on
e2c3024380e288a65efdf2f9cbae27b7aefe87c0make ci-candidate-swiftpassed in 1,247 seconds on the local Mac with Xcode 27.The complete helper exited 0 after fixture cleanup and clean-worktree checks.
Test results and tested products were copied and hash-verified before completed cache removal.
The main Swift archive retains 901 files.
Each upgrade archive retains 17 product files.
The Mac had 4.7 GiB free after cleanup.
Full React Native iOS and Apple support-cell validation has started on the same clean commit.
Server and Android validation remain active.
No push, tag, release, or master merge has occurred.
mdspinali commentedon Oct 10, 2026
Full Kotlin validation on
e2c3024380e288a65efdf2f9cbae27b7aefe87c0make ci-candidate-kotlinpassed on desktop10.0.0.86.The helper confirmed a clean worktree after the phase.
The retained native XML reports contain 52 tests with zero failures, errors, or skips.
The first report-copy attempt used the wrong instrumentation directory and failed.
The corrected collector used the Makefile's
conformance-appresult path and passed.No test, selector, assertion, or gate changed.
Full React Native Android validation is now active on the same clean commit.
Full React Native iOS, server, and packaged support-cell validation remain active or pending.
No complete release certification is claimed.
mdspinali commentedon Oct 10, 2026
Validation update
The complete server run on
e2c3024380e288a65efdf2f9cbae27b7aefe87c0failed after 4,090 seconds.Its binding diagnostic and readiness throughput failures remain recorded.
The run did not reach the seven integration mutants or the server support cell.
Commit
75de88976420cdd9d5b59ea8915bb80aa7b88ad5preserves the last native resolution error before cancellation.The focused real binding proof passed in 87 seconds on that clean commit.
Both corrupt captures failed image verification. The restored capture passed.
This focused run used
PARTIAL=1. It does not certify the complete gate.Commit
cc4ae3c26b5156342984bc2216074aa9683435b8passed 254 harness tests and 1,252 driver tests.The focused readiness run passed in 41 seconds on that clean commit.
All 240 writes completed inside the unchanged 30-second window.
Maximum scheduled-start delay was 207.620 milliseconds.
Total successful execution duration was 1.974 seconds. Maximum execution duration was 239.163 milliseconds.
All 150 readiness samples passed.
These measurements do not establish the cause of the earlier throughput failure.
The independent review found a timing log outside the existing assertion boundary.
Commit
b536bbf94a125d58629a7532975342c93b733a5bmoves that output into existing diagnostics.The correction does not change the workload, threshold, SQL, assertion, or mutation classifier.
Independent review and complete validation of this correction remain pending.
The early-publication negative control is running separately. Its deliberate defect will not enter the work branch.
Android update
The full Kotlin and React Native Android candidate phases passed on clean
e2c3024380e288a65efdf2f9cbae27b7aefe87c0.The React Native phase passed 27 smoke tests, 16 bridge tests, both consumer version builds, upgrade validation, and the complete corpus.
The later packaged-fixture preparation failed because its registry did not activate.
The overall helper result remains failure, with successful cleanup and unchanged source.
A separate owned fixture now runs the four Android support cells with the verified candidate artifacts.
Fresh fixture preparation passed. This matches the separate fixture boundary used by CI.
No registry activation requirement was removed or weakened.
Remaining work
devcommits before the work branch push and pull request.mdspinali commentedon Oct 10, 2026
Archive reuse correction
The first independent review rejected
24b72d55db42a66d1897cf5b51134ecf9a1c00d5.Persistent cached bytes could change between hashing and extraction.
The rejected review remains in the validation records.
Commit
cfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666restores the private-directory boundary.It copies cached bytes into the existing private archive before size and SHA-256 verification.
Verification and extraction use that snapshot.
The correction adds no configuration option, dependency, helper, fallback, or validator exemption.
Independent review accepted the correction and its deletion check.
Primary validation on the exact clean commit passed
make test-android-emulator-prepare.The structured result contains 89 tests, zero failures, zero errors, and zero skips.
The prerequisite result also passed.
Demonstrated negative control
The deliberate mutant
102d2075a1bd7e0170ce6c22fb0f538baf29f078restores direct extraction from the persistent cache.The same complete Make target ran 89 tests and failed exactly one test, with zero skips.
test_cache_replacement_after_hashing_installs_private_snapshotobserved the replacement executable instead of the original fixture executable.This proves that the control detects the rejected behavior.
The mutant remains outside the work branch and will not be pushed.
Runtime Android cell validation remains pending on the corrected commit.
The earlier download failure and successful earlier cells keep their original source identities.
Source-quality validation on clean
cc4ae3c26b5156342984bc2216074aa9683435b8passed in 901 seconds.Its Kotlin results contain 748 tests in 46 suites. Its RN unit result contains 269 tests.
All structured results have zero failures, errors, and skips.
Final source-quality validation remains required after the runtime cells finish.
mdspinali commentedon Oct 10, 2026
Complete RN iOS candidate result
make ci-candidate-rn-iospassed on cleane2c3024380e288a65efdf2f9cbae27b7aefe87c0in 7,784 seconds.The host used Xcode 27 and the installed iOS 27 simulator.
The source remained clean. Candidate artifacts then built successfully in 11 seconds.
The subsequent packaged-fixture restart failed in 94 seconds because its client registry did not activate.
The overall helper result remains failure status 2. Its candidate result remains a separate pass.
This failed setup does not establish a passing lifecycle cell.
Fresh cell fixture
A separate owned fixture now runs the four Apple lifecycle cells with the completed artifacts.
Its extension manifest, adapter and seed sidecars, copied bytes, and client artifact hashes were verified.
Fresh fixture preparation passed. The iOS 17 cell is running.
The registry activation requirement remains unchanged.
Completed RN upgrade and main iOS build caches were removed after their gates passed.
Both upgrade applications, the final corpus application, debug symbols, bridge results, and hashes remain preserved.
Mac free space increased to 12 GiB before the Apple cell builds.
Active build files and unrelated user files were preserved.
Final source, server, and cell results remain required before the branch push and CI.
mdspinali commentedon Oct 10, 2026
Android lifecycle cells passed
All four required Android cells passed on clean
cfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666.The run used the audited private-snapshot archive correction.
It preserved the previously built native artifacts and verified their hashes.
Native client and package source inputs are unchanged from producer commit
e2c3024380e288a65efdf2f9cbae27b7aefe87c0.SUP-ANDROID-MIN-001: Android API 24.SUP-ANDROID-CURRENT-001: Android API 37.SUP-RN-ANDROID-MIN-001: RN 0.82.1 on Android API 37.SUP-RN-ANDROID-CURRENT-001: RN 0.83.10 on Android API 37.Every cell records passed terminal connect, push, pull, kill, and resume operations.
Each operation has a positive test count.
Every cell records two durable pending writes before termination and zero after resume.
Every cell verifies the remote value and the resumed write on the real server.
Initial and resumed process identifiers differ.
The pinned emulator is version 37.2.12, build 16428233.
The helper returned zero. Cleanup passed, source stayed clean, and unrelated SQL stayed unchanged.
These are local source-consumer results. They are not sealed release-package results.
The earlier failed downloads and setup attempts remain visible with their original source identities.
Dependency scan
The fresh configured Trivy scan passed on the same clean commit.
Its exit status is zero, and its SARIF contains zero findings.
The CI scanner flags and advisory policy remain unchanged.
This result does not grant an exception for the separate unresolved dependency advisories.
Final source quality, Apple RN cells, complete server validation, and the readiness negative control remain pending.
mdspinali commentedon Oct 10, 2026
Final source quality and audits
make ci-source-qualitypassed on cleancfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666in 461 seconds.Its preserved Kotlin results contain 748 tests in 46 suites.
Its RN unit results contain 269 tests.
The structured results contain zero failures, errors, and skips.
The completed owned ADB service had zero connected devices and stopped successfully.
The configured Trivy scan passed on the same clean commit with zero SARIF findings.
Its policy is unchanged.
Both full package-manager audits returned status 1 on that clean commit.
The RN audit still reports High Braces and Moderate sprintf-js and stream-json advisories.
Deprecation reports also remain visible.
The documentation audit reports ten Moderate affected records through postcss-selector-parser.
The named compression, Handlebars, and shell-quote fixable advisories are absent.
Current upstream evidence
Official npm metadata reports Braces 3.0.3 and sprintf-js 1.1.3 as their latest versions.
Those versions remain inside their reported affected ranges.
Stream-json 3.7.0 exists, but the declared consumer ranges exclude it.
Detox 20.51.4 still declares stream-json
^1.7.4.The authored lock also contains bunyan-debug-stream 3.1.1 with stream-json
^1.7.5.The latest published stream-json 1.x version remains 1.9.1.
The full audit reports depth, JSONC comment scanning, and Assembler prototype-pollution advisories for that version.
No forced major replacement or advisory suppression was added.
Expressive Code core 0.44.2 still declares postcss-nested
^6.0.1.Postcss-nested 6.2.0 declares postcss-selector-parser
^6.1.1.The separate documentation finding remains open.
The raw audit failures and registry metadata remain preserved.
No security exception or publication approval is granted.
Related blockers: #312, #328, #330, and #319.
mdspinali commentedon Oct 10, 2026
Mac support cells passed
The four local Mac cells passed on clean
e2c3024380e288a65efdf2f9cbae27b7aefe87c0.The completed helper returned status 0 and cleaned up its owned adapter and PostgreSQL cluster.
SUP-IOS-MIN-001: iOS 17.0 with Xcode 27.0.SUP-IOS-CURRENT-001: iOS 27.0 with Xcode 27.0.SUP-RN-IOS-MIN-001: RN 0.82.1 with iOS 27.0 and Xcode 27.0.SUP-RN-IOS-CURRENT-001: RN 0.83.10 with iOS 27.0 and Xcode 27.0.Each structured cell record reports successful connect, push, pull, process termination, and resume operations.
Each operation executed one test.
Each process restart used a different process identifier.
Each durable queue changed from two pending records before termination to zero after resume.
Each cell verified the applied remote value and the resumed server write.
The raw cell records, measured environments, artifact hashes, and cleanup results remain preserved.
These results certify local source consumers. They do not certify sealed release packages.
The SDK and package inputs are unchanged between that commit and
cfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666.git diff --exit-code e2c30243..cfdd99f7 -- clients Synchro.podspec Package.swiftreturned status 0.The later commits change server proof diagnostics and emulator archive handling only.
The earlier candidate helper restart failure remains visible in the previous comment.
This successful run used the separate fresh fixture required by the support-cell procedure.
No registry activation check was weakened.
Master, tags, and published packages remain unchanged.
mdspinali commentedon Oct 10, 2026
Complete local server validation passed
make ci-candidate-server ADAPTER_TEST_URL=postgres://127.0.0.1:1/not-ownedpassed in 5083 seconds.make test-consumer-serverpassed in 19 seconds.Both ran on clean
b536bbf94a125d58629a7532975342c93b733a5bon desktop10.0.0.86.The complete helper returned status 0.
The unrelated installed SQL checksum remained unchanged.
The candidate records 435 Rust tests across three harnesses.
Its normal Go JSON records contain 1319 passing test events, zero failure events, and zero skip events.
The integration mutation gate reports seven detected mutants and zero surviving mutants:
cursor-advancementwal-acknowledgmentmutation-conservationchecksum-correctnessscope-isolationprogress-orderpull-deduplicationThe readiness load completed 240 commits with 150 samples.
Maximum heartbeat age was 0.735 seconds.
Maximum WAL lag was 1237360 bytes.
Maximum commit lag was 0.632 seconds.
Maximum scheduled start delay was 1.170197 milliseconds.
The original workload, sample interval, assertion, and acceptance thresholds remained unchanged.
SUP-PG-LINUX-X64-001passed on Ubuntu 24.04 x86_64 with PostgreSQL 18.3.Its structured record verifies connect, push, pull, process termination, and resume.
Each operation executed one test.
The restarted process used a different identifier.
The record verifies equal replay, the applied remote value, and the resumed server write.
Server and conformance inputs are unchanged from this commit to
cfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666.git diff --exit-code b536bbf9..cfdd99f7 -- conformance extensions apireturned status 0.The later delta changes emulator archive handling and its documentation only.
The separate focused readiness mutant remains active.
This comment does not claim its result.
Earlier failures remain preserved in the issue history.
Master and publication remain unchanged.
mdspinali commentedon Oct 10, 2026
Focused readiness negative control passed
make test-integration-mutant INTEGRATION_MUTANT_ID=readiness-position-equalitypassed in 244 seconds.It ran on clean
b536bbf94a125d58629a7532975342c93b733a5bon desktop10.0.0.86.The owned helper returned status 0.
It used the completed server gate artifacts from that same commit.
The gate reports:
The structured mutant result failed the named assertion.
The failure was not an environment or setup failure.
The normal baselines passed before and after the mutant.
This result verifies the corrected assertion boundary.
It does not claim execution of the complete extended mutation manifest.
The full normal server gate and seven required integration mutants already passed on the same commit.
Its server and conformance inputs are unchanged at final source
cfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666.The PR evidence review accepted the corrected claims and completed its deletion and simplification check.
The local Mac and desktop checks are complete.
The upstream dependency findings remain open and block publication.
Master, release tags, and published packages remain unchanged.
mdspinali commentedon Oct 10, 2026
Merged into dev
PR #333 merged as
538e1bf7d302d098d33659cb507a2489de761159.It preserves prior dev
cd28ae93c9604f82bbc92ba5cd3cfe034e5dc648and sourcecfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666.All approved RN, fmt, and native repairs remain included.
CI run 38029034667 completed successfully before the merge.
CI checked synthetic merge
6634927febe915ed40e7f6024279d14cb9a82c47.Its source tree equals both the tested source and the actual dev merge tree:
1294b9f7a9fbdbb0900d03746275bb2ad3f92811.The full candidate jobs are restricted to master pushes by the authored workflow.
They did not run for this PR.
The complete local candidate and support-cell results remain tied to their exact source commits in earlier comments.
This comment does not replace those results with a claim of complete candidate CI.
Master remains
4f7967b3b23dd7da4dab226aa2a09baf89c0a219.PR #317 remains a draft, and its promotion checks rerun automatically for the new dev head.
The remaining upstream dependency issues still block publication: #312, #328, #330, and #319.
No master merge, release tag, publication, security exception, or protected approval occurred.
mdspinali commentedon Oct 11, 2026
Fixed in
538e1bf7d302d098d33659cb507a2489de761159Change
The supported RN range is 0.82.1 through 0.83.x.
RN 0.82.1 iOS consumers use the documented upstream fmt 12.1.0 backport with Xcode 27.
Peer ranges, support cells, native package requirements, workflows, and documentation agree.
The approved Apple minimum is iOS 17.
Unmodified RN 0.82.1 is not represented as passing this Apple toolchain.
Source:
clients/react-native/package.json:88,clients/react-native/.yarn/patches/react-native-npm-0.82.1-c9dce9d96d.patch,conformance/support-matrix.json:133, andRELEASE.md:233.Validation
make ci-candidate-kotlinpassed on cleandd2d77f1491cfea88b31613b47998ecc2b4734c9.make ci-candidate-rn-androidpassed on cleane2c3024380e288a65efdf2f9cbae27b7aefe87c0.make ci-candidate-rn-iospassed on that clean source with Xcode 27 and iOS 27.e2c3024380e288a65efdf2f9cbae27b7aefe87c0.cfdd99f7e3037c3efc7a0e6dfab7815d3bf8e666.git diff --exit-code e2c30243..538e1bf7 -- clients Synchro.podspec Package.swiftreturned zero.git diff --exit-code cfdd99f7..538e1bf7returned zero.make version-check,make check-released-update-scripts, and the merged PR checks passed on the clean integrated source.Execution evidence: complete RN iOS Candidate, Apple lifecycle cells, Android lifecycle cells, and integrated CI evidence.
The original fmt compiler failure and every later failed execution remain preserved.
This closes RN minimum adoption and its local certification criteria.
It does not close the separate dependency findings or replace the required sealed Package gate.