Skip to content

Operational Workflows

James Daley edited this page Apr 25, 2026 · 4 revisions

Operational Workflows

Forsetti now keeps repository source and GitHub Wiki content separate. The wiki is maintained directly in the wiki repository so rich diagrams and hand-curated pages are not overwritten by generated output.

Manual Wiki Maintenance

flowchart TD
    A["Clone or pull Forsetti-Framework.wiki"] --> B["Edit Markdown pages directly"]
    B --> C["Validate links and Mermaid blocks"]
    C --> D["Commit wiki changes"]
    D --> E["Push wiki master"]
    E --> F["Review rendered GitHub Wiki"]
Loading

Wiki repository:

git clone https://github.com/flynn33/Forsetti-Framework.wiki.git

Release Workflow

flowchart LR
    Main["Push to main"] --> ReleasePlease["release-please.yml"]
    ReleasePlease --> PR["Release PR"]
    PR --> Merge["Merge release PR"]
    Merge --> Tag["Version tag and release"]
    Tag --> Docs["Manually review README and wiki for version references"]
Loading

Release automation no longer updates or publishes the wiki. That prevents generated documentation from replacing curated wiki pages.

Version Update Checklist

File Expected Update
Sources/ForsettiCore/ForsettiVersion.swift Runtime version constant.
version.txt Plain version value.
.release-please-manifest.json Release Please tracked version.
README.md Visible version and release links.
CHANGELOG.md User-facing changes.
Wiki pages Manual update only when architecture, API, workflows, or integration guidance changes.

Consumer Integration Workflow

flowchart TD
    A["Add package dependency"] --> B["Select products"]
    B --> C["Create app or module template"]
    C --> D["Register module factories"]
    D --> E["Bundle manifests"]
    E --> F["Configure services and entitlements"]
    F --> G["Boot runtime"]
    G --> H["Activate modules"]
    H --> I["Run tests and guardrails"]
    I --> J["Switch production presentation"]
Loading

Runtime Change Workflow

flowchart TD
    Change["Runtime or API change"] --> Contract["Review public contracts"]
    Contract --> Tests["Add or update tests"]
    Tests --> Docs["Update README/wiki/API reference"]
    Docs --> Guardrails["Run swift test and guardrails"]
    Guardrails --> Changelog["Update changelog"]
Loading

Documentation Ownership

Surface Ownership
README High-level repository entry point.
CHANGELOG Release and change history.
GitHub Wiki Comprehensive architecture and workflow documentation.
Source comments Local API clarification only when code is not self-explanatory.
Tests Executable behavior documentation.

Clone this wiki locally