ProSe Legal Operations Platform
Justice For All
Public filing upload

Upload the documents you want reviewed before anything moves forward

Take a photo, choose files, or bring in a full packet. This lane keeps the upload queue visible, preserves draft state, and carries the packet into human review before staging.

Ready for bulk intake
Start with files, folders, or archives. This lane is designed to keep the whole bundle visible from first drop through review.
Files queued
0
Add files, folders, or archives to start the intake bundle.
Total size
0 B
Large archive intake is supported through the signed-in direct-storage lane.
ZIP bundles
0
ZIP, 7z, and RAR bundles are accepted into the queue.
Upload Intake Lane
Route status: Runtime is ready for durable direct uploads, but you still need to sign in to use it.
Device intake
Drag files here or open the bulk picker
Accepted now: PDFs, images, Word docs, emails, text files, screenshots, and ZIP archives. There is no UI-only 25 MB cap here anymore — the signed-in direct-storage lane is the path for huge files and giant archive bundles.
• Queue names and statuses persist locally so you can leave and come back without losing the shell view.
• Direct upload progress and percentage appear here during durable intake upload.
• ZIP bundles are accepted for automated intake and downstream parsing lanes.
Dedicated ingest boundary
Upload sessions are separate from the normal app and filing APIs.
The public filing lane starts by creating an upload set. Raw files belong in the ingest boundary, not the normal app API or filing envelope API.
Session API
/api/ingest/sessions
Upload API
/api/ingest/uploads
Parser worker
Protected worker; browser blocked
Promotion
Human review required
Pass 549 · Ingest quarantine API split

Uploads enter quarantine before parser candidates or filing facts exist.

Public upload APIs create quarantine SourceFile records and parser candidate envelopes. Filing, queue, and docket records stay fenced until human review confirms what should be promoted.

