The GitHub Actions job "Lint PR" on fory.git/fix-scala-json-nested-case-class 
has failed.
Run started by GitHub user pjfanning (triggered by pjfanning).

Head commit for run:
637b5063faa75871698353e97ab7c2bbff059912 / PJ Fanning 
<[email protected]>
fix(scala): narrow the case-class claim and keep default fetches conditional

Addresses the second and third AI review rounds.

The receiver belongs only to the model shapes that can carry instance defaults.
The full constructor is now private and its public form keeps its previous
signature, so `fory-json-kotlin`, whose call site uses that shape, is untouched.
`JsonObjectModel` also rejects a receiver that no default is bound to, so the
invariant is total rather than checked per parameter.

The unreconstructible-case-class claim applies only when the companion is
unreachable. A reachable companion whose primary constructor this module does 
not
support, such as a varargs or non-public one, keeps its previous handling 
instead
of becoming a hard failure.

A companion that exists but cannot be linked is no longer reported as an
unreachable companion: only absence means the type has no companion, and a
`LinkageError` now surfaces with the companion it failed to load.

The workspace creator no longer hoists the defaults receiver into a local: that
local ran on every construction, while the value is needed only on a missing
argument. Both codegen paths now fetch it on the branch that uses it.

GraalVM registration is narrowed to the members the Scala module looks up, and
its helpers are named for the Scala companion they actually detect.

Both rejection tests now assert their message. An outer-bound case class also 
has
no reachable companion, so without that assertion either branch alone satisfied
both tests, and the method-local case must be declared inside an object to reach
the companion check at all.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>

Report URL: https://github.com/apache/fory/actions/runs/33332337251

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to