Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🂡 kata-sn126 — Poker44 subnet plugin

The SN126 / Poker44 (poker bot-detection) plugin for Kata. A validator sends a miner chunks of poker hands; the miner returns one bot-risk score per chunk; the pure Poker44 reward() scorer grades those against ground-truth labels. The scalar reward promotes through Kata's generic rank_signals gate — so onboarding SN126 needs no changes to kata core or kata-board.

Status (built sub-step by sub-step)

  • 3a — skeleton + kata.subnets discovery (identity attrs, sealed env spec)
  • 3b — benchmark fetch/pin/verify + sample_problems + benchmark_identity
  • 3cscore (vendored Poker44 reward()) → ScoreCard + metrics
  • 3drun_candidate (agent_main(chunks) -> risk_scores, isolated + egress-blocked)
  • 3ecompare/beats_king + rich rank_signals + lane config (config only)
  • 3f — anti-memorization static_screen

The plugin is contract-complete and works end-to-end offline, with no changes to kata core or kata-board.

Anti-cheat (defence in depth)

The public benchmark is labeled, so the risk is a miner that memorizes/looks up answers instead of learning from hand features. Guards, strongest first:

  1. Egress-blockenvironment_spec is network="none"; an agent can't fetch labels at run time.
  2. Held-out split + rotation — eval on the validation split, rotated per daily release (operator config).
  3. static_screen — scans a bundle for network imports / secrets (reject) and label-field references, id-as-feature, or embedded answer tables (review).
  4. (future) dynamic mutation canary — score lightly-perturbed hands to catch a lookup table.

Dev

uv venv && uv pip install -e ../kata -e '.[dev]'
.venv/bin/python -m pytest -q

License

MIT.

About

SN126 (Poker44) subnet plugin for the Kata competition platform

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages