Commit Graph
1608 Commits
Author SHA1 Message Date
SamandClaude Opus 5.5 ec899b54bd comments: the XP-gain reader says why dropping the group bonus is safe
vmangos always sends 1.0, meaning none (Player.cpp:3039), so 1.12
shows no group-bonus line against it either.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:26:52 +07:00
SamandClaude Opus 5.5 d0846e2516 comments: the XP-gain reader says why dropping the group bonus is safe
vmangos always sends 1.0, meaning none (Player.cpp:3039), so 1.12
shows no group-bonus line against it either.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:26:52 +07:00
SamandClaude Opus 5.5 ace2624779 tests: the shipped-Lua archive-path floor follows the census to 3
BENILLA_FALLBACK_ICON held the fourth archive path the sweep counts, and
it is gone. The floor exists so the sweep never passes by matching
nothing, and it comes down as paths leave.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:26:52 +07:00
SamandClaude Opus 5.5 fadcf4d6b4 tests: the shipped-Lua archive-path floor follows the census to 3
BENILLA_FALLBACK_ICON held the fourth archive path the sweep counts, and
it is gone. The floor exists so the sweep never passes by matching
nothing, and it comes down as paths leave.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:26:52 +07:00
Sam 88eca028ee map: regenerate — sess/polish landing 2026-09-23 20:17:55 +07:00
Sam 7ef1ac3462 map: regenerate — sess/polish landing 2026-09-23 20:17:55 +07:00
SamandClaude Opus 5.5 751e1ed17f comments: protocol, the opcode table and its name list
1,065 comment lines become 340; the code is unchanged. Corrected:
- CMSG_CANCEL_CAST carried CMSG_CANCEL_AURA's doc;
- the inspect reply is parsed, then dropped;
- mount failures reach the player as error lines, so they are no
  longer a deviation;
- the pet-stable note moves from SMSG_INVALIDATE_PLAYER to the stable
  constants.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:17:23 +07:00
SamandClaude Opus 5.5 905e4d3d66 comments: protocol, the opcode table and its name list
1,065 comment lines become 340; the code is unchanged. Corrected:
- CMSG_CANCEL_CAST carried CMSG_CANCEL_AURA's doc;
- the inspect reply is parsed, then dropped;
- mount failures reach the player as error lines, so they are no
  longer a deviation;
- the pet-stable note moves from SMSG_INVALIDATE_PLAYER to the stable
  constants.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:17:23 +07:00
SamandClaude Opus 5.5 e27e68049a comments: protocol, the player and unit field accessors
1,040 comment lines become 387; the code is unchanged. The note that
item objects have no decode path is gone, since the same file decodes
them.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:14:22 +07:00
SamandClaude Opus 5.5 6f1810fc08 comments: protocol, the player and unit field accessors
1,040 comment lines become 387; the code is unchanged. The note that
item objects have no decode path is gone, since the same file decodes
them.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:14:22 +07:00
SamandClaude Opus 5.5 6e1e06f431 comments: protocol, the auth to reputation integration tests
1,039 comment lines become 472 across 19 files; the code is unchanged.
The movement test's claim that write() never serializes a transport
tail is gone: it does.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:12:46 +07:00
SamandClaude Opus 5.5 bfb5c008b8 comments: protocol, the auth to reputation integration tests
1,039 comment lines become 472 across 19 files; the code is unchanged.
The movement test's claim that write() never serializes a transport
tail is gone: it does.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:12:46 +07:00
SamandClaude Opus 5.5 972cfc06e8 comments: protocol, the world session, reader, wire helpers and the first writer sends
1,071 comment lines become 370 across 23 files; the code is unchanged.
The Warden refusal and the billing-time default now carry their reasons.
A gap note on cyclic splines described the app, not this crate, and is
gone.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:12:21 +07:00
SamandClaude Opus 5.5 d9673d438d comments: protocol, the world session, reader, wire helpers and the first writer sends
1,071 comment lines become 370 across 23 files; the code is unchanged.
The Warden refusal and the billing-time default now carry their reasons.
A gap note on cyclic splines described the app, not this crate, and is
gone.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:12:21 +07:00
SamandClaude Opus 5.5 4c2f3cd196 comments: protocol, the session events and their decoder
1,081 comment lines become 459; the code is unchanged. Corrections:
- MonsterMove's description sat atop MoveTimeSkipped's doc and
  documented the wrong variant; it is back on MonsterMove.
- GossipMenu's tuple doc gains its missing level.
- Four false claims are gone: "only primitives" on SessionEvent, a
  code field LoginFailed does not have, a broken object_scale link,
  and "filled from nothing else" on SpellChainTargets.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:11:09 +07:00
