architecture:start

This is an old revision of the document!


System Architecture Overview

This page defines the AOFS system architecture, including all layers, their responsibilities, interactions, and data flows. It establishes authority boundaries, offline operation rules, and federation/synchronization requirements for AOFS controllers.

All AOFS-compliant systems must conform to the rules specified here.

1. Architecture Layers

AOFS defines three core layers:

All controller layers expose a human interface appropriate to their authority and audience, while never bypassing Field Controller safety rules.

2. Authority & Data Flow Diagram

                ┌───────────────────────┐
                │   HQ / Federated       │
                │      Controller        │
                │  Dashboards & Reports  │
                └─────────┬─────────────┘
                          │ Push/Pull Config & Logs
                          ▼
                ┌───────────────────────┐
                │  Farm Controller      │
                │  Local UI & Monitoring│
                │  Federation & Sync    │
                └─────────┬─────────────┘
                          │ Telemetry & Commands
                          ▼
                ┌───────────────────────┐
                │  Field Controller     │
                │  Autonomous Safety    │
                │  Irrigation Control   │
                │  Sensor Monitoring    │
                └───────────────────────┘

Legend:

  • Field Controller: authoritative for safety-critical irrigation.
  • Farm Controller: local supervision, configuration, and federation; respects Field Controller authority.
  • HQ Controller: multi-farm oversight, reporting, analytics; may propose updates but cannot override Field Controller safety logic.

3. Controller Responsibilities

Layer Primary Role Human Interface Connectivity Authority
——-————-—————-————-———-
Field Controller Execute irrigation & safety Embedded UI for monitoring / non-critical overrides None (offline) Authoritative locally
Farm Controller Local supervision & federation Full UI: monitoring, configuration Optional (for federation) Supervisory (non-critical only)
HQ Controller Multi-farm oversight & analytics Dashboards, reporting, config proposals Required for federation Supervisory (proposals only)

4. Federation / Sync Model

* Push/Pull: Farm Controllers sync with HQ and/or peer farms. * Conflict Resolution:

  1. Timestamp precedence
  2. Operator approval for schedule/config conflicts
  3. Field Controller safety rules always take priority

* Offline First:

  1. Controllers continue autonomous operation if disconnected
  2. Logs and changes queue for synchronization once connectivity is restored

5. Human Interface Rules

* All controllers expose interfaces appropriate to their role:

  1. Field Controller: embedded status UI, safety alerts, non-critical operator overrides
  2. Farm Controller: full local UI for monitoring, configuration, and federation
  3. HQ Controller: multi-farm dashboards, analytics, authorized configuration proposals

* No interface may bypass Field Controller safety rules.

6. Compliance Notes

  • AOFS-compliant deployments must implement all three layers as defined.
  • Field Controller safety rules cannot be overridden by higher layers.
  • All push/pull, configuration changes, and operator actions must be logged.
  • Offline operation must not compromise irrigation or safety.
  • Failure to respect authority boundaries invalidates AOFS compliance.

7. References

architecture/start.1769029417.txt.gz · Last modified: by bsamuel