Always free. For everyone.
Project lab
Intake · Foundation

Build a workshop request inbox.

Validate incoming requests, identify duplicate deliveries, and keep rejected work visible.

Open in the Learning Lab
THE CHALLENGE

Can every incoming row be accounted for without creating duplicate work?

A fictional community workshop receives repair and training enquiries. Its form can deliver an event twice. Some records have blank fields. Build a local inbox that preserves the source row, records a clear outcome, and prepares valid work for review.

Build it, step by step

  1. 01

    Write an input contract for event_id, request_id, message, and topic.

  2. 02

    Load the CSV as strings. Convert or validate values explicitly.

  3. 03

    Separate invalid, unrelated, duplicate, and accepted events. Keep a reason for each outcome.

  4. 04

    Replay the same batch with previously accepted ids and compare the result.

  5. 05

    Add at least five new cases and write a handover describing durable storage still needed.

WHAT GOOD WORK LOOKS LIKE

Your project checklist

  • Every input row has an outcome and a reason.
  • Empty required fields do not reach the drafting step.
  • Repeated deliveries do not create additional work.
  • New requests with similar text remain distinct.
  • The handover explains the limits of in-memory state.
ABOUT THE LEARNING LAB

Free, open and run by a nonprofit.

This page is part of AI Automation, a free course of 20 modules and 60 lessons in the engineering.fit( ) Learning Lab. The Learning Lab is built and run by engineering.fit( ), a nonprofit founded by Abdullateef Opeyemi Bakare that helps African engineering students gain research experience. You do not need an account or pay a fee to learn.

Course outline · Project lab · Visit engineering-fit.org