SamandClaude Opus 5.5 3512b69766 comments: protocol, the session events and their decoder
1,081 comment lines become 459; the code is unchanged. Corrections:
- MonsterMove's description sat atop MoveTimeSkipped's doc and
  documented the wrong variant; it is back on MonsterMove.
- GossipMenu's tuple doc gains its missing level.
- Four false claims are gone: "only primitives" on SessionEvent, a
  code field LoginFailed does not have, a broken object_scale link,
  and "filled from nothing else" on SpellChainTargets.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:11:09 +07:00
SamandClaude Opus 5.5 cb7576e2a7 comments: protocol, the loot, mail, meeting-stone, mirror-timer, monster-move and movement messages
812 comment lines become 264; the code is unchanged. JumpInfo's doc
called zspeed up-positive, against its own captured fact and every
consumer, which negate it; the up-positive formulas are gone.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:10:35 +07:00
SamandClaude Opus 5.5 90a28f3d76 comments: protocol, the loot, mail, meeting-stone, mirror-timer, monster-move and movement messages
812 comment lines become 264; the code is unchanged. JumpInfo's doc
called zspeed up-positive, against its own captured fact and every
consumer, which negate it; the up-positive formulas are gone.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:10:35 +07:00
SamandClaude Opus 5.5 018af495bf comments: protocol, the chat, client, combat-log, death, duel, gameobject, ticket, gossip and group messages
1,079 comment lines become 390; the code is unchanged. Corrected
against the code:
- area spirit healers are modelled;
- the resurrect name length is skipped, not cross-checked;
- SMSG_CHAT_WRONG_FACTION is handled in parse.rs, not chat.rs.

AFK/DND clearing in the member snapshot matches the reference and is no
longer called a deviation.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:09:59 +07:00
SamandClaude Opus 5.5 1401567b0c comments: protocol, the chat, client, combat-log, death, duel, gameobject, ticket, gossip and group messages
1,079 comment lines become 390; the code is unchanged. Corrected
against the code:
- area spirit healers are modelled;
- the resurrect name length is skipped, not cross-checked;
- SMSG_CHAT_WRONG_FACTION is handled in parse.rs, not chat.rs.

AFK/DND clearing in the member snapshot matches the reference and is no
longer called a deviation.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:09:59 +07:00
SamandClaude Opus 5.5 8d9f007415 comments: protocol, the auth code, the live probes and their examples
1,071 comment lines become 573; the code is unchanged. The world
probe's field docs are its --help text, so the help is shorter now and
matches what each flag runs: --quest takes quest 783 from Willem to
McBride, --quest-item needs the starter item to survive, --giverstatus
queries once, --spells makes three casts. Also corrected:
- the aura-duration packet has a SessionEvent;
- the SRP xor hash is SHA1(N) XOR SHA1(g), not a hash of it;
- the cooldown probe picks Tri, else the first character.

benilla sending a stored integrity hash instead of hashing the install
is now marked as a deviation.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:09:30 +07:00
SamandClaude Opus 5.5 56facbde94 comments: protocol, the auth code, the live probes and their examples
1,071 comment lines become 573; the code is unchanged. The world
probe's field docs are its --help text, so the help is shorter now and
matches what each flag runs: --quest takes quest 783 from Willem to
McBride, --quest-item needs the starter item to survive, --giverstatus
queries once, --spells makes three casts. Also corrected:
- the aura-duration packet has a SessionEvent;
- the SRP xor hash is SHA1(N) XOR SHA1(g), not a hash of it;
- the cooldown probe picks Tri, else the first character.

benilla sending a stored integrity hash instead of hashing the install
is now marked as a deviation.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:09:30 +07:00
SamandClaude Opus 5.5 fc95eec18a comments: protocol, the server packet enum and its parser
1,082 comment lines become 487; the code is unchanged. The creature
query doc said the display id was dropped; CreatureQueryInfo keeps it.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:08:54 +07:00
SamandClaude Opus 5.5 8becdf36f1 comments: protocol, the server packet enum and its parser
1,082 comment lines become 487; the code is unchanged. The creature
query doc said the display id was dropped; CreatureQueryInfo keeps it.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:08:54 +07:00
SamandClaude Opus 5.5 e8af9e8835 comments: protocol, the packet, spell, stable, taxi, trainer and update-object tests
514 comment lines become 183; the code is unchanged. Three comments
said something other than their bytes:
- SMSG_NEW_WORLD's orientation is -0.5, not 0.5;
- transport 176495 is the Grom'Gol-Undercity zeppelin, not the
  Menethil-Theramore ferry;
