DEV Community

QuietMoose
QuietMoose

Posted on

Building Full Shelf: An Agent Fleet for Food-Bank Operations

#AllThingsAgenticHackathon #GoogleCloud #Gemini #AgenticAI

A recent lettuce recall made me wonder what happens when affected food is already moving through a local food bank.

What I found was not a simple inventory problem. Food banks are living logistics networks. Inventory, refrigerated transportation, custody, partner agencies, safety rules, and commitments to the community all have to stay aligned. When a truck fails or a recall arrives, the entire operating plan may need to change.

That became the starting point for Full Shelf, an agentic control plane for food-bank operations.

What Full Shelf does

Full Shelf brings the current operating day into one place: inventory, vehicles, deliveries, partner commitments, custody, incidents, approvals, and unfinished work.

Plan the day. A fleet of specialized agents evaluates available food, vehicle capacity, delivery obligations, safety constraints, and partner options to produce a feasible operating plan.

Adapt when reality changes. If a truck becomes unavailable, Full Shelf remaps affected work across the remaining vehicles and approved partners. If every commitment cannot be met, it surfaces the shortfall instead of producing an impossible plan.

Coordinate recall response. When a recall arrives, Full Shelf screens the notice, extracts the affected product and lot, traces current custody, stops unsafe inventory from being used, and determines what must be replaced.

Preserve the truth. Unconfirmed inventory remains unconfirmed. Missing evidence stays missing. Open shortages, unavailable equipment, and unresolved custody carry into the next operating day instead of disappearing when a workflow ends.

The rule that shaped the architecture

The system follows one rule:

Gemini recommends. A human approves. Only the ledger writes.

Gemini is valuable because operating disruptions require judgment. A recommendation may need to balance vehicle capacity, delivery commitments, custody evidence, partner availability, and safety rules at the same time.

But judgment is not authority.

The agent fleet can investigate evidence and propose an exact operating change. It cannot directly update the authoritative plan. A director reviews the proposal and its consequences, and the private plan ledger independently verifies that the plan, approved change, operator identity, and requested action still match before committing anything.

If the proposal changes, its previous approval no longer applies. If evidence or authorization is incomplete, the system refuses the action.

Building a fleet instead of five chatbots

Full Shelf uses Google ADK 2.6.1 to coordinate five specialist agents powered by Gemini 3.5 Flash on Vertex AI:

  • Fulfillment Planning & Recovery
  • Incident Lead
  • Recall Intake & Extraction
  • Network & Custody
  • Partner Operations

An Incident Coordinator selects and sequences the specialists needed for each operating event. Every agent has a bounded role, limited tools, and structured output that is validated before another part of the system can use it.

That separation matters. The recall agent should extract recall facts, not redesign the delivery plan. The custody agent should reconstruct where affected food is, not decide that uncertainty can be ignored. The planning agent should propose feasible recovery options, not invent inventory or authorize its own recommendation.

The hardest part of the build was not creating the individual agents. It was keeping their contracts, validators, execution order, projections, and replay evidence aligned as the fleet evolved.

How Google Cloud powers it

Each Google Cloud service has a deliberately narrow responsibility:

  • Vertex AI and Gemini 3.5 Flash provide the reasoning engine for the agent fleet.
  • Google ADK defines the specialists, tools, structured outputs, and coordination flow.
  • Model Armor screens untrusted recall notices and partner messages before they reach Gemini.
  • Cloud Run separates the agent orchestrator from the private service allowed to write operating state.
  • Cloud Spanner stores the authoritative plans, commitments, incidents, approvals, evidence, receipts, and unresolved work across 18 tables.
  • Spanner Graph traverses custody relationships over that same authoritative state rather than creating a second source of truth.
  • Cloud KMS binds a human approval to the exact proposed change.
  • Pub/Sub, Cloud Tasks, Cloud Scheduler, Cloud Trace, and Cloud Logging support controlled asynchronous work and preserve execution evidence.

The result is not an agent with broad access to a database. It is a narrow reasoning-to-authority path with explicit gates at every consequential transition.

What I learned

Several agents do not automatically make a fleet. A real fleet needs shared contracts, bounded responsibilities, deterministic sequencing, and tests that verify the whole system—not only each agent in isolation.

A blocked result is not the same as a blocked action. One early implementation checked whether a specialist was authorized only after that specialist had already executed. Moving the gate before dispatch changed both the architecture and the test standard: success now means the unauthorized agent never reaches Gemini.

Operational interfaces should show consequences, not agent theater. Directors need to understand what changed, what remains uncertain, and what requires their decision. Decorative activity can make a system look busy while making the actual operating truth harder to see.

Refusal can be a successful outcome. In Full Shelf, a recall can end as partially contained when custody evidence is incomplete. The system records the unresolved state and refuses closure with zero unsupported mutations. That is not an agent failure; it is the control plane doing its job.

What comes next

The same operating model can expand to donation intake, warehouse and cold-storage capacity, volunteer availability, weather closures, and coordination across food-bank networks. The next technical step is connecting authenticated warehouse, transportation, telematics, recall, and partner systems to the same governed planning loop.

For now, Full Shelf demonstrates the core idea: an agent fleet can help manage a living operation without asking the people responsible for it to surrender control.


Project links

  • GitHub: https://github.com/markbrazinski/full-shelf
  • Demo: https://youtu.be/4nFC-nqPI00

I created this post for the purpose of entering the All Things Agentic Hackathon.

Top comments (0)