| core-api (بیرون از این مخزن) |
مالک پرونده، RBAC، outbox/inbox و projection وضعیت محصول |
RabbitMQ · InboxEvent · SSE/WS |
کلید artifact و شناسهها را در requested میفرستد؛ document/context/prior-art/draft/conversation inboxها نتیجه را idempotent اعمال میکنند. |
| info-extraction (بیرون از این مخزن) |
پارس PDF/DOCX/TXT، OCR/ASR و نرمالسازی متن |
queue: document.extraction.requested |
فایل اصلی را read-only از Object Storage میخواند؛ محلی: extraction-mock. chunking، embedding و Milvus ندارد. |
| FastAPI API |
رابط HTTP همزمان برای health، credit، extract، prior-art، claims، description و rewrite |
docker-compose: api · /api/v1/* |
('مسیر توسعه/ATP/Swagger؛ GET /api/v1/credit استثنای محصول برای موجودی AvalAI است؛ استخراج فقط .txt UTF-8؛ صفحات /، /architecture/، /quality/، /atp/. گفتگوی محصول HTTP ندارد.',) |
| Context extraction worker |
استخراج InventionContext و چرخه سؤالهای تکمیلی |
queue: context.extraction.requested |
schema_version 2؛ artifact ورودی فقطخواندنی؛ snapshot را inline در completed/questions_required منتشر میکند. |
| Prior-art search worker |
جستجوی پیشینه فنی، غنیسازی IPC/CPC و رتبهبندی مراجع |
queue: prior_art.search.requested |
schema_version 2؛ InventionContext را از S3 میخواند؛ JSON نتیجه + manifest را مینویسد. محلی: prior-art-mock جایگزینپذیر است. |
| Prior-art report worker |
انتخاب خانوادهٔ متمایز top-k و تولید گزارش فارسی پیشینه |
queue: prior_art.report.requested |
نتیجه search را میخواند؛ top_k تا prior_art_report_top_k محدود میشود؛ report.md، JSON و manifest ذخیره میشوند. |
| Claims draft worker |
تولید ادعانامه فارسی از context و نتیجه جستجوی پیشینه |
queue: draft.claims.requested |
schema_version 1؛ ورودی فقطخواندنی از S3؛ claims_draft را inline در completed برمیگرداند؛ Core آن را در S3 و بخش claims مینویسد. |
| Description draft worker |
تولید توصیف و خلاصه فارسی با checkpoint و resume |
queue: draft.description.requested |
completed_checkpoints از Core را محترم میشمارد؛ progress مرحلهای دارد؛ description_draft (با abstract جدا) inline برمیگردد. |
| Conversation worker |
نوبتهای discover و draft روی قرارداد conversation.v1 |
queue: conversation.turn.requested |
agent_key=discover (بسته گردشکار / دانش) و agent_key=draft (propose_draft_edit متن ساده، بدون ProseMirror). control + stream plane. |
| Draft edit / fragment workers (میراث) |
مسیرهای رویداد قدیمی بازنویسی واحد و fragment-edit |
draft.edit.* · draft.fragment_edit.* |
هنوز در compose هستند؛ مسیر محصول ویرایش انتخابشده از طریق conversation draft است (ADR-0020 / event-schema ADR-0011). |
| Office Action package |
عامل پاسخ اظهارنظر اداره ثبت (دامنه آماده، bus هنوز نه) |
patent_genie_ai.office_action · harness |
run_office_action_response با phase-gated ReAct؛ بدون event-schema / worker / inbox در Core. agent_key=office_action برای conversation نامعتبر است. |
| RabbitMQ |
اتوبوس رویداد requested / progress / completed / failed / stream |
exchange: patent_genie.events · DLX: patent_genie.dlx |
Topic exchange، صفهای durable، prefetch=1؛ conversation stream روی صف TTL جدا؛ DLQ برای خطای مدیریتنشده. |
| Object Storage (S3/Ceph) |
انتقال artifactهای حجیم میان Core و workerها |
workspaces/{workspace_id}/… |
context/draft/conversation: read-only؛ prior-art: read/write برای JSON/manifest/report؛ کلیدها قبل از دسترسی با workspace_id validate میشوند. |
| LLM و providerهای بیرونی |
استخراج ساختیافته، عاملهای ReAct، جستجو، واکشی محتوا و rerank |
AvalAI/OpenAI · Tavily · Firecrawl · Cohere rerank |
provider از environment؛ usage در outcomeها برای ledger Core؛ tracing اختیاری Langfuse در draft و conversation. |