• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

orion-ecs / keen-eye / 30105812534
64%

Build:
DEFAULT BRANCH: main
Ran 24 Jul 2026 03:37PM UTC
Jobs 1
Files 988
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

24 Jul 2026 03:33PM UTC coverage: 64.302% (+0.07%) from 64.229%
30105812534

push

github

tyevco
fix(generators): Make bundle/serializer/replicated codegen compile for all component shapes (#1137-#1146)

These are latent codegen bugs: the emitted code only broke for type-shapes no
current consumer used, so CI stayed green. Each generator now emits code that
compiles against Core (and round-trips) for the triggering shape, proven by new
consumer-shape tests in KeenEyes.Generators.Tests.

- #1138 BundleGenerator no longer emits a consumer-side `partial class World`
  (which referenced Core-only archetypeManager/PreallocateBundleArchetypes and
  produced a duplicate Query<T>() across bundles). Bundle query/preallocation
  helpers are now extension methods on World (QueryBundleName(), and
  PreallocateBundleArchetypes()).
- #1137 SerializationGenerator no longer applies `?? throw` to non-nullable
  value-type Object fields (enum/Vector2/nested-struct/char) in the JSON and
  binary deserialize paths (CS0019).
- #1139 Binary string writes null-coalesce to string.Empty (no ArgumentNullException).
- #1140 Bundle Get/ref side strips nullability (no world.Get<T?>, CS0453).
- #1141 Every generator's field collection skips IsImplicitlyDeclared fields, so
  auto-property backing fields no longer emit invalid <X>k__BackingField.
- #1142 Nested-bundle fields recurse into a generated Add{Bundle}(World,Entity,bundle)
  overload instead of world.Add(entity, bundle) (CS0315).
- #1143 [Replicated] long/ulong fields emit real write/read code (two 32-bit ops)
  instead of #error.
- #1144 Serializer member/local identifiers are disambiguated by namespace so two
  same-named components in different namespaces no longer collide (CS0111/CS0128).
- #1145 Regression test locks in the existing KEEN100 diagnostic for >32 replicated fields.
- #1146 Migration graph gains edges for auto-migrations, so FindGaps no longer
  contradicts CanMigrate.

Closes #1137
Closes #1138
Closes #1139
Closes #1140
Closes #1141
Closes #1142
Closes #1143
Closes #1144
Closes #1145
Closes #1146

8495 of 12544 branches covered (67.72%)

Branch coverage included in aggregate %.

123 of 128 new or added lines in 6 files covered. (96.09%)

2 existing lines in 2 files now uncovered.

50829 of 79715 relevant lines covered (63.76%)

0.98 hits per line

Uncovered Changes

Lines Coverage ∆ File
4
97.37
0.8% editor/KeenEyes.Generators/BundleGenerator.cs
1
94.38
-0.03% editor/KeenEyes.Generators/SerializationGenerator.cs

Coverage Regressions

Lines Coverage ∆ File
1
94.38
-0.03% editor/KeenEyes.Generators/SerializationGenerator.cs
1
73.09
-0.22% src/KeenEyes.Network.Transport.Udp/UdpTransport.cs
Jobs
ID Job ID Ran Files Coverage
1 30105812534.1 24 Jul 2026 03:37PM UTC 988
64.3
GitHub Action Run
Source Files on build 30105812534
  • Tree
  • List 988
  • Changed 9
  • Source Changed 6
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #30105812534
  • d5c9dc99 on github
  • Prev Build on main (#30098334396)
  • Next Build on main (#30110399467)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc