Add Scene 7 claim report workflow
This commit is contained in:
+30
-16
@@ -5,23 +5,25 @@ Demo: **GUPI Demo 1 — The Barricelli Files**
|
||||
|
||||
## Outcome
|
||||
|
||||
Scene 7 teaches one idea: a screenshot found during an OSINT search can become
|
||||
source evidence.
|
||||
Scene 7 teaches two linked ideas: a screenshot found during an OSINT search can
|
||||
become source evidence, and a finding is only as useful as the report that cites
|
||||
and explains that evidence.
|
||||
|
||||
The player opens a minimal OSINT board, reads **“Demonstrate OSINT skill: prove
|
||||
Nils Aall Barricelli was an inventor,”** finds the relevant Google Patents result,
|
||||
and pastes or uploads one screenshot. The board creates a document, extracts its
|
||||
text, recognizes the source, and clears the level. A URL and written report are
|
||||
not required.
|
||||
text, and recognizes the source. The player connects that document to the authored
|
||||
Claim, completes the evidentiary statement, and files the generated Case Report.
|
||||
|
||||
```text
|
||||
paste screenshot -> document appears -> text is read -> source is verified
|
||||
-> Scene 7 complete -> continue to Scene 8
|
||||
paste screenshot -> document appears -> source is verified -> connect to Claim
|
||||
-> submit thin report -> provenance feedback -> accepted -> Scene 8
|
||||
```
|
||||
|
||||
## Product decisions
|
||||
|
||||
- One suitable Google Patents screenshot is sufficient.
|
||||
- One suitable Google Patents screenshot is sufficient evidence, but not by itself
|
||||
a complete investigation.
|
||||
- Clipboard paste and file upload use the same server path.
|
||||
- The image and OCR remain a real source document on the player's board.
|
||||
- A known-source fuzzy match is the fast, deterministic victory path.
|
||||
@@ -33,6 +35,16 @@ paste screenshot -> document appears -> text is read -> source is verified
|
||||
- Scene 7 records `scene7.nils_inventor_proved`. Scene 8 owns the ceremony and
|
||||
awards `barricelli_luggage`.
|
||||
- Inconclusive evaluation never deletes or penalizes uploaded evidence.
|
||||
- Scene 7 begins with one normalized, pinned Claim exhibit: **“Nils Aall
|
||||
Barricelli was an inventor.”**
|
||||
- A new thread begins with **“Proof that…”**. This placeholder intentionally
|
||||
produces a report that must be improved.
|
||||
- An accepted source connected to the Claim can earn a qualified pass while the
|
||||
report is returned for missing date/source provenance.
|
||||
- The source link is encouraged but optional; date, source citation, investigator,
|
||||
and a completed evidentiary statement are required.
|
||||
- Story advancement requires an accepted report when the template marks its report
|
||||
as required.
|
||||
|
||||
## Shared identifiers
|
||||
|
||||
@@ -56,6 +68,8 @@ conditional in React or server business logic.
|
||||
- `029_semantic_evidence_judging.sql`: clonable semantic rules, level-owned
|
||||
evaluations, and semantic flag provenance.
|
||||
- `030_evidence_match_source_metadata.sql`: author-only canonical source metadata.
|
||||
- `031_claim_case_reports.sql`: Claim exhibits, stable exhibit citations, report
|
||||
configuration, immutable submissions, and normalized submission issues.
|
||||
- `server/ocr.ts`: plain-text extraction and Tesseract.
|
||||
- `server/evidenceMatching.ts`: OCR-tolerant fuzzy passage matching.
|
||||
- `POST /api/levels/:id/documents`: persistent upload plus OCR and matching.
|
||||
@@ -237,8 +251,7 @@ type DocumentAnalysis = {
|
||||
## Out of scope
|
||||
|
||||
- Scenes 1–6, Scene 8's ceremony/3D model, and Scene 9's fire mystery.
|
||||
- Knowledge graph, Case Report, claims, red-thread reasoning, or multi-document
|
||||
synthesis.
|
||||
- Knowledge graph, general-purpose claim ontology, or multi-document synthesis.
|
||||
- Web crawling, URL fetching, or requiring a URL for victory.
|
||||
- Custom model training or the general story graph `llm_gate`.
|
||||
- Deleting irrelevant evidence.
|
||||
@@ -255,10 +268,11 @@ parallel schema work and never renumber an already-shared migration silently.
|
||||
|
||||
## Definition of done
|
||||
|
||||
From a fresh playthrough, the player reaches Scene 7 and pastes one accepted
|
||||
Google Patents screenshot. One source document appears; MinIO asset, OCR, match
|
||||
evaluation, and `scene7.nils_inventor_proved` are persisted; the goal completes;
|
||||
the UI explains what was proved and offers Continue; and the story enters Scene 8.
|
||||
Reload and duplicate evaluation are idempotent, another player's level is
|
||||
unaffected, no URL was required, and `barricelli_luggage` is not awarded until
|
||||
Scene 8.
|
||||
From a fresh playthrough, the player reaches Scene 7 and sees one authored Claim.
|
||||
They paste one accepted Google Patents screenshot, connect Exhibit 1 to the Claim,
|
||||
and see **“Proof that…”** appear in the typewriter report. The first thin submission
|
||||
passes the evidence but is returned for provenance; adding the date, source citation,
|
||||
and a proper evidentiary statement produces an accepted report and enables Continue.
|
||||
MinIO asset, OCR, match provenance, stable exhibit number, connection, report
|
||||
submissions, and `scene7.nils_inventor_proved` persist. A URL improves the report
|
||||
but remains optional, and `barricelli_luggage` is not awarded until Scene 8.
|
||||
|
||||
Reference in New Issue
Block a user