Skip to content
Page 4 of 6

Ship It

From Verified to Live

You've built features, verified them against acceptance criteria, and now have automated tests that check themselves. There's one step left: put it in front of real users.

Think back to the Explore step, the very beginning of your workflow. You started by understanding who you're building for: an ONI watch floor analyst monitoring vessel traffic across an ocean region, triaging sanctioned vessels, and investigating behavioral patterns. You made assumptions about what matters to that analyst, how they'd interact with the tool, and what would help them triage faster. Those assumptions are baked into every user story you wrote and every acceptance criterion you defined.

Here's the thing: your tests verify that the code works as specified, but they can't tell you whether the specification itself was right. Does the sanctions screening actually help the analyst spot the vessels that matter? Does the vessel detail view surface the right information for a triage decision? Is the traffic display organized the way someone on a 12-hour watch shift would want to scan it? You won't know until real people use it.

Every product is built on assumptions. Deployment is how you start validating them. Until your application is in front of real users, you're guessing, no matter how good your tests are.

The Full Pipeline

Here's what the complete workflow looks like, from idea to live application:

  1. Explore: understand who you're building for and what they need
  2. Plan: write user stories with acceptance criteria (your delegation contract)
  3. Implement: hand the story to AI and let it build
  4. Verify: automated tests pass + visual verification confirms the experience
  5. Ship: deploy to a live URL

The first four steps are the Explore → Plan → Implement → Verify workflow from Lesson 1, with Lesson 3's automated tests now handling the Verify step. Deployment is the natural conclusion: once tests confirm the work is verified, ship it.

Tests gate deployment. If your tests pass, you have evidence that the application works as specified. If they fail, something needs to be fixed before it goes live. This isn't about being cautious. It's about being confident. You ship because the tests give you reason to.

The ideal: one command that runs everything, all your quality checks, tests, and the build. A single signal: pass or fail, no partial credit. When that command passes, you're clear to ship. When it fails, you fix before you ship. It doesn't matter who wrote the code: you, AI, or a teammate. The gate is the same.

But notice that the pipeline isn't a straight line. It's a loop. Shipping connects back to Explore. Real users generate real feedback: they use features you didn't expect, ignore features you thought were essential, and ask for things you didn't anticipate. That feedback becomes the most valuable input to your next round of Explore. You built what you thought users needed. Now you find out if you were right, and what to build next.

Deployment in Your Environment

Your Environment comes with a deployment pipeline already configured. You don't need to set up servers, configure infrastructure, or understand cloud architecture. The hard part is already done.

Here's how the pipeline works. Your AI assistant commits and pushes your changes to the main branch. Every push to main triggers the pipeline, which runs your tests, security scans, and any other checks configured for your project. When the pipeline passes, deployment happens automatically. You don't need to run a deploy command; pushing to main IS deploying.

If something fails, your AI assistant can help you debug. You can ask it things like:

Did my tests pass in the pipeline?
How is my pipeline looking?

In Your AI Assistant

Your workspace has a pre-configured deployment pipeline. Your AI assistant can help you check pipeline status and debug failures, but deployment itself is automatic on every push to main.

When the pipeline passes, click Production on your dashboard to see it live. This is your application: live, accessible, built by your team with AI.

Deploy Your Application

Mob Session | ~3 minutes total | One person drives, everyone else navigates.

Rotate the driver. Pick someone who hasn't been at the keyboard recently.

Step 1: Make sure your tests pass. Ask your AI coding assistant:

Run all the tests.

If anything fails, fix it first. Tests gate deployment. Nothing ships with failing tests.

Step 2: Run Save & Sync:

Save my progress and sync it.

Save & Sync pushes your work to the main branch. Every push to main triggers the deployment pipeline, which runs automated checks (tests, security scans) before anything goes live. If the pipeline passes, your application deploys automatically.

The pipeline can take several minutes to run. Don't wait for it. Continue on through the curriculum and check on it when you start your Challenge. If the pipeline failed, ask your AI assistant:

```
How is my pipeline looking? Did anything fail? Help me fix it.
```

When the pipeline passes, click Production on your dashboard to see it live. Walk through your Dark Vessel Risk Assessment Tool as a team: scan the traffic display, check the sanctions flags, pull up a vessel's details, investigate a gap history. Exercise the analytical workflow you built across Challenges 1 and 2.

The Journey So Far

Team Discussion | ~2 minutes total

You just shipped a live, tested application.

Discuss: Trace the path of a single acceptance criterion through the lessons. It started as part of a delegation contract (Lesson 1). It became a manual checklist item (Lesson 2). It became an automated test (Lesson 3). And it just gated the deployment of a live application. How does each step build on the last?

What's Next

You've come a long way since Lesson 1. You started with the fundamentals: how AI thinks, how to make clear requests, how to write delegation contracts. In Lesson 2, you leveled up: decomposing big goals, encoding processes as skills, and reviewing output against acceptance criteria. Now in Lesson 3, you've automated verification and shipped a live application.

But notice what's still happening: you're working through your backlog one piece at a time. Write a story. Delegate. Wait. Verify. Move on to the next one. AI is faster than you at building, but you're still the bottleneck because you can only focus on one workstream at a time. There's so much more you want to build.

In Lesson 4, you'll break that bottleneck.

Key Insight

Tests gate deployment. They give you the confidence to ship, not just the hope that it works. But shipping isn't the finish line. Every product is built on assumptions about what users need, and deployment is the only way to validate those assumptions. The pipeline loops: Ship connects back to Explore, and what you learn from real users drives what you build next. Your acceptance criteria started as delegation contracts in Lesson 1, became manual checklists in Lesson 2, became automated tests in Lesson 3, and now gate the deployment of a live application. But the real test is whether the people you built it for actually use it.