- 176244 is the Moonspray, the Auberdine-Rut'theran boat, not the
  Orgrimmar-Undercity zeppelin.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:07:00 +07:00
SamandClaude Opus 5.5 6627699f38 comments: protocol, the packet, spell, stable, taxi, trainer and update-object tests
514 comment lines become 183; the code is unchanged. Three comments
said something other than their bytes:
- SMSG_NEW_WORLD's orientation is -0.5, not 0.5;
- transport 176495 is the Grom'Gol-Undercity zeppelin, not the
  Menethil-Theramore ferry;
- 176244 is the Moonspray, the Auberdine-Rut'theran boat, not the
  Orgrimmar-Undercity zeppelin.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:07:00 +07:00
SamandClaude Opus 5.5 28db7f0f37 comments: protocol, the quest log and share, roster, social, spell, stable, summon and taxi messages
1,061 comment lines become 396; the code is unchanged. A spell test's
comment described the unit-target shape while its assert checks the
self-cast one; it now describes the self-cast shape.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:06:38 +07:00
SamandClaude Opus 5.5 6fee3be3ce comments: protocol, the quest log and share, roster, social, spell, stable, summon and taxi messages
1,061 comment lines become 396; the code is unchanged. A spell test's
comment described the unit-target shape while its assert checks the
self-cast one; it now describes the self-cast shape.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:06:38 +07:00
SamandClaude Opus 5.5 ba16121048 comments: protocol, the world writer's sends
1,096 comment lines become 372 across 31 files; the code is unchanged.
Dropped as false or stale:
- the module table, which missed 8 of the 44 modules;
- "cacheable forever" for names, which a pet rename breaks;
- "only failures get a packet", though SMSG_BUY_ITEM answers a buy;
- a go_target parameter that does not exist;
- "three" cast shapes, where there are five.

vmangos line citations now name the function or the current lines.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:05:47 +07:00
SamandClaude Opus 5.5 186b3f44e2 comments: protocol, the world writer's sends
1,096 comment lines become 372 across 31 files; the code is unchanged.
Dropped as false or stale:
- the module table, which missed 8 of the 44 modules;
- "cacheable forever" for names, which a pet rename breaks;
- "only failures get a packet", though SMSG_BUY_ITEM answers a buy;
- a go_target parameter that does not exist;
- "three" cast shapes, where there are five.

