Skip to content
Alex ALAVO

Engineering Case Study · Done 1:1 Digital

Designing an AI-assisted workflow for structured one-to-one meetings

Done 1:1 Digital turns a recurring management process into a traceable product workflow. The platform retrieves OKR context, guides preparation, supports comments and voice input, orchestrates AI assistance and produces a validated meeting record.

Role
Full-stack engineering, product workflow design, external integrations, AI orchestration, testing and deployment.

System Responsibilities

  • SaaS
  • AI Integration
  • API Integration

Technologies

  • Laravel
  • Vue
  • Inertia
  • Claude API
  • GraphQL
  • Queues
  • State Machine
  • Railway

Verified Evidence

7 verified results documented below.

Overview

Recurring manager-employee one-to-one meetings needed relevant OKR context, visibility into previous commitments and a reliable history for each pair, restricted to the approved organization.

  • Prepare meetings with relevant OKR context.
  • Make previous commitments visible.
  • Support manager and employee participation.
  • Generate a useful final summary.
  • Preserve a reliable history for each manager–employee pair.
  • Restrict access to the approved organization.

The problem

Weekly one-to-one meetings often depend on scattered notes, inconsistent preparation and manual follow-up. The system needed to preserve the human conversation while adding structure, context and continuity.

Constraints that shaped the system

  • Domain-restricted authentication.
  • External OKR data from Perdoo GraphQL.
  • Multiple phases with different permissions.
  • AI output had to remain contextual and controlled.
  • Meeting validation required data integrity.
  • Long-running sync work could not block the request cycle.

System architecture

A Laravel-centered SaaS architecture combines Inertia and Vue for the interactive product experience, background jobs for OKR synchronization, an explicit six-state workflow for meeting progression and three controlled AI prompt phases for preparation, analysis and final reporting.

System architecture diagram: Browser, Laravel application, MySQL, Queue workers, Scheduler, Perdoo GraphQL API, Claude API, Email delivery, Railway runtime.

client

Browser

Key engineering decisions

Explicit state machine

Accepted

Meeting permissions and available actions depend on the current phase.

Model the lifecycle as six explicit states: draft, ready for comment, ready for meeting, in progress, completed and archived.

Why

  • Prevent invalid actions.
  • Make UI permissions predictable.
  • Improve testing.
  • Preserve auditability.

Alternatives considered

  • Loosely coupled boolean status flags

Trade-offs

  • More transition logic, but far less ambiguity than loosely coupled boolean flags.

Separate AI phases

Accepted

AI assistance had to support three distinct stages of the meeting workflow - preparation, analysis and final reporting - without collapsing into one generic, hard-to-control prompt.

Use three context-specific AI interactions instead of one generic prompt.

Why

  • Different stages require different objectives.
  • Smaller prompt responsibilities improve control.
  • Context can be injected deliberately.
  • Outputs are easier to validate.

Alternatives considered

  • One generic prompt handling all meeting stages

Signed meeting content

Accepted

Meeting validation required data integrity.

Create a timestamped signature based on the final structured content.

Why

  • Detect unintended changes after validation.
  • Strengthen trust in archived records.

Implementation highlights

  • Google OAuth and organization-domain restriction.
  • Perdoo OKR synchronization through queued jobs.
  • Voice input using the Web Speech API.
  • Structured content stored as JSON.
  • Absolute-date constraints in AI-generated content.
  • Railway deployment.

Quality and operations

Testing

  • 37 automated tests.
  • State-transition coverage.
  • Integration debugging against real schema and data.
  • Clear separation between web requests and background processing.

Results and evidence

  • Implementation fact

    Six-state meeting workflow

    Draft, ready for comment, ready for meeting, in progress, completed, archived.

  • Implementation fact

    Three orchestrated AI prompt phases

    Preparation, analysis and final reporting.

  • Implementation fact

    Timestamped content signature

    Detects unintended changes after validation.

  • Verified metric

    Automated tests37

  • Implementation fact

    Perdoo GraphQL integration

    Retrieves OKR context for meeting preparation.

  • Implementation fact

    Queued OKR synchronization

    Background jobs keep long-running sync work outside the request cycle.

  • Observable capability

    Production deployment available

    Deployed on Railway.

Lessons from the system

  • AI should support a workflow, not replace its domain model.
  • Explicit states improve both UX and backend correctness.
  • External data synchronization belongs outside the request lifecycle.