MoveNLearnSource & verification ↗
Product operations / intake & handoff

A clear next step.A traceable handoff.

Follow a fictional preparation enquiry from orientation to a review request. Each step shows what is stored and where a person still needs to decide.

01Structured enquiry
02Preparation check
03Explicit review request
04Human follow-up
Explore the behavior · synthetic fixtures

Orient without creating a record

The preparation checklist identifies missing items. Without an explicit review request, no CRM-like record is created.

Download this result →

Without opt-in0 records
Inspect the generated JSON
{
  "orientation": {
    "notice": "Synthetic demo data — no real customer information.",
    "rules_version": "demo-1",
    "profile_id": "SYN-001",
    "status": "PREPARATION_INCOMPLETE",
    "missing_items": [
      "language_summary"
    ],
    "eligibility_decision": null,
    "boundary": "Preliminary orientation is not an eligibility decision.",
    "next_step": "Human review may be requested; institutional decisions are outside this demo."
  },
  "record": null,
  "records": 0
}

Create an explicit review task

Opting into review creates one synthetic record with a stage, next action and a fictional follow-up date.

Download this result →

Review requested1 record
Inspect the generated JSON
{
  "record": {
    "notice": "Synthetic demo data — no real customer information.",
    "record_id": "CRM-DEMO-001",
    "profile": {
      "synthetic": true,
      "profile_id": "SYN-001",
      "locale": "en",
      "target": "fictional-study-preparation",
      "documents": {
        "education_summary": true,
        "language_summary": false,
        "target_note": true
      }
    },
    "orientation": {
      "notice": "Synthetic demo data — no real customer information.",
      "rules_version": "demo-1",
      "profile_id": "SYN-001",
      "status": "PREPARATION_INCOMPLETE",
      "missing_items": [
        "language_summary"
      ],
      "eligibility_decision": null,
      "boundary": "Preliminary orientation is not an eligibility decision.",
      "next_step": "Human review may be requested; institutional decisions are outside this demo."
    },
    "stage": "REVIEW_REQUESTED",
    "next_action": "Review preparation notes and identify questions for human follow-up",
    "next_action_date": "2030-01-15",
    "date_scope": "Synthetic scheduling value; not a service promise",
    "attribution": {
      "source": "synthetic-showcase",
      "channel": "local-demo"
    },
    "history": [
      {
        "event": "HUMAN_REVIEW_REQUESTED",
        "actor": "synthetic-participant"
      }
    ]
  },
  "records": 1
}

Reuse the existing handoff

Submitting the same identifier and content returns the same record. The store still holds a single request.

Download this result →

After replay1 record
Inspect the generated JSON
{
  "identical_record": true,
  "records": 1,
  "stage": "REVIEW_REQUESTED"
}

Reject conflicting input

Reusing the identifier with changed content raises an error. The existing request is preserved.

Download this result →

Request rejectedConflict
Inspect the generated JSON
{
  "error": "Submission identifier conflicts with an existing request",
  "records": 1
}

This synthetic, in-memory example demonstrates preparation checks and a handoff. It makes no admission or eligibility decision. It is separate from the public MoveNLearn website and production systems.