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

Tatsh / dade / 34171210984
100%

Build:
DEFAULT BRANCH: master
Ran 07 Sep 2026 11:49PM UTC
Jobs 1
Files 297
Run time 1min
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

07 Sep 2026 11:44PM UTC coverage: 96.259% (-3.7%) from 99.965%
34171210984

push

github

Tatsh
sopranos: turn every packet to face the room, and dress a crowd once

The console never culls a back face. The Graphics Synthesizer has no such
hardware, and MiniGL's cull test at FUN_001d9af0 is dead code in the shipped
build: four of its five callers are unreferenced and the fifth's caller is too,
while cooked geometry goes straight to the GS as DMA packets from FUN_001c3938.
So the cooker had no reason to keep the winding consistent and it did not, which
cost a viewer that culls the pool table felt and the couch cushions. Nothing in
the files marks the intent either: the material records are identical apart from
name and texture, no GIFtag bit tells the two facings apart, and a mesh block is
twelve bytes and thirty-six zeroes.

Each packet is one authored strip of one surface, so orient() turns it to face
the space the player stands in, a room from the inside and a table from the
outside. A packet too close to a right angle to call leaves its mesh marked, and
the glTF draws those materials from both sides rather than risk losing them.

The wardrobe had the same shape of problem. FUN_001c3938 draws item n when bit n
of a 64-bit mask is set, and gameplay code supplies that mask: it is not in the
.OLV, where every candidate field is constant across instances of one prototype,
nor in a section's remaining tables, which are bones, spheres and MORF morph
targets. Keying a set on the whole name put *Shirt_Red17, *Shirt_bage18 and
*Shirt_Long16 in three sets of their own and sent a passer-by out in three
shirts and three pairs of trousers. The key is now the part of the body a name
leads with, taken from the cooker's own vocabulary over the game's 765
interchangeable pieces, with three refinements the artwork forced: a shirt is
the layer under a suit rather than a rival to it, a section holding two
characters dresses only the more complete one so a cook's trousers stay off a
waiter, and a piece covering four fifths of the model is a one-piece costume
that ... (continued)

5508 of 5824 branches covered (94.57%)

Branch coverage included in aggregate %.

1156 of 1880 new or added lines in 21 files covered. (61.49%)

2 existing lines in 1 file now uncovered.

21430 of 22161 relevant lines covered (96.7%)

0.97 hits per line

Uncovered Changes

Lines Coverage ∆ File
194
13.55
dade/xg2/gltf.py
170
41.78
dade/xg2/xg1_level.py
160
25.23
dade/xg2/f3dex2.py
66
67.05
-32.95% dade/xg2/main.py
48
69.43
-30.57% dade/xg2/lzhuf.py
31
85.88
dade/xg2/xg1_objects.py
21
76.23
dade/xg2/skeleton.py
20
73.12
-26.88% dade/xg2/bmc.py
12
86.49
dade/common/gltf.py
2
98.5
-1.5% dade/xg2/extract_xg1.py

Coverage Regressions

Lines Coverage ∆ File
2
98.5
-1.5% dade/xg2/extract_xg1.py
Jobs
ID Job ID Ran Files Coverage
1 34171210984.1 07 Sep 2026 11:49PM UTC 297
96.26
GitHub Action Run
Source Files on build 34171210984
  • Tree
  • List 297
  • Changed 15
  • Source Changed 15
  • Coverage Changed 14
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #34171210984
  • 9a494f5c on github
  • Prev Build on master (#33945476628)
  • Next Build on master (#34205412750)
  • Delete
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