Feat/sovereign mohawk baseline starter#6881
Open
rwilliamspbg-ops wants to merge 7 commits intoflwrlabs:mainfrom
Open
Feat/sovereign mohawk baseline starter#6881rwilliamspbg-ops wants to merge 7 commits intoflwrlabs:mainfrom
rwilliamspbg-ops wants to merge 7 commits intoflwrlabs:mainfrom
Conversation
Contributor
There was a problem hiding this comment.
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]inpyproject.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.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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