Skip to content

feat(surveyor): add action protocol typed reader - #645

Merged
blakinio merged 11 commits into
mainfrom
feat/OTC-20260821-surveyor-action-protocol-reader
Aug 21, 2026
Merged

feat(surveyor): add action protocol typed reader#645
blakinio merged 11 commits into
mainfrom
feat/OTC-20260821-surveyor-action-protocol-reader

Conversation

@blakinio

Copy link
Copy Markdown
Owner

Objective

Implement OTC-20260821-surveyor-action-protocol-reader, the highest-value non-overlapping Surveyor typed-reader gap after the completed auth/session slice.

Current physical baseline: 169 rows / 12 aliases / 9 missing readers / privacy PASS. world_minimap_typed_reader remains rank 1 but overlaps active #475/#593, so this slice selects rank-2 action_protocol_typed_reader.

Reader boundary

The reader exact-fences the current official client, derives the exact current tibia::game::TPlayerProtocolMessageHandler primary vptr from RTTI/relative relocations, and proves exactly one typed live object through bounded O_RDONLY process-memory observation. It emits only TYPED_ACTION_PROTOCOL_OBJECT_IDENTITY_ONLY and explicitly does not claim action-to-protocol linkage, serialized message semantics, opcodes, packet payloads or IN_GAME state.

The implementation also centralizes Surveyor reader registration so later typed-reader slices do not require duplicating runtime dispatch logic.

Safety

No login/relogin, credentials, GUI/gameplay input, process control, attach/debug/injection, memory writes, client/container restart, target-network mutation, item/economy action or local-model use is authorized.

Expected repository-only gap count after implementation: 8. Physical post-merge read-only acceptance remains required before task archive/closeout.

@blakinio
blakinio marked this pull request as ready for review August 21, 2026 14:50
@blakinio
blakinio merged commit f80dd43 into main Aug 21, 2026
16 checks passed
@blakinio
blakinio deleted the feat/OTC-20260821-surveyor-action-protocol-reader branch August 21, 2026 14:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant