Plugin → web app
Migration Checklist
Every capability from the ChatGPT plugin export, mapped to its status here.
Implemented
- doneJSON import & input detectionDistinguishes RAG array, wrapped records and raw crawl envelope.
- doneExact eleven-key schema validationKeys, types, snake_case IDs, lang, 3–5 variants, 4-field metadata, Malaysia-time crawled_at_my_tz, 30–70-word search_text, source links.
- doneAudit ledgerEvery input entry is approved / hold / excluded with reasons; merge mappings retained.
- done06 270 phone exclusionSame regex as the original crawler; +606 229 2182 and emails preserved.
- doneWebsite crawler (port of crawl_website.py)Depth 4 / 300 attempts / 5 redirects / 0.5 s / 20 s / 8 MiB, robots, www scope, EN+MS, document-route filter, priority, checkpoints.
- doneDeduplicationDuplicate IDs, identical answers, near-duplicate questions with reviewer-controlled merge.
- doneRAG JSON exportApproved-only top-level array, web_<entity>_rag_<DDMMYY>.json, KL date.
- doneQ&A workbook exportReal XLSX: one Q&A sheet, 4 text columns, frozen header, filter, reopened and reconciled 1:1.
- doneWord audit summaryGenuine .docx, ≤200 words, built from audit evidence only.
- doneBilingual RAG generation (Stage 2)Lovable AI converts each crawled page under the original SKILL.md, DBP and Fact & Figure rules. Metadata/source_url/lang come from the fetch; every record must quote verbatim evidence or it is held; 06 270 numbers scrubbed.
Partially implemented
- partialVector readinessDeterministic checks + local BM25 retrieval with must_match. No embeddings or deployed vector-store test.
- partialKnowledge Manager persistenceStored in this browser (IndexedDB). Shared, multi-user storage needs Lovable Cloud.
- partialCrawler runtimeRuns from the open browser tab; closing it stops the crawl (checkpoint kept). No JavaScript page rendering.
- partialWorkbook citation ruleOriginal instructions conflict; resolved by an explicit user toggle in Export Center.
- partialAudit Word reviewContent verified; rendered visual layout review is not automated.
Missing dependencies
- partialSemantic evidence reviewVerbatim-evidence check is automatic; contradiction/currentness review across pages still needs a human reviewer.
- missingDBP Malay sign-offDBP rules are applied during generation, but authoritative DBP terminology lookup has no service adapter; human sign-off required.
- missingGeneration from uploaded legacy RAG/XLSXRe-converting existing records (e.g. legacy FAIX entries lacking provenance) is not supported; they stay held.
- missingXLSX input importUploading XLSX as source input is not yet supported (JSON only).
- missingStaff directory / glossary snapshotsNot in the export; cannot be recreated.
- missingFact & Figure label verification by renderingNeeds a headless browser/screenshot service.
Required integrations
- doneLovable AIEnabled; used for bilingual generation.
- missingLovable Cloud databaseCloud is enabled, but datasets still live in the browser; shared storage and sign-in are not built yet.
- missingVector store + embeddingsYour Development Vector Store (provider and credentials not specified).
- missingRendering service (optional)For JavaScript pages and statistic cards.
Validation & testing status
- doneAutomated tests (14 passing)Phone rule, document routes, URL normalisation, cfemail, robots, parser contacts, crawl engine with redirects/robots/scope, schema rules, FAIX sample (53 entries held), dedup, naming, XLSX round-trip.
- doneLive AI generationOne real generation on FAIX page text: 3 records, 0 schema issues, 06 270 fax removed, +606 229 2182 kept.
- partialLive crawlEngine tested with simulated site responses only; a live crawl of a UTeM site has not been run in this session.
- missingRetrieval qualityNo deployed vector-store or Playground test.