code wiki / _hdl_build / nx_connect_lanes_lib.nx
nx_connect_lanes_lib.nx
buildroot/runtime/_hdl_build/nx_connect_lanes_lib.nx
about
nx_connect_lanes_lib.nx -- the per-relationship INTENT-LANE consent state machine, extracted as a shared
library so the verifying gate (nx_connect_lanes) and the LIVE app (nx_connect_serve /lanes) bind ONE
implementation. Until this split the capability had NO user-facing surface at all.
This is the honest, consented alternative to a banned-but-leaking dating lane (Tandem admits theirs
persists; HelloTalk's intent toggle is cosmetic). A relationship's ACTIVE lane is the level BOTH parties
have opted into -- MIN(a_request, b_request) -- so ESCALATION REQUIRES MUTUAL CONSENT and nobody can be
pulled toward romance unilaterally. DE-ESCALATION and BLOCK are UNILATERAL and immediate: the asymmetry
is the point, hard to escalate and easy to exit. Any relationship involving a MINOR is hard-capped below
the romance lane, so dating is structurally unreachable rather than discouraged.
Lanes: LANGUAGE(0) < FRIEND(1) < COMMUNITY(2) < DATE(3). Integer state logic only.
license_tier: ORIGINAL
dependencies 0 imports · 3 importers
imports: none
imported by: nx_connect_api_lib.nxnx_connect_lanes.nxnx_connect_serve.nx
structs
| none |
consts
| 15 | const LN_LANE_LANG: i64 = 0 |
| 16 | const LN_LANE_FRIEND: i64 = 1 |
| 17 | const LN_LANE_COMMUNITY: i64 = 2 |
| 18 | const LN_LANE_DATE: i64 = 3 |
| 19 | const LN_EXCLUDED: i64 = 0-1 // blocked / severed (negative sentinel, never a lane) |
functions
| 21 | func ln_min(a: i64, b: i64) -> i64 { if a < b { return a } return b } called by 1: ln_active_lane |
| 24 | func ln_active_lane(a_req: i64, b_req: i64, a_adult: i64, b_adult: i64, blocked: i64) -> i64 |
| 34 | func ln_naive_lane(a_req: i64, b_req: i64, a_adult: i64, b_adult: i64, blocked: i64) -> i64 called by 1: main |
| 41 | func ln_lane_name(lane: i64) -> *u8 |