MiCyte

← The wiki

Separation and responsibility

BuiltRendered from separation_and_responsibility.md in the public repository. Edits belong there.

This page states what this repository contains, what it publishes, and what belongs elsewhere.

This repository

DirectoryContentPublished
micyte/The software: core engine, ports, adapters, shell, tools, channels, routines.Yes, as MiCyte/MiCyte (AGPL-3.0).
fnd_app/Fruitful Network Development's hosting application. Depends on micyte/.No.
scripts/Repository tools. Six are published; the rest serve one host.Partly.
docs/Contracts, standards and this wiki.Mostly.

The dependency runs one way: fnd_app imports micyte; micyte does not import fnd_app. fnd_app/tests/architecture/test_micyte_fnd_boundary.py enforces both directions. One exception, a function-level import in micyte/adapters/filesystem_datum/__init__.py, is named in that file.

micyte/ owns:

  • the datum engine, the MOS store contract and the SQLite adapter;
  • the port contracts and the write and external-call policies;
  • the shell, surfaces, tools, channels, routines and lenses;
  • the package declarations.

Outside this repository

ConcernWhere it belongs
Web server, process supervision, containers, the identity providerThe host's infrastructure.
Website source and generated pages (micyte.com and client sites)The site repositories.
An instance's live state (its store, configuration, keys)The instance's private directory on its host, outside git.

Outside services (mail, hosting, payments, AI providers, cloud status) are reached through ports and adapters (92), not owned by the core. Infrastructure health is read through bounded read-only ports (aws_read_only_status), not by moving infrastructure into the core.

Documentation

  • docs/contracts/ states rules.
  • docs/standards/ states authoring rules.
  • docs/wiki/ explains how things work and links to the rules.