0 quarantined source files
Raw upload path
quarantine/*/raw
Parser output
staged candidates only
Official records
human review required
/api/ingest/sessions
ingest
/api/ingest/uploads
ingest
/api/ingest/jobs
ingest
/api/ingest/jobs/status
ingest
Add files to see SourceFile quarantine records. Until then, the route still advertises the split: upload session, upload metadata, parser job, candidate staging, and promotion gate are separate concerns.
Pass 550 · SourceFile + FilingDraft records

Every upload is tied to a draft, hash, scan state, and audit event.

The public filing draft keeps ownership and provenance separate from the raw file. SourceFile records carry metadata only: owner, draft, hash, source, timestamp, file type, scan state, and audit event.

0 normalized source files
Draft
public-filing-draft
Hash
Recorded when upload begins
Scan state
Scanner required
Audit
Draft provenance recorded

Parser job lifecycle

Durable status, checkpoint, and recovery trail

Pass 551

Allowed states

pending → running → blocked → failed → needs_review → complete

Visible + recoverable

confirmed

Candidate-only output

staged candidates only

parser-job-1

pending

start-or-resume-parser

resumable: true · recoverable: true

Pass 552 · Filing candidate extraction

Parser findings stay staged until a human confirms them.

Court, venue, docket, filing type, parties, document class, signature, certificate, proposed order, fee, waiver, and confidentiality signals are review candidates only.

12 candidates

Output

staged candidates only

Review gate

human confirmation required

Canonical records

no official mutation

signature

needs_review

signature-not-detected

editable · confirmation resets on edit · confidence 42%

certificate of service

needs_review

certificate-of-service-not-detected

editable · confirmation resets on edit · confidence 42%

proposed order

needs_review

proposed-order-not-detected

editable · confirmation resets on edit · confidence 42%

fee

needs_review

fee-status-needs-review

editable · confirmation resets on edit · confidence 40%

fee waiver

needs_review

fee-waiver-not-detected

editable · confirmation resets on edit · confidence 43%

confidential indicator

needs_review

confidentiality-needs-review

editable · confirmation resets on edit · confidence 45%

Pass 553 · Candidate contradiction detection

Conflicting autofill stays blocked for human review.

Court, venue, docket, party, caption, filing type, and document class conflicts create warnings before staging. They do not overwrite official records.

2 warnings

Conflict output

warnings only

Staging

blocked until reviewed

Canonical records

no official mutation

court

needs_human_review

District Court · Court needs review

warning only · human review required · no canonical write

caption

needs_human_review

Caption needs review · Caption candidate from upload

warning only · human review required · no canonical write

Pass 554 · Missing item detection

Missing filing items are visible before staging.

Signature, certificate, required attachment, proposed order, fee waiver posture, service proof, and required form gaps create review warnings before staging.

7 gaps

Gap output

warnings only

Staging

visible before staging

Canonical records

no official mutation

Signature

needs_human_review

Missing signature must be visible before staging and reviewed by a person.

visible before staging · human review required · no canonical write

Certificate of service

needs_human_review

Missing certificate of service must be visible before staging and reviewed by a person.

visible before staging · human review required · no canonical write

Required attachment

needs_human_review

Missing required attachment must be visible before staging and reviewed by a person.

visible before staging · human review required · no canonical write

Proposed order

needs_human_review

Missing proposed order must be visible before staging and reviewed by a person.

visible before staging · human review required · no canonical write

Pass 555 · Human promotion gate

Human confirmation controls staged filing data.

Parser values remain candidates until a filer or court staff reviewer confirms them. Any reviewed field change resets confirmation and blocks staging again.

blocked

Parser output

candidate-only

Promotion

human confirmation required

Staging

blocked on resets

human confirmation required

needs_review

Candidate value cannot become staged filing data until a public filer or court staff reviewer confirms it.

no parser output becomes staged filing data without confirmation

human confirmation required

needs_review

Candidate value cannot become staged filing data until a public filer or court staff reviewer confirms it.

no parser output becomes staged filing data without confirmation

unresolved warning

needs_human_review

Warning must be reviewed before staging.

no parser output becomes staged filing data without confirmation

unresolved warning

needs_human_review

Warning must be reviewed before staging.

no parser output becomes staged filing data without confirmation

Pass 556 · Ingest failure recovery

Bad files create recoverable states instead of silent failure.

Password-protected, corrupted, unsupported, unreadable, OCR-needed, oversized, or unsafe uploads produce visible recovery steps before staging.

2 recovery states

Failure mode

visible

Recovery

action required

Staging

blocked until recovered

OCR needed

recoverable

The file appears to be a scan or image-only document and needs OCR review before candidate extraction.

actions: request_ocr_review, manual_clerk_review, preserve_failure_receipt

Unsupported file type

recoverable

Convert the file to PDF, JPG, PNG, DOCX, or text before uploading again.

actions: convert_to_pdf_or_image, retry_upload, preserve_failure_receipt

TAHAI Filing Protocol
Shared preflight checks run before staging.

ProSeOps, CounselOps, Firm PSA, and public e-filing use the same canonical preflight protocol. Court/location, caption/docket, filing code, required form, attachment, signature, fee/waiver, confidentiality, and relation-back checks stay review-safe and cannot submit to court.

6 blockers
1 warning
7 court review items
Export: PDF + JSON
Filing code or case type should be reviewed
Choose the closest filing code and confirm the case type before final submission handling.
Caption must be confirmed
Confirm or edit the caption before staging.
No filing document is attached
Upload the filing document and classify attachments before review.
Court-specific rules require final review
Confirm jurisdiction-specific attachment, service, fee, and formatting requirements before final court submission handling.
Preflight report export is court/filer-safe PDF and JSON with blockers, warnings, informational items, and review states. Official record mutation: false. Canonical mutation: false.
Service, notice, receipts, rejection repair
Service and correction loops stay visible before staging.

Party → service method → contact → authorized → selected → case service list → blocking issue → fix is shown for every service row. The filing path separates eFile Only, eFile and Serve, manual service, and mixed service, while proof, receipts, rejection intake, repair tasks, and fallback packets remain review-safe.

0 service blockers
Path: court review needed
Proof: filed but unserved
Fallback: PDF + JSON + manifest
Filing party
service method not selectedNot selected → authorized: no → selected: no → case service list: associatedno blocking issueRecord the manual service method, deadline, and proof-of-service plan before relying on the packet.
Responding party
service method not selectedNot selected → authorized: no → selected: no → case service list: associatedno blocking issueRecord the manual service method, deadline, and proof-of-service plan before relying on the packet.
Receipt ledger stages include drafted, reviewed, staged, submitted externally, served, rejected, accepted, entered, docketed, corrected, resubmitted, and closed. Official record mutation: false. Canonical mutation: false. No direct court submission.
Set the real number of docket lanes involved in this bundle so lower-confidence splits get merged into a manual review lane instead of exploding into dozens of related matters and extra parse cost.
Process the bundle when you want the current queue and review hints promoted into the intake review lane. During upload or review handoff, the main action buttons stay temporarily locked so the bundle cannot double-submit. Repeated clicks also collapse into a single-flight action gate so review routing and queue actions do not race each other.
Bundle status
Direct browser-to-storage ingest is available on this build when you are signed in.
Total upload progress0%
0 B of 0 B moved through the active bundle.
Queue snapshot
Completed / ready0
Active0
Failed0
Local-only rows0
Cross-docket intake map
No case groups inferred yet.
Case groups0
Docket refs0
Court tracks0
Use folder names, docket numbers, and caption patterns to break one massive family-record drop into multiple related matters before case creation.
Review payload preview
Primary file
-
Upload mode
Single-browser local staging
Queued names
-
Probable cases
0
Archives
0
Probable case groups
No cross-docket grouping hints yet. Add files with docket numbers, captions, or court folder names to split the intake automatically.
Queued intake bundle
Nothing is queued yet. Drop files here, open a workspace folder, or add a giant ZIP bundle to start the intake shell.
Bulk intake action rail
Add the first file wave here, then use this rail to save locally or move into intake review.