vmangos line citations now name the function or the current lines.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:05:47 +07:00
SamandClaude Opus 5.5 b304a6e8fe comments: protocol, the guild, instance and item messages
959 comment lines become 400; the code is unchanged. The read-enchant-
time doc had run into the next function's, so rustdoc gave it to
read_open_container; it is back on its own function. MaxCount is no
longer called account-wide.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:05:04 +07:00
SamandClaude Opus 5.5 133050e7fb comments: protocol, the guild, instance and item messages
959 comment lines become 400; the code is unchanged. The read-enchant-
time doc had run into the next function's, so rustdoc gave it to
read_open_container; it is back on its own function. MaxCount is no
longer called account-wide.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:05:04 +07:00
SamandClaude Opus 5.5 3e56cddb17 comments: protocol, the crate root, guids and the action-bar to channel messages
1,031 comment lines become 320; the code is unchanged. A guid test
called transport 176495 the Menethil-Theramore ferry. The world
database names it the Grom'Gol-Undercity zeppelin.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:03:55 +07:00
SamandClaude Opus 5.5 0668465bf3 comments: protocol, the crate root, guids and the action-bar to channel messages
1,031 comment lines become 320; the code is unchanged. A guid test
called transport 176495 the Menethil-Theramore ferry. The world
database names it the Grom'Gol-Undercity zeppelin.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:03:55 +07:00
SamandClaude Opus 5.5 2a66832215 comments: protocol, the trade, trainer and tutorial messages and the update fields
760 comment lines become 262; the code is unchanged. One doc said the
opposite of its code: corpse_look is None when either BYTES word is
missing, not neither. The ObjectFields doc had drifted onto CorpseLook
and is back on its struct.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:02:35 +07:00
SamandClaude Opus 5.5 c08a733d0e comments: protocol, the trade, trainer and tutorial messages and the update fields
760 comment lines become 262; the code is unchanged. One doc said the
opposite of its code: corpse_look is None when either BYTES word is
missing, not neither. The ObjectFields doc had drifted onto CorpseLook
and is back on its struct.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:02:35 +07:00
SamandClaude Opus 5.5 3fccac9398 comments: protocol, the quest, spell, vendor and world-state probes
404 comment lines become 168; the code is unchanged. Two claims were
wrong and are corrected: the world-state probe needs no temporary GM
grant, since the probe accounts carry level 6 and the command needs 5.
The root-ack citation now points at the current vmangos lines.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:00:05 +07:00
SamandClaude Opus 5.5 0d29490637 comments: protocol, the quest, spell, vendor and world-state probes
404 comment lines become 168; the code is unchanged. Two claims were
wrong and are corrected: the world-state probe needs no temporary GM
grant, since the probe accounts carry level 6 and the command needs 5.
The root-ack citation now points at the current vmangos lines.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 20:00:05 +07:00
SamandClaude Opus 5.5 e6484675e2 comments: the options window says what each part is and why
1,874 comment lines become 430; the code is unchanged. The note about
reference graphics CVars that pfUI writes and benilla leaves
unregistered described the CVar registry, not this file. It moves there
with its addresses.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:57:37 +07:00
SamandClaude Opus 5.5 c32b0f92fc comments: the options window says what each part is and why
1,874 comment lines become 430; the code is unchanged. The note about
reference graphics CVars that pfUI writes and benilla leaves
unregistered described the CVar registry, not this file. It moves there
with its addresses.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:57:37 +07:00
SamandClaude Opus 5.5 5b85c2adaf ui: drop BENILLA_FALLBACK_ICON, which nothing reads
Its readers were our own ActionBar and group-loot files, and both were
retired when those windows moved to the stock FrameXML. The stock files
leave a missing texture empty.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:55:51 +07:00
SamandClaude Opus 5.5 b58695b55f ui: drop BENILLA_FALLBACK_ICON, which nothing reads
Its readers were our own ActionBar and group-loot files, and both were
retired when those windows moved to the stock FrameXML. The stock files
leave a missing texture empty.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:55:51 +07:00
SamandClaude Opus 5.5 70358a2bfd check: drop the assets/ui case arm, which no path can reach
There is no top-level assets/ directory: assets/ui lives under
crates/benilla-app/, which the crates arm already scopes to benilla-app.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:55:51 +07:00
SamandClaude Opus 5.5 74e57eaefd check: drop the assets/ui case arm, which no path can reach
There is no top-level assets/ directory: assets/ui lives under
crates/benilla-app/, which the crates arm already scopes to benilla-app.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:55:51 +07:00
SamandClaude Opus 5.5 63705dccd2 gates: the green stamp records the addon corpus link
The test gate refuses skips only where both the install and the
wow-addons-vanilla link are present. The link is gitignored, so the
tree hash cannot see it, and the stamp kept only the install path. A
green earned without the corpus was therefore reused after the link
appeared, and skips were never refused on that tree. The corpus's
presence now sits beside the install in the stamp. The memo message
also names docs/ as well as top-level *.md.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:54:20 +07:00
SamandClaude Opus 5.5 5ddea3fa86 gates: the green stamp records the addon corpus link
The test gate refuses skips only where both the install and the
wow-addons-vanilla link are present. The link is gitignored, so the
tree hash cannot see it, and the stamp kept only the install path. A
green earned without the corpus was therefore reused after the link
appeared, and skips were never refused on that tree. The corpus's
presence now sits beside the install in the stamp. The memo message
also names docs/ as well as top-level *.md.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:54:20 +07:00
SamandClaude Opus 5.5 8f522a8455 comments: the gate script says what each gate refuses
Each rung keeps one or two lines: what it refuses and the fact that
makes it necessary. The stories of how each gate came to exist are
gone. 148 comment lines become 48; the code is unchanged.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:52:57 +07:00
SamandClaude Opus 5.5 6e5538df0d comments: the gate script says what each gate refuses
Each rung keeps one or two lines: what it refuses and the fact that
makes it necessary. The stories of how each gate came to exist are
gone. 148 comment lines become 48; the code is unchanged.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:52:57 +07:00
SamandClaude Opus 5.5 7c012bd3ec comments: protocol, the pet, petition, pose, progression, honor and quest-giver messages
Each item says what it is and the wire or server fact behind it, with
the vmangos or client citation; the two kept deviations say why.
History, record numbers and emphasis go. With comments stripped the six
files are identical.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:35:54 +07:00
SamandClaude Opus 5.5 f1a415a6ae comments: protocol, the pet, petition, pose, progression, honor and quest-giver messages
Each item says what it is and the wire or server fact behind it, with
the vmangos or client citation; the two kept deviations say why.
History, record numbers and emphasis go. With comments stripped the six
files are identical.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 19:35:54 +07:00