Two capability gaps closed, both read-only except a user-initiated draft BMC write.
1. Business Model Canvas 1-click
New business_model_canvas.create_from_data() derives all nine BMC blocks from existing Common-Data-Schema-derived tables (federation/cooperative/supplier, process_map, sensor/energy/cooperative assets, impact_claim, content_delivery channels, buyer_segment, revenue_event, expense_event, stakeholder_feedback) and persists a populated draft canvas in one call.
New CLI subcommand create-from-data (mirrors create); suggest stays as a read-only preview.
Rolls back any aborted read-transaction before the write so a partial suggest never breaks create().
2. Comprehensive Status Report
New report_generator.generate_comprehensive_status() composes the canonical per-location sections (farm, crop NOI, environmental, climate, financial, capital efficiency, holistic + foundational wellbeing, community governance, GNH alignment, training impact, regenerative outcomes, stakeholder outcomes) into one document.
Network-wide via --all / no location: nests per-location bundles + an ecosystem rollup. Section failures isolated (error not crash), mirroring state_of_kokonut.
Registered and marked network-level in the CLI dispatch.
Verification
18 tests pass (test_bmc_oneclick, test_comprehensive_status, plus existing state_of_kokonut/suites).
ruff clean on changed files.
Live-DB smoke verified: comprehensive_status returns 13 sections across 2 locations; create-from-data creates a canvas from existing data.
Notes
BMC create is a draft write (no publish/verify) — consistent with agents/safety.py, no human-approval gate.
No schema change; both reuse existing governed tables.
- business_model_canvas.create_from_data(): one-call BMC that derives all
nine blocks from existing Common-Data-Schema tables (federation/
cooperative/supplier, process_map, sensor/energy/cooperative assets,
impact_claim, content_delivery, buyer_segment, revenue_event,
expense_event, stakeholder_feedback) and persists a populated draft
canvas. New CLI subcommand create-from-data; suggest kept as a
read-only preview. Rolls back any aborted read-transaction before
the write so a partial suggest never breaks create().
- report_generator.generate_comprehensive_status(): single composite status
report composing canonical per-location sections (farm, crop NOI,
environmental, climate, financial, capital efficiency, holistic +
foundational wellbeing, community governance, GNH alignment, training
impact, regenerative outcomes, stakeholder outcomes) for one, many,
or all locations. Network-wide (--all / no location) nests per-location
bundles + an ecosystem rollup. Section failures isolated like
state_of_kokonut. Registered and marked network-level in CLI dispatch.
Read-only report; BMC create is a user-initiated draft write (no
publish/verify), consistent with agents/safety.py. 18 tests pass, ruff clean.
Summary
Two capability gaps closed, both read-only except a user-initiated draft BMC write.
1. Business Model Canvas 1-click
business_model_canvas.create_from_data()derives all nine BMC blocks from existing Common-Data-Schema-derived tables (federation/cooperative/supplier, process_map, sensor/energy/cooperative assets, impact_claim, content_delivery channels, buyer_segment, revenue_event, expense_event, stakeholder_feedback) and persists a populated draft canvas in one call.create-from-data(mirrorscreate);suggeststays as a read-only preview.create().2. Comprehensive Status Report
report_generator.generate_comprehensive_status()composes the canonical per-location sections (farm, crop NOI, environmental, climate, financial, capital efficiency, holistic + foundational wellbeing, community governance, GNH alignment, training impact, regenerative outcomes, stakeholder outcomes) into one document.--all/ no location: nests per-location bundles + an ecosystem rollup. Section failures isolated (error not crash), mirroring state_of_kokonut.Verification
Notes