Skip to content

Feat/sovereign mohawk baseline starter#6881

Open
rwilliamspbg-ops wants to merge 7 commits intoflwrlabs:mainfrom
rwilliamspbg-ops:feat/sovereign-mohawk-baseline-starter
Open

Feat/sovereign mohawk baseline starter#6881
rwilliamspbg-ops wants to merge 7 commits intoflwrlabs:mainfrom
rwilliamspbg-ops:feat/sovereign-mohawk-baseline-starter

Conversation

@rwilliamspbg-ops
Copy link
Copy Markdown

Summary
This PR adds an initial baseline scaffold under baselines/sovereign_mohawk inspired by the contribution proposal discussed in issue planning.

Included in this first commit set:

New baseline package layout and Flower app wiring
Runnable ServerApp + ClientApp + dataset/model scaffold
Baseline README with environment setup, run commands, and smoke-test expectations
Optional verification hooks (enable-verification-hooks) that run lightweight checks on aggregated tensors and produce a report artifact
What this enables
A contributor-friendly starting point for iterating toward a full verifiable aggregation baseline
Reproducible baseline setup following Flower baseline conventions
Early operational evidence via verification_report.json
Verification done
Updated files pass editor diagnostics
Baseline includes explicit lint/test commands:
./dev/format-baseline.sh sovereign_mohawk
./dev/test-baseline.sh sovereign_mohawk
Contribution Compliance
License: contribution is provided under Apache License 2.0, consistent with project requirements.
Code of Conduct: this PR follows the Contributor Covenant expectations for respectful collaboration.
Review and CI: this PR is intended for standard Flower code-owner review and will only be considered merge-ready after all CI checks pass.
Merge Readiness Checklist
Opened as a focused PR against main
Baseline scaffold is runnable and documented
Formatting/lint/type checks documented and executed locally
All GitHub Actions checks passing
Code-owner review completed
Follow-up scope (next PRs)
Extend verification hooks into richer strategy-level checks and metrics
Add experiment configuration variants and expected result tables
Add plotting/reporting utilities and benchmark evidence artifacts

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new Flower baseline scaffold under baselines/sovereign_mohawk/ (based on the baseline template) and introduces optional “verification hooks” to run lightweight numerical checks on aggregated tensors and emit a verification_report.json artifact.

Changes:

  • New baseline package (ServerApp/ClientApp) wired via [tool.flwr.app.components] in pyproject.toml
  • CIFAR10 dataset loader + small CNN model scaffold (baseline-template parity)
  • Optional verification/reporting utilities invoked on the server after aggregation

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
dev/pr-sovereign-mohawk-baseline-starter.md Adds an in-repo PR draft/template document for this baseline PR.
baselines/sovereign_mohawk/pyproject.toml Declares baseline project metadata/deps and wires ServerApp/ClientApp + run config.
baselines/sovereign_mohawk/README.md Documents environment setup and run/smoke-test commands for the baseline.
baselines/sovereign_mohawk/sovereign_mohawk/server_app.py Server entrypoint running FedAvg + saving artifacts + optional verification report.
baselines/sovereign_mohawk/sovereign_mohawk/client_app.py Client train/evaluate entrypoints using dataset/model utilities.
baselines/sovereign_mohawk/sovereign_mohawk/strategy.py Implements verification report dataclass + numeric checks over ArrayRecord tensors.
baselines/sovereign_mohawk/sovereign_mohawk/dataset.py Loads CIFAR10 partitions via flwr_datasets (template-based).
baselines/sovereign_mohawk/sovereign_mohawk/model.py Defines simple CNN + train/test helpers (template-based).
baselines/sovereign_mohawk/sovereign_mohawk/init.py Baseline package initializer/docstring.
baselines/sovereign_mohawk/sovereign_mohawk/utils.py Placeholder utility module (docstring only).
baselines/sovereign_mohawk/LICENSE Baseline-local Apache-2.0 license file.
baselines/sovereign_mohawk/.gitignore Baseline-local gitignore (template-based).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions github-actions bot added the Contributor Used to determine what PRs (mainly) come from external contributors. label Mar 29, 2026
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Author

@rwilliamspbg-ops rwilliamspbg-ops left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

finished changes

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 12 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Author

@rwilliamspbg-ops rwilliamspbg-ops left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ready for Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Contributor Used to determine what PRs (mainly) come from external contributors.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants