Skip to content
webtypPublic

About

Network access contract: registered hosts, access levels, and a gateway that plans, applies and reports connections

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

16 Commits

Folders and files

Repository files navigation

webtyp/network

network is the contract between an inventory of devices and the box that enforces network access (a router). It answers three questions an application has about its local network:

  1. Which devices may use the network, and how much of it? — a list of Host (one per network card: MAC, IP, name) with an Access level.
  2. What would change on the router if I applied that list, and is it safe now? — Plan.
  3. Who is connected right now? — Connections.
I want to… Use
Describe what the router must enforce network.Desired{Settings, Hosts}
See what would change gw.Plan(desired)
Apply exactly what I reviewed gw.Apply(desired, plan.Fingerprint)
See who is online gw.Connections()
Import hand-made router config gw.Discover() → inventory.ImportHosts(found)
Test my code without a router mem.New()
Prove my gateway implementation conformance.Run(t, newFixture)

See AGENTS.md and docs/ARCHITECTURE.md for design and vocabulary.

About

Network access contract: registered hosts, access levels, and a gateway that plans, applies and reports connections

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages