◈ X-Research
← Latest Updates
Key developments
Inbox → Latest Updates →

Overnight X Research Update — что собрано за ночь 27→28 апреля

Из разрозненных скриптов и идей X Research выросла почти полноценная операционная система — с roadmap, прогресс-трекером, dry-run safety gates, advisory layers, event-trigger stack и production policy. Никаких live-постов и скрытых X-actions; сама страница отчёта позже задеплоена на внутренний сайт по явному approval.

~41 Claude Code result files Supervisor stopped at 10:00 PT No active CC processes left No live X mutations No scheduler enabled for L-6
41
result artifacts today

Плюс финальный L-6 policy run, проверенный после stop-сигнала.

7
L-6 layers

Detector → news adapter → RSS fetcher → viral poller → editorial handoff → local runner → production policy.

0
live / public writes

Никаких постов, replies, quote-posts или X list mutations; deploy страницы сделан отдельно по явному approval.

Operating model

Marvin держал ночную смену как supervisor: формулировал задачи по ROADMAP.md, следил за PROGRESS.md, дёргал Claude Code как executor. Все safety gates остались на местах: dry-run, no live writes, no scheduler enable, human approval для live X / launchd cutover / inbox writes. Heartbeat cron был убран при stop, ни одного активного run-task.py / claude -p после финальной верификации.

Executive summary

Главный результат: X Research перестал быть «пачкой скриптов» и стал управляемым growth-engine backlog с верифицируемыми слоями: feedback → scoring → enrichment → execution queue → event triggers → policy gates.
  • Созданы и поддержаны ROADMAP.md и PROGRESS.md как durable state.
  • Immediate layer: list recovery / member population доведены до dry-run ready; browser execution queue MVP сделан и repaired; rejection reasons внедрены.
  • Short / medium layers: feedback capture, relationship boosts, performance tracking, weekly report, morning packet, target expansion, methodbook review, LinkedIn rules, visual workflow.
  • L-4 threading intelligence: offline layer + CLI repair + daily-pipeline advisory integration.
  • L-6 event-driven automation: вся цепочка от feeds / snapshots до handoff draft envelopes и production policy.
  • Все потенциально опасные действия оставлены за human approval: live list mutations, launchd cutover, inbox writes, public posting.

Safety posture

Проверено
  • Heartbeat cron removed at stop.
  • No active run-task.py / claude -p after final verification.
  • L-6 launchd / cron checks empty.
  • No real network in policy validator.
  • Browser / live X actions не выполнялись.

Что конкретно сделано

Area Status Что появилось Почему важно
I-1 / I-2 / I-3 Lists ready / gated Preflight artifacts, dry-run member add manifests, roster identity cleanup: ShivdevRao, may_habib. Можно безопасно просить approval на live list creation / adds; identity blockers сняты.
I-4 Browser queue done browser-assisted-runner.mjs, queue schema, runbook, repeatable dry-run repair. Approved cold replies / quotes теперь имеют headed Chrome execution path с verification gates.
I-5 Rejection reasons done Reject enum, UI chips, overlays, docs, materialization script. Feedback loop перестал быть «Seva clicked reject and nobody knows why».
S-1 / S-3 Feedback learning done capture-feedback.mjs, feedback-summary.mjs, editorial-feedback-context.mjs. Editorial generation получает top rejection reasons и pre-inbox checks.
S-4 Relationship scoring done relationship-gap.mjs, boost integration в daily pipeline. Posts from relationship-gap figures могут быть бустнуты без обхода quality gates.
S-5 Performance tracking done track-post-performance.mjs, JSONL schema, fixture / live / offline modes. Поздняя L-5 prediction может быть провалидирована против реальной engagement.
S-6 Automation manual gated daily-pipeline-automation.mjs, launchd plist, readiness audit. Daily 11:30 automation спроектирован, но cutover намеренно не загружен.
S-7 Preflight done preflight-health-check.mjs интегрирован как Step 0. Pipeline может упасть до того, как сделает дорогую или рискованную downstream-работу.
M-1 / M-2 Reports done Weekly feedback report + enhanced morning packet. Operator получает метрики, gaps, recommendations, performance context.
M-3 Target expansion done target-expansion.mjs ranking / scoring candidate figures. Weekly discovery становится repeatable, reviewable, deduped.
M-4 / L-3 Reciprocity API blocked Offline reciprocity detection + advanced scoring + tier suggestions. Готов потреблять real events; live mention / like ingest заблокирован X API tier.
M-7 / L-7 Visual / video approval gated Visual pipeline prototype, demo video workflow, validators, fixtures. Контент может двигаться к visual / video форматам, но требует Seva approval / recording / posting.
L-4 Threading advisory integrated conversation-threading-intelligence.mjs, loader, daily-pipeline join, CLI repair. Editorial agent видит, является ли reply / quote context-rich, crowded, stale, нуждается в root и т.д.
L-5 Prediction prototype predict-content-performance.mjs advisory prediction / risk flags. Drafts получают quality nudges, но true accuracy ждёт ≥10 tracked posted items.
L-6 Event triggers full contract stack Detector, news adapter, RSS fetcher, viral poller, editorial handoff, local runner, production policy. Event-driven engine структурно готов, но не запланирован к scheduler и не подключён к live inbox writer.

L-6 stack: что теперь есть

1. Detector

event-trigger-detection.mjs ранжирует и дедупит 7 категорий событий и эмитит reviewable candidates.

2. News adapter

news-trigger-adapter.mjs мапит локальные article rows в event records. Smoke: 65/65.

3. RSS / news fetcher

rss-news-fetcher.mjs парсит RSS / Atom / JSON Feed, offline by default, network — только через explicit bounded opt-in. Smoke: 97/97.

4. Viral poller

viral-polling-detector.mjs диффит локальные снапшоты и эмитит viral_post events. Smoke: 102/102.

5. Editorial handoff

event-trigger-editorial-handoff.mjs делает draft envelopes с human_approval_required=true, no_auto_publish=true, voice fields null. Smoke: 109/109.

6. Local runner

event-trigger-local-runner.mjs гоняет news / viral flows в manifests и handoff artifacts. Smoke: 113/113.

7. Production policy

L6-PRODUCTION-POLICY.md + validator + disabled sample registry. Scheduler не включён.

Что осталось заблокировано

Не сделано специально: автоматика не получила право писать в live inbox, постить в X, включать schedule или ходить по feed endpoints без approval. Ужасно скучно. Также правильно.
  • Live X list ops: Нужно явное approval на I-1 create lists и I-3 member adds.
  • S-6 launchd cutover: Legacy job conflict; нужен deliberate unload / cp / lint / load и first scheduled success row.
  • M-4 / L-3 / L-4 live reciprocity: Заблокировано X API tier / live mention-like polling limits.
  • M-7 / L-7: Visual / video требуют Seva approval и manual publishing.
  • L-1 / L-5: Нужны real feedback / performance windows прежде чем заявлять outcome quality.
  • L-6: Production endpoint approvals, scheduler install, и actual editorial agent / inbox writer остаются unshipped.

Recommended next moves

  1. Commit / organize x-archive changes. Там много новых файлов — сделать deliberate git review вместо того, чтобы делать вид, что энтропия — это version control.
  2. Approve or defer live X list ops. Если approved: создать удалённые GTM lists → patch IDs → populate GTM lists; отдельно добавить AI Sales-Led и Paid Growth members.
  3. Do S-6 launchd cutover manually. Сначала disable legacy job; load new canonical job; ждать real 11:30 success row.
  4. Pick one production path: либо начать с list recovery и daily pipeline stability, либо вытащить L-6 от contract-stack до gated production scheduler.
  5. Approve M-7 visual / L-7 demo path, если хочется content output, а не только инфраструктура.

Источник: standalone отчёт x-archive/reports/overnight-xresearch-update-2026-04-28.html. На этой странице — встроенная версия для X Research site. Задеплоено на внутренний сайт по явному approval; не запостено и не push'нуто.