Skip to content

docs(tibia): correct map observation programme to Track A - #295

Closed
blakinio wants to merge 2 commits into
mainfrom
docs/OTC-20260814-map-observation-track-a-correction
Closed

docs(tibia): correct map observation programme to Track A#295
blakinio wants to merge 2 commits into
mainfrom
docs/OTC-20260814-map-observation-track-a-correction

Conversation

@blakinio

Copy link
Copy Markdown
Owner

Corrects the producer ownership for OTS-20260813-world-reconstruction-navigation after the owner clarified that observations come from the official native Linux Tibia client (Track A), not the OTClient-to-Global compatibility lane (Track B).

Changes:

Documentation/ownership correction only. Runtime E2E is not applicable; future P1 claims require exact-version native-Linux Track A evidence.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ec2153663b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

risk: medium
shared_coordination_id: OTS-20260813-world-reconstruction-navigation
owned_paths:
- docs/agents/contracts/MAP_OBSERVATION_V1.md

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Resolve the existing contract ownership before claiming it

The still-active OTC-20260813-map-observation-export.md task is blocked and already lists docs/agents/contracts/MAP_OBSERVATION_V1.md under owned_paths, so this new active task creates two owners for the same contract without superseding the old task or recording an overlap resolution. Any continuation can therefore resume either task and make conflicting edits; reconcile/archive the original task before assigning this path here.

AGENTS.md reference: AGENTS.md:L78-L80

Useful? React with 👍 / 👎.

map updates, and `Map`/`Tile` changes. It is disabled by default, failure-safe,
bounded, and local-only. It must not reparse protocol packets, mutate map state,
or directly contact an Atlas service.
The downstream Otheryn Atlas may consume sanitized promoted observation artifacts in its separately owned project. Live Track A runtime ownership remains in `blakinio/otclient`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Retain the separate-authorization gate for Atlas consumption

This sentence now affirmatively permits a separately owned Atlas project to consume promoted artifacts, whereas the previous contract classified external consumption as a later, separately authorized step. For Track A work, the mandatory repository-only boundary forbids depending on or transferring work into the external Oteryn project under the current task authority, so a future P1 worker could incorrectly treat this sentence as authorization; restore the explicit separate-authorization qualification.

AGENTS.md reference: docs/agents/AGENTS.md:L11-L11

Useful? React with 👍 / 👎.

authorization header, bearer token, login request/response, raw packet payload,
or proprietary client asset. Persistence failures are local diagnostics only;
they do not create a synthetic observation.
No observation, diagnostic, filename or fixture may persist account names, email, password, authenticator values, session keys, cookies, authorization headers, bearer tokens, login request/response material, raw secret-bearing packet payloads, or proprietary client assets.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep all raw packet payloads forbidden

For a future producer that records a sanitized or apparently non-secret packet, the revised wording permits the raw payload because it forbids only “secret-bearing” packets. That weakens the prior v1 blanket prohibition and conflicts with validate_map_observation_v1_fixtures.py, which still treats both packet_payload and raw_packet as forbidden tokens; retain the unconditional raw-packet ban so semantic observations cannot silently become packet captures.

Useful? React with 👍 / 👎.

- `record_type`: `tile_snapshot`, `tile_delta`, `transition_event`, or `navigation_action_result`;
- `sequence`: positive monotonically increasing integer within `session_id`;
- `session_id`: opaque non-secret correlation identifier, never an account/character/cookie/token/login value;
- `producer`: `revision`, `client_version`, and `protocol_version` identifying the exact producer/client cut.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Restore the protocol-version type and range constraint

The ownership-only correction drops the v1 requirement that producer.protocol_version be a non-negative integer. A Track A producer can now emit a string or negative value while satisfying this prose, and the fixture validator only checks integrality for its fixed fixture rather than the non-negative range, leaving downstream version selection without a reliable contract; restore the explicit integer and range requirement.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Track A coordinator live-state clarification (2026-08-15): PR #291 is now terminally merged (005158b5b9bf25fe77bd5fc10813a6388a072836), but its canonical task record on current main still has status: blocked and still declares docs/agents/contracts/MAP_OBSERVATION_V1.md in owned_paths. Therefore the ownership finding on this PR remains material until that stale task lifecycle/ownership is deliberately reconciled; merge status alone did not release the durable task claim.

The other three unresolved review findings also remain material on current head ec2153663bf43362321d05964fac111aa273f39e: preserve the unconditional raw-packet payload prohibition, preserve the explicit separate-authorization boundary for any external consumer, and restore producer.protocol_version as a non-negative integer. Coordinator disposition remains RETURN_FOR_EVIDENCE; no Track A promotion or contract mutation is authorized from this head.

Copy link
Copy Markdown
Owner Author

COORD disposition: CLOSED_SUPERSEDED / REPLAY_REQUIRED.

The ownership correction is still valid: the current authoritative live producer for this programme is Track A official-native-Linux research, not Track B. This 2026-08-14 branch is not promotion-safe on current main, however: it predates the current Track A admission/hybrid-routing contracts and rewrites/compresses frozen MAP_OBSERVATION_V1 field/completeness/delta details instead of making the smallest ownership correction.

Coordinator will replay the same task from current main, preserve the existing v1 record semantics verbatim, add only the Track A producer/reuse/P1 ownership boundary, persist current runtime_access: none + GitHub-hosted routing fields, and validate on the fresh head. No runtime authority is inferred from this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

programme:client Oteryn client programme

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant