- New ExternalImportSource and ExternalWorkHistoryEntry models, controller and migrations - Screening fields on external profile imports - Admin and provider profile views, routes and workflow tests updated - Phase 1 validation, route inventory, gap report template and roadmap docs - Add the Google Sheets work-order parser tool (tools/google-sheets-wo-parser)
12 KiB
Urgent Import Roadmap
This roadmap promotes Field Nation and WorkMarket history import into an urgent lane. It starts from the current codebase, which already supports manual imported-history records, proof attachments, visibility controls, and admin verification.
The goal is to let a provider pull their own marketplace history into Provider Exchange / Technical Services Exchange as quickly as possible without scraping private systems blindly, exposing customer data, or mixing imported history into native TSE reputation.
Current Import Baseline
Implemented today:
external_profile_importsrecords.- Provider-entered platform, external ID, profile URL, rating, review count, completed jobs, work categories, selected reviews, operational metrics, notes, visibility, and verification status.
- Proof attachments on imported-history records.
- Public/private visibility modes.
- Admin verification status.
- Public provider-profile display of imported history according to visibility.
- Tests for saving imports, visibility, and admin verification.
Missing:
- File/export upload intake. First pass complete for private source batches.
- Structured parser for exported profile data.
- Field Nation-specific import mapping.
- WorkMarket-specific import mapping.
- Review/work-history deduplication.
- Privacy redaction workflow for customer names, addresses, work-order IDs, and private buyer details.
- Provider preview/approval before imported data becomes public.
- Admin review queue focused on imported proof.
- Repeat import/update flow.
- Import audit trail and failure reporting.
Import Principles
- Providers may import their own records and proof.
- Do not automate login scraping until terms, privacy, and technical risks are explicitly reviewed.
- Prefer user-provided exports, screenshots, PDFs, CSVs, emails, or copied profile data first.
- Keep raw proof private by default.
- Never publish customer names, site addresses, buyer-private notes, work-order IDs, or private marketplace content by default.
- Keep imported history separate from native TSE reviews and completed work.
- Every transformed import should be previewed and approved by the provider before public display.
- Every admin verification action should be audited.
Phase I1 - Export Intake And Raw Proof Vault
Purpose:
Let a provider upload Field Nation or WorkMarket source material without needing a polished parser first.
Status:
First implementation pass added local/private source-batch storage, provider upload UI, admin visibility, audit logging, and feature tests.
Build:
- Import source upload screen under the provider profile. First pass complete.
- Supported source types. First pass complete:
- PDF;
- image;
- CSV;
- JSON;
- HTML copy/export;
- plain text paste;
- email/message export pasted as text.
external_import_sourcestable for raw import batches. Complete.- Link source batches to
external_profile_imports. Complete. - Store original filename, MIME type, source platform, source type, uploaded by, uploaded at, and parse status. Complete.
- Keep raw source private and admin-visible only. Complete with private
localstorage by default. - Add provider notes describing where the source came from. Complete.
- Add a "do not publish raw proof" default. Complete through private storage and
needs_reviewstatus.
Acceptance:
- A provider can upload Field Nation proof today even before parsing is perfect.
- Raw proof is retained privately for review.
- The existing manual imported-history record can reference the source batch.
Phase I2 - Manual Review Workspace And Redaction
Purpose:
Make imported proof safe to use by separating private source material from public profile summaries.
Build:
- Provider import workspace showing uploaded source batches.
- Redaction checklist:
- customer names;
- addresses;
- work-order IDs;
- phone numbers;
- emails;
- private buyer instructions;
- payment account details;
- marketplace-private messages.
- Provider-selected public excerpts.
- Admin-visible private notes.
- Public summary preview.
- Redaction status:
- needs review;
- provider reviewed;
- admin reviewed;
- approved for public summary;
- rejected for public display.
Acceptance:
- A provider can safely turn private proof into a public summary.
- The UI makes it hard to accidentally publish sensitive third-party details.
- Admins can see raw proof without making it public.
Phase I3 - Field Nation Parser First Pass
Purpose:
Extract useful provider-owned history from common Field Nation source material.
Build:
- Parser interface with platform-specific adapters.
- Field Nation adapter for provider-supplied source files.
- Extract when present:
- provider profile ID or profile URL;
- rating;
- review count;
- completed work count;
- client count;
- service categories;
- review snippets;
- dates or recency hints;
- on-time or reliability metrics if present;
- work summary categories if present.
- Store parsed output separately from approved/public output.
- Confidence flags for parsed fields:
- high;
- medium;
- low;
- needs manual confirmation.
- Parser error and warning display.
- First-pass text parser for copied/exported profile text. Implemented.
- Provider approval from parsed draft into imported-history summary. Implemented.
Acceptance:
- A provider can upload a Field Nation export/screenshot/PDF/text source and get a structured draft.
- The provider can edit or reject every parsed field before saving.
- Low-confidence fields never publish automatically.
Phase I4 - WorkMarket Parser First Pass
Purpose:
Add equivalent parser support for WorkMarket source material.
Build:
- WorkMarket platform adapter.
- WorkMarket-specific field mapping for ratings, reviews, completed work, categories, and proof excerpts.
- Same draft, confidence, preview, and approval flow as Field Nation.
Acceptance:
- WorkMarket imports follow the same safe workflow as Field Nation imports.
- Platform-specific differences stay inside parser adapters, not scattered through controllers and views.
Phase I5 - Normalization And Deduplication
Purpose:
Turn repeated imports into stable provider history instead of duplicate profile clutter.
Build:
- Canonical imported profile per provider and platform.
- Import run records for each uploaded source batch.
- Deduplication by platform, external ID, profile URL, date, review text hash, and proof source.
- Change summary between imports:
- rating changed;
- review count changed;
- completed jobs changed;
- new category;
- new selected review;
- verification changed.
- Provider approval for updates.
- Admin review for material public changes.
Acceptance:
- Re-importing updated Field Nation data updates the existing imported profile instead of creating confusing duplicates.
- Providers and admins can see what changed between import runs.
Phase I6 - Imported History Profile UX
Purpose:
Make imported history persuasive and clearly separate from native TSE reputation.
Build:
- Imported-history profile section redesign.
- Separate cards for:
- Field Nation;
- WorkMarket;
- other platforms.
- Show:
- provider-attested summary;
- admin verification badge;
- last imported date;
- selected public review snippets;
- category history;
- metrics with source labels;
- proof availability without exposing private proof.
- Clear copy that imported history is separate from native TSE work.
- Provider-controlled public/private toggles per field group.
Acceptance:
- A buyer can understand a provider's external marketplace history without confusing it for TSE-native reputation.
- A provider controls what is public.
- Verification status is visible and honest.
Phase I7 - Admin Verification And Audit
Purpose:
Give admins enough tools to verify imported proof without creating a hidden reputation score.
Build:
- Dedicated imported-history admin queue.
- Filters by platform, status, provider, source type, and age.
- Verification actions:
- approve summary;
- request more proof;
- mark unverifiable;
- reject public excerpt;
- approve public excerpt.
- Admin notes.
- Audit logs for every verification action.
- Provider notification when verification status changes.
Acceptance:
- Admins can verify imported proof consistently.
- Providers can see verification results.
- Verification does not silently alter reputation without visible context.
Phase I8 - Fast Personal Field Nation Import
Purpose:
Get the user's own Field Nation data into the app as soon as the safe intake and parser path exists.
Status:
First logged-in capture and private local test import completed on 2026-07-18 for Field Nation provider ID 172630.
Completed:
- Captured profile text, screenshots, structured page attributes, availability, recommendation state, screening text, and work-summary data.
- Exported the full logged-in work-history table:
961unique rows across28pages. - Confirmed a no-cookie request to the profile URL redirects to Field Nation login.
- Attached the profile capture and work-history CSV as private local import-source batches.
- Parsed and approved a private imported-history summary with Field Nation ID, rating, rating count, completed jobs, client count, timeliness score, backout score, work categories, and endorsements.
- Added first-class screening fields for imported background-check and drug-test status.
- Added an external work-history table and imported all
961captured Field Nation job rows into the local database as private imported proof. - Added provider edit display for private imported screenings and recent external jobs.
- Added public/redacted provider-profile display for imported screenings and recent external work when the imported summary visibility allows it.
Remaining:
- Add filtering/search/pagination for large imported external work-history sets.
- Add provider controls for which external work-history fields can be public beyond the current redacted sample.
- Keep API research open, but do not block the urgent import lane on Field Nation API credentials.
Build:
- Use the provider's own exported/downloaded/provided Field Nation material.
- Import into the local/dev environment first.
- Review parsed fields manually.
- Redact sensitive details.
- Save public summary and private proof.
- Admin-verify locally if appropriate.
- Document exact source format and parser gaps found.
Acceptance:
- The user's Field Nation history appears on their provider profile in a safe imported-history section.
- Sensitive third-party details remain private.
- Any parser limitations are captured as follow-up tasks.
Phase I9 - Tests And Fixture Library
Purpose:
Make imports reliable without depending on live third-party sites.
Build:
- Sanitized Field Nation fixtures.
- Sanitized WorkMarket fixtures.
- Parser unit tests.
- Feature tests for upload, parse, preview, approve, publish, verify, and re-import.
- Privacy regression tests that prevent known sensitive fields from becoming public.
Acceptance:
- Import behavior is covered by repeatable local tests.
- Parser work can continue without using real private exports in the repo.
Immediate Implementation Sequence
- Add source-batch storage and upload UI. First pass complete.
- Add provider preview/redaction workflow. Partial first pass complete with parsed draft preview and private approval.
- Add Field Nation parser adapter against provider-supplied samples. First text-like parser pass complete.
- Import the user's Field Nation data locally.
- Add WorkMarket parser after the Field Nation path is proven.
- Add dedupe/re-import and admin queue improvements.
Data Needed From Provider
To implement the Field Nation path quickly, collect one or more provider-owned samples outside the public repo:
- profile page PDF print;
- profile screenshots;
- exported CSV/PDF if Field Nation provides one;
- copied text from profile/reviews/work summary;
- email summaries or downloaded reports if available.
Store real samples only in local/private storage or KeePass attachments. Do not commit real Field Nation exports containing customer or marketplace-private details.