[MeshCore P3] M2 - Resolution spike (path_hash_mode / path_update / trace_data) [decision gate]

Open
#373 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
15/100
Issue type
Documentation
Clarity
Mostly clear
Activity status
Quiet
Tech stack
neo4j, postgresql, python
Domain
backend, databases

Research direction

Start with the packet-path ADR-0001 under docs/features/meshcore/packet-path-tracing/adr/ and the traceroute ADR-0001 at docs/features/traceroute/adr/0001-mc-path-hash-resolution.md, then investigate path_hash_mode, path_update and trace_data from the captures. Done means a written outcome: either a proven hash-to-identity rule with its algorithm, or a documented "unproven, stay hash-only", with path_hash_mode and centrality-location decisions recorded in the ADR.

Written by the indexing model from the issue text.

Description

enhancement

Parent

Part of #267. Milestone M2 of the passive packet path subsystem. Decision gate for M3+.

Design: ADR-0001 docs/features/meshcore/packet-path-tracing/adr/

Goal

Prove or disprove a safe hash → identity binding before building enrichment.

Scope

  • Investigate path_hash_mode semantics (does it change segment interpretation / identity key?).
  • Investigate whether path_update (pubkey-only in captures today) and trace_data can bind a segment to a node.
  • Decide centrality compute location: Postgres vs Neo4j.
  • Update traceroute ADR-0001 and packet-path ADR-0001 with findings + decisions.

Acceptance criteria

  • Written outcome: proven rule (with algorithm) or documented "unproven, stay hash-only".
  • path_hash_mode and centrality-location decisions recorded in the ADR.

Out of scope

  • Any production matcher (that is M3, only if this spike yields a proven rule). No suffix/prefix/recency heuristics.
Dominant language
Python
Stars
1
Forks
0
Avg merge
1d 20h
Merged PRs (30d)
5

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from pskillen/meshflow-api

All issues in pskillen/meshflow-api

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.