Skip to content

51 livebook and improve documentation#53

Merged
matt-beanland merged 5 commits into
devfrom
51-livebook-and-improve-documentation
May 23, 2026
Merged

51 livebook and improve documentation#53
matt-beanland merged 5 commits into
devfrom
51-livebook-and-improve-documentation

Conversation

@matt-beanland
Copy link
Copy Markdown
Collaborator

No description provided.

* removed direct :ash_json_api dep, the AshJsonApi.Domain extension,
  the json_api do ... routes block on Nbn, and json_api blocks /
  AshJsonApi.Resource extensions on all NBN resources
* deleted lib/nbn/api_router.ex
* router now serves /catalog + /mcp only; everything else 404s
* MCP becomes the only externally-callable surface
* 54/54 tests pass
* new Mix.Tasks.Gen.ApiDocs walks each domain's resource_references and
  emits a markdown table per resource — function, action, args, purpose
* filters behaviour-injected :specified_by/:features/:characteristics
* type labels prettified (Ash.Type.Struct → struct, etc.)
* SPDX headers baked into the generated template (REUSE-compliant
  across regenerations)
* generated documentation/domains/_access_api.md (5 resources)
* generated documentation/domains/_nbn_api.md (8 resources)
* documentation/domains/access.md — narrative tour of Access:
  resources, topology, inheritance pattern, scenario, pointer to
  _access_api.md and Provider (the "what's underneath" lift)
* documentation/domains/diffo_example_access.livemd — runnable
  end-to-end scenario through the code-interface (no JSON:API)
* mix.exs — both registered as ExDoc extras under Domains
* documentation/domains/provider.md — short lift-the-lid page that
  names the Provider primitives used by Access (Specification,
  Instance, Characteristic, Pool, Assignment, Relationship, Feature,
  Place, Party, state machine), explains the TMF JSON encoder, and
  points at diffo's own livebooks for the deep dive
* mix.exs — registered as an extra
* documentation/domains/nbn.md — merged technical content into the
  existing flavor page; dropped Perentie framing; kept the RSP
  spirit-animal table; added topology / inheritance / metrics map
  and scenario walk-through; linked to _nbn_api.md
* documentation/domains/diffo_example_nbn.livemd — rewritten against
  the current code-interface and #49 alias convention; removed the
  broken mine_* / :isAssigned legacy and the JSON:API section;
  added inheritance + metrics demonstrations
@matt-beanland matt-beanland linked an issue May 23, 2026 that may be closed by this pull request
@matt-beanland matt-beanland merged commit 7135505 into dev May 23, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

livebook and improve documentation

1 participant