Skip to content

Outside-person demo walkthrough (usability gate) #51

Description

@ChelseaKR

This issue exists to satisfy one specific gate: docs/ROADMAP.md blocks all new connectors, evidence families, and data categories until an outside person runs the synthetic demo without help and says whether the receipt answers their exit question. If you can spare 20–30 minutes and haven't worked on ExitDrill's code, you're exactly who this needs.

Multiple independent walkthroughs are welcome — please don't read other comments on this issue before doing your own run, so your answers stay yours and not primed by someone else's.

You qualify if

  • You're comfortable on a command line (can run git clone and make).
  • You have not written or reviewed ExitDrill's source.
  • Ideally, you've personally been on the hook for a real SaaS export, vendor migration, or "can we actually leave this system" question — but general technical curiosity is enough too.

Ground rules

  • Don't ask the maintainer for help mid-walkthrough. That defeats the point. If you get stuck, write down exactly where and what you expected instead — that's the data this gate needs, not a problem to route around.
  • Use only what's in this repository (README, linked docs). No outside explanation.
  • If you're stuck on one step for more than ~15 minutes, stop, note it, and move to the next part rather than trial-and-error your way through indefinitely.
  • It's fine to fail, get confused, or conclude the receipt doesn't answer your question. A stuck point or a "no" is exactly as useful as a clean run.

Prerequisites

  • Python 3.12+
  • uv
  • A terminal and a browser

Part A — run the demo (required)

git clone https://github.com/ChelseaKR/exitdrill.git
cd exitdrill
make install
make demo-compare
  • The install step finished without errors.
  • make demo-compare printed a four-line summary ending in something like:
    clean: structurally_restorable (0 loss signals)
    lossy: not_structurally_restorable (5 loss signals)
    changed dimensions: entities, relationships, attachments, permissions, audit_events
    reports: examples/synthetic-crm/out/report.html and examples/synthetic-crm-lossy/out/report.html
    

Part B — read the reports (required)

Open both files in a browser:

  • examples/synthetic-crm/out/report.html

  • examples/synthetic-crm-lossy/out/report.html

  • You looked at both reports before answering Part C.

Part C — answer without looking anything up again (required, this is the actual point)

Answer these from what you just saw — not from re-reading the README, and not from asking anyone:

  1. In your own words: what does structurally_restorable mean? What does not_structurally_restorable mean?
  2. Looking only at the reports, what specifically differs between the clean run and the lossy run?
  3. Think of a real export or migration you've personally been responsible for, or been burned by. Briefly, what happened?
  4. If this receipt existed for that real export, what decision — if any — would it let you make or defend?
  5. What would it not tell you, that you'd still want to know before treating a vendor export as a working exit?
  6. Where, if anywhere, did you get stuck, confused, or have to guess? Quote the exact command or sentence that didn't do what you expected.
  7. Total wall-clock time, start to finish.

Part D — optional, only if Parts A–C left you curious

Not required for this gate — skip straight to reporting back if you're done.

Report back

Paste this, filled in, as a comment on this issue:

### Outside-tester walkthrough

- Background: <e.g. "ops manager, migrated off a CRM last year" / "no relevant background, just curious">
- Part A: pass / stuck — <if stuck, where>
- Part B: done
- Part C:
  1. structurally_restorable means: ...
     not_structurally_restorable means: ...
  2. What differed: ...
  3. My real export/migration: ...
  4. Decision the receipt would support: ...
  5. What it doesn't tell me: ...
  6. Where I got stuck: ...
  7. Total time: ...
- Part D (optional): skipped / did the CLI walkthrough / did a canary — notes: ...

Thanks for spending the time — this is the one thing standing between this project and its next milestone.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions