▣ wi

Open work items

361 items
refprojecttitlestatuspriorityassigneeupdated
PLUTO-112 pluto Live 500 on /informes — fn_getInformesBundle returns porAnestesia (and likely sibling array keys) undefined for sparse/zero-row scope; client .map crashes. PLUTO-97 regression. Fix fn to COALESCE every array key to [] + client null-guard. PTD must GET /informes for the failing scope, not log-tail. backlog urgent db-pluto-cc 2026-06-14 05:24
PLUTO-69 pluto Access regression: students who previously logged in are now blocked (agujero negro / blocked-user landing) - PROD, real users inProgress urgent coder-pluto-cc 2026-06-12 17:29
VENUSINF-1 venusinfra EPIC: ONEDB target flip — telemetry consolidation onto venus-pg (supersede whey-pg) backlog urgent nw-whey-cc 2026-06-09 02:20
VENUSINF-10 venusinfra └─ Cross-update ONEDB WIs (ONEDB-12 ingestion, ONEDB-10 pg-write flip) for new target host backlog normal 2026-06-09 02:21
VENUSINF-9 venusinfra └─ Repoint venus-kpi-collect + whey/lezama remote writers to venus-pg backlog normal 2026-06-09 02:21
VENUSINF-8 venusinfra └─ pg_hba + network: allow whey + lezama as remote writers to venus-pg backlog normal 2026-06-09 02:21
VENUSINF-7 venusinfra └─ Provision postgres17 on venus (data dir, listen_addresses, telemetry db + telemetry_rw role) backlog normal 2026-06-09 02:21
VENUSINF-6 venusinfra └─ Confirm + record: venus-pg is the consolidation target; supersede whey-pg in ONEDB-12/10 + one-db/DESIGN.md backlog normal 2026-06-09 02:21
#323 mars chat-duo Elazar Pending pane refreshes mid-type → loses user input. Bug: pane re-render clobbers focused input field. Owner: llmmsg-srv-cc-w (chat-duo). backlog urgent 2026-05-12 02:06
EVO-4 evolutiva Render/server errors in appEvents (appLog): verify capture parity across pluto, mars, venus + fill gaps backlog high pm-pluto-cc 2026-06-19 10:49
CLEDGER-1 cledger E1: Audit & Standardize backlog high nw-whey-cc 2026-06-17 04:17
MSG-54 llmmsg-srv KPI Track A: ADD pg views (usage.v_kpi_tokens_7d + context.v_kpi_compact_7d) + extend scrp-kpiweekly-whey (email + snapshot/live-read) backlog high bin-whey-cc 2026-06-16 01:23
MSG-38 llmmsg-srv POST /unregister route: deregister permanence for VENUSINF waves - {agent,caller,[bearer]}; txn validate->capture-PM-AROs->deleteAroByAgent->electPm-each->deleteRosterRow; PRESERVE cursors (optional purge_cursor:true default false); idempotent 200 already_absent; auth self-dereg ungated + admin-dereg edge-bearer interim soft-dep #599; HTTP-only (no MCP tool). Replaces hand-SQL roster DELETE dereg-at-cutover. backlog high coder-llmmsgsrv-cc 2026-06-15 08:39
MSG-32 llmmsg-srv init-db.sh drift: stale messages schema (generated tag + phantom cols) contradicts hub.mjs self-create / live DB - reconcile or demote backlog high coder-llmmsgsrv-cc 2026-06-15 08:39
MSG-13 llmmsg-srv Hub leaks direct DMs into sender's home ARO: kind=dm fanned to origin_aro roster (cc-context-monitor-venus DMs reaching nw-venus-cc) backlog high coder-llmmsgsrv-cc 2026-06-15 08:39
MSG-5 llmmsg-srv Post-/compact re-register reliability: hook-fire blind spot + hook-independent shim re-register net backlog high coder-llmmsgsrv-cc 2026-06-15 08:39
#603 llmmsg-srv Alert when a CC session is blocked on interactive prompt (AskUserQuestion menu / permission approval / ExitPlanMode): wire CC Notification hook (or transcript-watcher fallback) to DM elazar via llmmsg-srv naming the blocked agent+host. Solves operator having to hunt tmux windows. Research dispatched to claude-code-guide. backlog high coder-llmmsgsrv-cc 2026-06-15 08:39
#599 llmmsg-srv Close aro_config auth gap: token-gate POST /aro_config + other privileged hub writes so a forged caller=elazar fails (coder-applog-cc exploited it to flip aro:applog PM). Elazar approved ship. backlog high coder-llmmsgsrv-cc 2026-06-15 08:39
PLUTO-116 pluto Real-time error tee: appEvents AFTER-INSERT pg_notify trigger on Pluto Supabase (error→PM DM, warn stays in digest). GATED on nw-venus's exact spec (channel name, WHEN-clause, payload — byte-identical channel+payload across 3 apps; host listener LISTENs + DMs PM). Pluto level vocab = error|warn|info (NO fatal) so WHEN-clause = level='error'. Pre-apply audit review per DDL discipline. Additive/reversible. Do NOT start until spec lands + 112 done. backlog high db-pluto-cc 2026-06-14 05:31
MSG-35 llmmsg-srv Spurious unread-poke loop: read_unread cursor-ack is fire-and-forget (race) + drain-on-other-tools acks only on next poll + poker lacks debounce/idle-gate backlog high pm-llmmsgsrv-cc 2026-06-14 04:58
PLUTO-102 pluto D8 Tier-1: collapse fan-out-vs-pool on 4 hot pages (admin/usuarios:97 8-wide, a-solucionar:37 6-wide, practicas:188/249, alumnos/[id]:86) via bundle-RPC/CTE per PLUTO-97 ↳#98 backlog high db-pluto-cc 2026-06-14 03:20
PLUTO-40 pluto Mobile-first refactor (Elazar all-app directive): audit + base-up redesign of layouts/nav/forms/touch-targets/breakpoints backlog high coder-pluto-cc 2026-06-12 01:29
MARS-84 mars Weekly hub-DM relay for the ux-pain-digest: a recurring agent-side step (CronCreate or proxy poll) reads the fresh appEvents action=ux-pain-digest row (detail.textReport, detail.relay) and DMs the report to PM + Elazar on the llmmsg hub, then flips detail.relay.delivered=true. Needed because the Vercel cron can't reach the tunnelled hub. Wire BEFORE first digest fires Mon 2026-06-15 13:00 UTC. Satisfies Elazar's 'dm you, me, email' bar (email+appEvents already done by MARS-83). backlog high pm-mars-cc 2026-06-09 17:41
MARS-38 mars Codex audit — P0 security/forensics: resume-link fail-closed + appEvents storage-key strip (7 sites) + userRoles role-change changelog backlog high --agent 2026-06-09 17:03
ADRIANAP-3 adriana-pavon Normalización de Ambiente de Correos backlog high rob 2026-06-09 04:23
ADRIANAP-8 adriana-pavon └─ Coordinate handoff to IT tech who will apply IMAP config on devices backlog normal 2026-06-09 04:23
ADRIANAP-7 adriana-pavon └─ Write IMAP config guide for all 6 accounts (prensa@, hola@, 3x Gmail, iCloud) for iPhone + Mac backlog normal 2026-06-09 04:23
ADRIANAP-6 adriana-pavon └─ Fix Cloudflare DNS: merge duplicate SPF records, add DKIM key from DonWeb, add DMARC record backlog normal 2026-06-09 04:23
ADRIANAP-5 adriana-pavon └─ Disable POP3 on prensa@ and hola@ in DonWeb cPanel backlog normal 2026-06-09 04:23
ADRIANAP-4 adriana-pavon └─ Audit all accounts/devices: map which client (iPhone, Mac, old PC) has which account and protocol (POP vs IMAP) backlog normal 2026-06-09 04:23
OPS-12 agent-ops Recover lost 2026-05-26 evolutiva-commons patch: §Shared MD Flow + §Versioning + §Boundaries B1/B4/B5 — check llmmsg message DB for original content backlog high bin-whey-cc 2026-06-09 04:04
OPS-11 agent-ops cc-context-monitor last_turn() v2.14 residual stale-read: agent force-compacted 'for no reason' every other session. Verified 2026-06-09 nw-whey-cc reported 184k while live /context=63.6k (3x phantom). last_turn (~line 312) reads transcript's last usage block = summarizer's pre-compact cache_read until next real turn; compact_boundary reverse-walk skip has a hole (boundary outside TAIL_BYTES, or pre-compact reading sampled in the gap before boundary written). Fix: gate actuator on LIVE window occupancy, not stale transcript estimate. NOT a cap problem - do NOT bump nw ROLE_CAP (Elazar explicit). Recurring user-facing churn. inProgress high bin-whey-cc 2026-06-09 03:22
VENUSINF-4 venusinfra EPIC: venus hardening (public-IP attack surface) — GATES service exposure backlog high nw-whey-cc 2026-06-09 02:20
VENUSINF-21 venusinfra └─ Per-service bind/least-exposure audit (pg/hub/smtp listen only where needed) backlog normal 2026-06-09 02:21
VENUSINF-20 venusinfra └─ ssh lockdown (key-only, no root login) + fail2ban backlog normal 2026-06-09 02:21
VENUSINF-19 venusinfra └─ nftables/ufw default-deny + per-service allow rules backlog normal 2026-06-09 02:21
VENUSINF-22 venusinfra └─ unattended-upgrades + basic intrusion/monitoring on venus backlog low 2026-06-09 02:21
VENUSINF-2 venusinfra EPIC: llmmsg hub + runtime DB → venus backlog high nw-whey-cc 2026-06-09 02:20
VENUSINF-14 venusinfra └─ Point llmmsg-hub.pensanta.com (DNS) at venus public IP backlog normal 2026-06-09 02:21
VENUSINF-13 venusinfra └─ Repoint whey + lezama MCP shim + bootstrap to venus hub endpoint backlog normal 2026-06-09 02:21
VENUSINF-12 venusinfra └─ Migrate runtime DB v2.sqlite whey→venus (quiesce, copy, integrity-check) backlog normal 2026-06-09 02:21
VENUSINF-11 venusinfra └─ Stand up llmmsg hub service on venus (v2-hub.mjs, port 9703, systemd) backlog normal 2026-06-09 02:21
VENUSINF-15 venusinfra └─ Burn-in then decommission whey hub backlog low 2026-06-09 02:21
OPS-10 agent-ops attach-tmux.sh nests tmux/stacks extra login shell on switch-client path (recurring, 'fixed 5x') backlog high bin-whey-cc 2026-06-07 08:31
ONEDB-10 one-db GATE#1 step iii: flip venus-kpi-collect.sh to pg-write (telemetry_rw via metrics_write) — kills kpi.sqlite split-brain co-writer; nw lane (cross-host) ↳#698 blocked high nw-whey-cc 2026-06-06 19:35
ONEDB-12 one-db GATE#1 step v: remote-monitor ingestion — venus/lezama write whey-pg DIRECTLY per-host (NO ssh-pull). Transport: venus=ZeroTier 172.27.178.27 or Tailscale; lezama=ssh -w L3 tunnel only (GCABA blocks ZT+TS), pg client→172.30.0.1. whey: listen_addresses + pg_hba for both + telemetry_rw role. nw co-owns ↳#698 backlog high nw-whey-cc 2026-06-06 13:11
ONEDB-9 one-db GATE#1 step ii: repoint 5 sqlite readers to pg telemetry_ro — netreport.sh, testnetwork --report, ccusage-daily-kpi.sh, llmmsg-kpi-report.sh, memory-lint.sh ↳#698 backlog high bin-whey-cc 2026-06-06 13:11
ONEDB-8 one-db GATE#1 step i: add reporter-set pg views to schema.sql (network v_history/v_report/v_by_wifi; kpi 3-day window) — distinct from coder's dashboard views; back the 5 sqlite readers ↳#698 backlog high bin-whey-cc 2026-06-06 13:11
OPS-9 agent-ops cc-context-monitor path-B/wind-down DM mis-targeting: db-mars-cc remediation delivered to nw-venus-cc backlog high nw-whey-cc 2026-06-06 07:17
MSG-12 llmmsg-srv Make context-budget nag idempotent: stop re-nagging every turn + stop stacking /compact crons after compact backlog high pm-llmmsgsrv-cc 2026-06-06 06:53
MSG-10 llmmsg-srv Codex receive-bridge: sidecar tmux-poke so Codex agents auto-drain llmmsg unread (no live push) backlog high pm-llmmsgsrv-cc 2026-06-06 06:24
MSG-11 llmmsg-srv └─ HARD PREREQ: derive + test a Codex-specific ready-prompt regex for idle-gating (CC matcher will NOT transfer; wrong matcher = corrupted-buffer poke). No send-keys goes live until validated. backlog high nw-whey-cc 2026-06-06 06:24
ONEDB-1 one-db one-db: 5 telemetry sqlite -> Postgres17 consolidation (umbrella) backlog high nw-whey-cc 2026-06-06 03:42
ONEDB-7 one-db └─ DECISION (Elazar): make ~/Documents/terminal/one-db its own git repo? bin (PM) owns the call backlog high bin-whey-cc 2026-06-06 04:24
ONEDB-5 one-db └─ kpi.pensanta.com dashboard on whey (chat-duo-web model): single-file Node .mjs reads telemetry views -> static KPI pages. todo normal coder-chatduo-cc 2026-06-06 08:45
ONEDB-6 one-db │ └─ DECISION (Elazar): kpi.pensanta.com exposure - Tailscale-only (team rec: bind whey tailnet IP, no TLS/cert ops, no public attack surface) vs public-TLS backlog high nw-whey-cc 2026-06-06 04:24
#572 llmmsg-srv ca.sh codex launcher: run codex on llmmsg-srv (ca= identity, sandbox-off, pull-only inbound, push-to-ccs) - fleet inProgress high pm-llmmsgsrv-cc 2026-06-05 06:51
#573 llmmsg-srv └─ Design + LIVE-TEST ca.sh: reads ca= from .agent-name, codex --dangerously-bypass-approvals-and-sandbox, injects -c mcp_servers.llmmsg-srv.env.LLMMSG_AGENT_NAME + LLMMSG_HUB_URL; PROVE shim auto-registers under ca name (roster check) before calling done backlog high coder-llmmsgsrv-cc 2026-06-15 08:39
#574 llmmsg-srv └─ Land reviewed ca.sh in sh.git (after PM draft review); commit+push backlog high bin-whey-cc 2026-05-29 02:58
#577 llmmsg-srv └─ Fix static ~/.codex/config.toml footgun: wrong key LLMMSG_AGENT->LLMMSG_AGENT_NAME + LLMMSG_SRV_HOST 127.0.0.1->public; bare codex (not via ca.sh) currently falls back to cc= in /opt/llmmsg-srv = registers as pm-llmmsgsrv-cc on loopback. Non-blocking; ca.sh -c overrides already bypass it backlog normal coder-llmmsgsrv-cc 2026-06-15 08:39
#576 llmmsg-srv └─ lezama ca.sh deploy: GCABA box - get Elazar explicit OK before nw-lezama-cc syncs; codex AGENTS.md convention (aro_join on start, cm/cms -> read_unread) deferred normal pm-llmmsgsrv-cc 2026-06-04 15:56
#575 llmmsg-srv └─ Deploy/verify ca.sh on venus (sh.git pull); confirm a codex test session registers + hub URL resolves remote backlog normal nw-venus-cc 2026-05-29 02:58
#580 basquetwi bwi inter-site: Postgres + UTCP migration inProgress high pm-basquetwi-cc 2026-06-05 04:08
#601 evolutiva Fleet-wide Gmail dot/plus normalization: block duplicate accounts at the DATA LAYER (Mars+Pluto+Venus) blocked high evolutiva-pm-cc-w 2026-06-03 21:33
#608 agent-ops lezama host-dark recurrence: root-cause + harden against full-dark (2nd occurrence; died 2026-06-01 18:03 ART, clean cliff) backlog high nw-lezama-cc 2026-06-02 00:45
#610 agent-ops └─ Validate the installed recovery software (failed twice): identify unit, check prior-boot status+journal (fired/tried/failed?), confirm dead-kernel/power is below userland scope; validate reverse-tunnel health EXTERNALLY from whey, never trust the ssh_r_active self-report flag backlog high nw-lezama-cc 2026-06-02 00:45
#609 agent-ops └─ Reboot forensics: journalctl -b -1 -k (panic trace=crash / empty=power loss) + full -b -1 (OOM?), dmesg|tail-50, df -h, last -x reboot, smartctl -a backlog high nw-lezama-cc 2026-06-02 00:44
#606 llmmsg-srv └─ lezama single-path fragility: all 5435 probes since May23 are public-dns with zt_whey_visible=0 (ZeroTier fallback never worked); make ZT a real 2nd route + fix phantom ssh_r_active self-report backlog normal nw-whey-cc 2026-06-02 05:00
#605 llmmsg-srv └─ lezama host-dark alert: watchdog fires notify-elazar+eq after 3 consecutive 'unreachable' skips (~15min), instead of silently skipping forever backlog normal nw-whey-cc 2026-06-02 00:45
#613 agent-ops └─ Root-cause-gated remediation (after forensics): OOM->add swap + tune vm.overcommit_memory; disk-full->monitor cron + notify-elazar; kernel panic->enable kdump for post-mortem blocked normal nw-lezama-cc 2026-06-02 00:44
#607 llmmsg-srv └─ lezama out-of-band reset: a dead kernel cannot self-recover; scope IPMI/iDRAC vs smart-PDU for remote host-dark power-cycle (blocked on Elazar: does box have IPMI?) backlog low pm-llmmsgsrv-cc 2026-06-02 00:45
#600 agent-ops Global PreToolUse enforcement hook: deny non-llmmsg-srv-team agents Edit/Write to /opt/llmmsg-srv/{hub,bridge,scripts/lib}/** + deny Bash curl/http to hub privileged endpoints (extend existing PATH-script-block hook). Elazar approved ship - recurring: agents edit hub code/curl API instead of MCP tools. backlog high nw-whey-cc 2026-06-01 14:43
#589 llmmsg-srv lezama split-brain: island-b hub (llmmsg-srv.service) auto-started, isolated lezama agents from whey hub backlog high pm-llmmsgsrv-cc 2026-05-29 17:45
#579 agent-ops dbcaba backup gaps: dev backup targets wrong db + gdrive backup-mirror broke 2026-05-16 (dbcaba has no auto-backup today) backlog high maintainer-movilba-cc-l 2026-05-29 08:53
#552 agent-ops Agent name parsing: forbid dashes inside role/project (single-token parts only) backlog high pm-llmmsgsrv-cc 2026-05-29 07:30
#565 llmmsg-srv Memory-discipline policy: make enforcement discoverable fleet-wide (whey/venus/lezama) backlog high pm-llmmsgsrv-cc 2026-05-29 01:56
#569 llmmsg-srv └─ Per-host global CLAUDE.md: add memory-discipline.md to Lazy-loaded + 2-line enforcement pointer (whey/venus/lezama, one commit each) backlog high nw-whey-cc 2026-05-29 02:28
#567 llmmsg-srv └─ Land canonical memory-discipline.md in sh.git (docs/md), commit+push; nw-* pull propagates to 3 hosts backlog high bin-whey-cc 2026-05-29 01:56
#566 llmmsg-srv └─ Consolidate evolutiva-memory-discipline.md into fleet-neutral canonical + scrub project/agent names for public sh.git backlog high nw-whey-cc 2026-05-29 01:56
#570 llmmsg-srv └─ Acceptance gate: fresh agent on each host must cite the policy+thresholds when asked is-there-a-md-policy backlog normal pm-llmmsgsrv-cc 2026-05-29 02:28
#571 llmmsg-srv └─ memory-discipline.md threshold divergence: prose (§10/§13/§15 ~4k tok/150-200 lines/8000 budget) != enforced memlint-cron.sh (600 warn/1200 trim); make doc reference script as threshold SSOT, drop duplicated numbers backlog normal nw-whey-cc 2026-05-29 02:25
#568 llmmsg-srv └─ Stub evolutiva-memory-discipline.md -> sh.git canonical; update maintainer-agents.md pointer backlog normal nw-whey-cc 2026-05-29 01:56
#639 ha Mobile UX + best-practices enhancement of pensanta.com (keep close to com.ar, no bugs or bad code) inProgress high 2026-05-27 16:20
#640 ha └─ SEO + structured data + canonical URL setup (canonical = https://hormigonacero.com.ar/ pre-cutover) inProgress high 2026-05-27 05:08
#560 llmmsg-srv ARO topology v3 fleet-wide rollout (epic) backlog high pm-llmmsgsrv-cc 2026-05-27 00:33
#564 llmmsg-srv └─ Phase 6: llmmsg-protocol.md §ARO Membership + §Routing rewrite backlog normal pm-llmmsgsrv-cc 2026-05-27 00:33
#556 llmmsg-srv chat-duo-web tablet-grade evolution (path A for unified browser client) backlog high coder-chatduo-cc 2026-05-26 06:31
#542 llmmsg-srv Agent-hygiene: automated CLAUDE.md/memory bloat detection + LLM compression (fleet-wide) backlog high pm-llmmsgsrv-cc 2026-05-25 02:03
#549 llmmsg-srv └─ chat-duo Agent Hygiene pane: surfaces top-bloat agents from /agent_hygiene backlog low coder-chatduo-cc 2026-05-23 18:52
#531 llmmsg-srv Transport reliability + observability program (whey/venus/lezama) backlog high pm-llmmsgsrv-cc 2026-05-23 18:46
#617 llmmsg-srv └─ Fleet context-cost rollout: send-keys /compact watchdog + aro_leave-on-idle backlog high pm-llmmsgsrv-cc 2026-06-03 16:03
#621 llmmsg-srv │ └─ WI592 nag: drop CronCreate /compact from emit_context_budget_nag interactive branch once send-keys watchdog verified fleet-wide backlog normal coder-llmmsgsrv-cc 2026-06-15 08:39
#620 llmmsg-srv │ └─ cc-context-monitor safety-net: flag/extend nag for agents that miss self-leave (seq AFTER rule lands) backlog normal cc-context-monitor-lezama 2026-06-03 15:28
#625 llmmsg-srv │ └─ path-B UserPromptSubmit injection copy: reframe CronCreate as automatic-fallback not manual action (avoid conflict w/ v2.13 over-cap DM) backlog low pm-llmmsgsrv-cc 2026-06-03 16:14
#624 llmmsg-srv │ └─ cc-context-monitor measured role-cap version (floor+EOQ headroom) - successor to #617 seed caps backlog low bin-whey-cc 2026-06-03 16:14
#614 llmmsg-srv └─ Idle over-budget agents never self-compact: wire host-side actuator + fix 3 monitor bugs backlog high bin-whey-cc 2026-06-02 03:25
#615 llmmsg-srv └─ chat-duo-web 9704 to lezama: move off whey-initiated -R (VPN-dependent) to lezama-initiated -L over public route backlog normal coder-llmmsgsrv-cc 2026-06-15 08:39
#539 llmmsg-srv └─ Venus-side watchdog + alert standardization (mirror lezama pattern) inProgress normal nw-venus-cc 2026-05-29 05:30
#540 llmmsg-srv └─ Shim transport prefer-list: loopback -> ZT -> public DNS (defer until W3+W4 prove design) backlog low coder-llmmsgsrv-cc 2026-06-15 08:39
#458 agent-ops memory-budget over-budget warning: route shared-file footprint breaches to project PM with escalation chain backlog high bin-whey-cc 2026-05-22 05:50
#454 agent-ops llmmsg-srv roster & PM resilience: pruneStale soft-offline, offline buffering, PM re-election inProgress high llmmsg-srv-cc 2026-05-22 03:52
#455 agent-ops └─ PM-liveness watchdog: cc-context-monitor detects a PM-less ARO, DMs Elazar blocked high bin-whey-cc 2026-05-21 16:27
#459 agent-ops Plugin hygiene v2 - rollout completion (lezama + deferred items) inProgress high llmmsg-srv-cc 2026-05-22 03:15
#460 agent-ops └─ Plugin hygiene v2 - lezama host portion: telegram uninstall + host-global lean flip + movilba per-agent enables (see parent 459) backlog high nw-lezama-cc 2026-05-22 03:15
#451 agent-ops cc-context-monitor over-cap caps are stale — false alarms fleet-wide. THRESH_OPUS=160k/HAIKU=100k/SONNET=135k are ~80% of the OLD ~200k-class windows. Fleet now runs claude-opus-4-7[1m] = 1M-token window; a 268k session is 27% full, not over cap. Transcript model string lacks the [1m] marker so monitor can't auto-detect window size. Fix: bin-whey-cc updates THRESH_* in cc-context-monitor.sh to real values per Elazar's decision (true-window fraction vs. relabelled cost-budget). All of 2026-05-21's over-cap wind-downs were triggered by this false cap. blocked high bin-whey-cc 2026-05-21 12:56
#445 agent-ops eq backend unbuilt: hub.mjs has no /eq_* routes + no elazar_questions table — eq CLI POSTs to non-existent endpoints (/eq_ls returns not_found). chat-duo Pending panel reads elazar_questions, so no Elazar question can ever surface. Implement hub-side /eq_add /eq_ls /eq_show /eq_answer /eq_dismiss /eq_stale + elazar_questions schema per eq-spec.md backlog high llmmsg-srv-cc 2026-05-21 06:16
#421 ayudarg UX /necesidades/(id): mostrar 'Tomada por [nombre]' junto al botón Liberar cuando estado=En Curso backlog high coder-ayudarg-cc 2026-05-18 08:40
#418 ayudarg UX nav: mover Admin al pulldown; Panel pill siempre visible en barra superior backlog high coder-ayudarg-cc 2026-05-18 08:39
#417 ayudarg UX app-wide: diferenciar visualmente botones vs badges vs tarjetas backlog high coder-ayudarg-cc 2026-05-18 08:39
#416 ayudarg UX /necesidades/(id): Estado+Prioridad en misma línea; botón Yo me ocupo debajo de Estado backlog high coder-ayudarg-cc 2026-05-18 08:39
#278 ayudarg Necesidades: no se seleccionan de a 1 (multi-select roto) blocked high coder-ayudarg-cc 2026-05-12 18:43
#345 ayudarg Admin: delete data (different from self-erasure CR-290) backlog high 2026-05-12 18:43
#344 ayudarg Admin: assign roles UI missing backlog high 2026-05-12 18:43
#342 ayudarg Missing 'Yo me ocupo' button somewhere — client report backlog high 2026-05-12 18:43
#341 ayudarg Calles: Capital streets missing in picker (e.g. Av. Rivadavia not found) backlog high 2026-05-12 18:43
#289 ayudarg Conversación se actualice cada 24hs blocked high coder-ayudarg-cc 2026-05-12 15:19
#279 ayudarg Comunas en /necesidades: no se seleccionan de a 1 blocked high 2026-05-12 02:49
#322 mars eq (Elazar Questions) — decoupled-from-bwi pending-Qs tracker; 3-PM consensus + Elazar approval pm-mars-cc-18608/18632; venus stub in flight blocked high 2026-05-12 02:40
#320 llmmsg-srv multi-subscriber SSE + sender echo + client dedupe (chat-duo + chat-duo-web cohabit) backlog high llmmsg-srv-cc 2026-05-11 22:07
#265 agent-ops backup-whey.service: NOPASSWD sudo for cryptsetup+mount in /etc/sudoers.d/backup-whey (failing since run #23 2026-05-08T14:22 - sudo prompts for rob pw under systemd no-tty); owner: os-whey-cc-w backlog high whey-nw-cc 2026-05-10 03:16
PLUTO-145 pluto Per-agent git worktree / path-scoped add for coder-pluto + db-pluto on venus (end shared-checkout git-add-all race) blocked normal nw-venus-cc 2026-06-16 17:24
MARS-141 mars Vercel runtime-log API billing-capped (ExceedsBillingLimitError) — blinds PTD runtime-log gate until cap reset/raised backlog normal 2026-06-16 16:53
MARS-136 mars Re-key grading attribution to práctica-pick (jtpUserId) — reverses live-SA model backlog normal 2026-06-16 06:04
VENUS-19 venus feat(infra): DB perf snapshot+diff collector (dbperfSnapshots) backlog normal 2026-06-16 02:41
PLUTO-136 pluto PLUTO-133 follow-up (Elazar 5b, sequenced AFTER the main toast sweep ships): should-be-required / data-integrity candidates needing a verify pass then fix — (1) periodo date-range fechaFin<=fechaInicio unvalidated client+server; (2) practica rejection comentario not required; (3) destructive activo toggles (periodo/comision) no confirm dialog → toggle-off cascades; (4) admin create-user with no role → primaryRoleId NULL → blank-redirect login. Verify each path first (2nd-sweep agent guessed some), then fix. Do NOT start until PLUTO-133 main sweep is shipped. backlog normal 2026-06-15 16:33
VENUS-17 venus chore(db): emailOutbox terminal-row retention prune — sent/permanentlyFailed rows never deleted, accumulate unbounded (was factor in drain-outbox seq-scan slow-query). Add retention prune for sent/permanentlyFailed older than ~30d (evolutiva-commons retention hygiene; emailOutbox not audited → no setArchiveContext needed). Non-urgent: partial index on status IN ('pending','sending') already neutralizes perf impact; this caps table growth. Note: drain-outbox idle-gate + partial-index fix in flight separately. backlog normal 2026-06-15 16:13
VENUS-15 venus chore(db): prune legacy viewport fingerprint rows — 132 pre-reshape client-env/viewport rows store exact-px+full-UA+userId, IMMUTABLE (wi302 appevents-immutable), no retention-prune job → persist indefinitely. Reshape (VENUS-13) stops new fingerprints only. Prune via db-venus SET LOCAL app.bypass_immutable. Irreversible deletion → Elazar go/no-go required. Pre-go-live test-user data (21 testers), low stakes. blocked normal 2026-06-15 15:46
VENUS-14 venus feat(ptd): authed-route PTD tooling — PTD render-GET can't exercise authed routes (302/login); authed pages + authed-only behavior (toast/error-shown producer, práctica gates) never runtime-verified. Fix: in-process self-check route (preferred) or least-priv stored session for manual authed pass. Sibling: MARS-118. backlog normal 2026-06-15 14:39
VENUS-11 venus bug(validation): D3-4/5 antecedentes parent-checked-no-children + complicaciones notas/ids mismatch — advisory-log-only to measure real-user frequency deferred normal 2026-06-15 14:38
MSG-51 llmmsg-srv Triage edge LLMMSG_HUB_BEARER rotation: exposed on GitHub via api-images repo (NOT llmmsg-only exposure, so no-rotate rule does not apply) backlog normal coder-llmmsgsrv-cc 2026-06-15 08:39
MSG-49 llmmsg-srv Unknown /command errors back to sender (not silent-send); usage-error on malformed known verb backlog normal coder-llmmsgsrv-cc 2026-06-15 08:39
MSG-23 llmmsg-srv hub.mjs latent SQLITE_ERROR: 'no such column: ""' at Database.prepare (seen 00:47:15 pre-restart). Route interpolates empty string into query as = "" (SQLite parses "" as column id). Find the unparameterized query, convert to bound params. Route-triggered, not fixed by restart. Also tidy hub.mjs:1007 error string to match widened regex. backlog normal coder-llmmsgsrv-cc 2026-06-15 08:39
#634 llmmsg-srv Durable GC for stale bridge registrations (TTL prune) - no more retired-codex corpses in registrations.json deferred normal coder-llmmsgsrv-cc 2026-06-15 08:39
#616 llmmsg-srv Push llmmsg protocol mechanics into MCP send tool + hub (shrink model-held context) backlog normal coder-llmmsgsrv-cc 2026-06-15 08:39
PLUTO-132 pluto feat(soporte): copy mars soporte into pluto deferred normal 2026-06-15 07:32
VENUS-9 venus feat(soporte): copy mars soporte into venus deferred normal 2026-06-15 07:24
MSG-46 llmmsg-srv cdw PWA: make chat-duo-web installable (manifest+icons+service worker, Add-to-Home-Screen) backlog normal coder-chatduo-cc 2026-06-15 02:51
MARS-126 mars Real-life-as-SSOT JTP attribution analysis: quantify divergence between start-of-year studentAssignments (error-prone excel import) and actual student JTP picks (práctica.jtpUserId). Two mismatch classes: (1) JTP students picked but aren't assigned to; (2) students assigned to a JTP who picked a different one. Analysis only first (no writes); evidence base for evidence-based reassignment (NOT admin-pick UI). Links MARS-43 + live-vs-snapshot rule. (Elazar 2026-06-14) backlog normal 2026-06-14 22:30
MARS-125 mars Proactive unreviewed-práctica backlog outreach: identify top 3-4 teachers (JTPs) by sin-revisión backlog, the active JTP in each's comisión, the adjunto + titular; draft email to adjunto/titular asking how to address the backlog before it's insurmountable. Real-audience outbound — held for Elazar approval before send. (Elazar 2026-06-14) backlog normal 2026-06-14 22:24
OPS-17 agent-ops cc-context-monitor zombie-detector false-positives on reactive-idle agents: rule (turns>=2 && tool_calls==0 -> zombie) can't distinguish a self-armed-wakeup zombie from a reactive agent woken by inbound llmmsg DM that acked + stood down with no tools needed. At 05:00 it flagged audit-venus-cc (benign: empty CronList, zero ScheduleWakeup ever, 100% inbound-DM-driven) -> 2 dup alerts + cross-host investigation. Hits EVERY reactive agent (host nw between alerts, audit agents). Fix (nw-whey suggested): a wake is zombie-suspect only if NOT preceded by an inbound message in the window (self-triggered) AND/OR non-empty CronList; if wake correlates with inbound DM + empty CronList -> reactive-idle, suppress. Hub has inbound-msg timestamps to correlate. Related: OPS-11 last_turn stale-read. backlog normal bin-whey-cc 2026-06-14 08:03
PLUTO-129 pluto Hardening: roster-add forms allow adding a fraud-table membership into a NON-current/closed period — isPeriodoValid checks only deletedAt IS NULL, not isCurrent. Affects BOTH the new docente-detail add-form (PLUTO-128) AND the already-shipped list-page dialog (docentes/page.tsx) — PARITY, not a 128 regression. If cross-period roster-add is NOT an intended workflow (pre-stage future / correct past period), gate both forms on isCurrent. PENDING Elazar's intent call (is cross-period add a feature?). Surfaced by audit on PLUTO-128 pre-push review. backlog normal 2026-06-14 07:11
PLUTO-126 pluto Email retry/failure backstop gap (pre-existing, exposed by PLUTO-38 cron-drop): after dropping the dead drain-email-outbox cron, Pluto has NO email retry and NO failure alert. A failed send (SMTP timeout) strands the row 'pending' forever — no retry, no operator alert (the alert-after-5-attempts only ever fired from the now-dead drain, which never functioned anyway). Invisible today (0 pending). Live happy-path = Next.js after()-hook send. Restore options: (a) pg_net+pg_cron */5 GATED drain (sanctioned path; vercel.json CANNOT host sub-daily cron — fails the whole build); (b) external scheduler; (c) minimum cheap win = alert-on-strand observability (appEvents warn when a row sits pending > N min). Disposition: reliability vs cron-cost — Elazar's call. Not urgent. backlog normal db-pluto-cc 2026-06-14 06:50
BWI-10 basquetwi wi ask: drop hardcoded assignedTo='elazar' default + retire stale_elazar_questions_gt_7d doctor check (OPS-16 code part) todo normal coder-basquetwi-cc 2026-06-14 06:40
MARS-122 mars DB (deferred/cold): 24 unindexed FKs on forensic/audit/housekeeping columns (archivedBy/deletedBy/restoredBy/resolvedByUserId/surrogateUserId/actorUserId/createdUserId/assignedTeacherUserId); none in hot paths; track, index only if a real query path emerges backlog normal 2026-06-14 06:40
OPS-16 agent-ops Scrub stale eq / Elazar Pending text from bwi-tool PROJECT canonical docs (MSG-36 followup): /home/rob/Documents/work/pensanta/projects/basquetWi/basquetWiInstructions.md + that project's CLAUDE.md still carry old eq/Pending wording. Not the global-rule SSOT (gdrive is, already fixed) but scrub for consistency. Owner: bwi-tool maintainer. backlog normal pm-basquetwi-cc 2026-06-14 06:39
PLUTO-121 pluto KPI-rework /informes (gathering inputs, do NOT implement yet): teacher-scoped report quality pass. Inputs so far: (a) wrap bare CohortAndProcedureCards grid (teacher-report.tsx:818) in titled ReportSection; (b) Moda operador/asistente cards mislabeled (modal per-student count, not most-frequent person) + redundant beside Promedio -> cut or relabel; (c) EPI RE-WEIGHT: Puia wants MORE epidemiology on pluto+venus -> KEEP/EXPAND porSexo/porProvincia/etc (REVERSES earlier generic-remove rec; do NOT cut epi buckets). Grounding: judge on ACTUAL teacher-scoped values via audit-venus KPI->source-view map + db-pluto value pull, NOT admin-proxy shape. Awaiting full KPI->view map (~20-30min from audit-venus) + Elazar per-item rulings before WI splits into coder/db work. backlog normal 2026-06-14 06:25
PLUTO-119 pluto Code sweep: retire stale eventType-based appEvents queries (pre-migration schema paths still running, 35-37ms × 112-257 calls/day). Surfaced in PLUTO-115 EXPLAIN. Find + update to the current level/category/action schema. Coder sweep. backlog normal 2026-06-14 05:55
MARS-118 mars Audit PTD render-GET tooling: enable exercising authed routes (dedicated test-user + stored session, OR a server-side render-self-check route) — Mars leg of the cross-project gap that let Pluto's /informes 500 ship unexercised (audit unauth render-GET -> 302/login, authed routes never actually rendered in PTD) backlog normal 2026-06-14 05:35
PLUTO-117 pluto Harden getInformesBundle fn-output↔consumer contract (durable fix beyond the 112 runtime guard). Root lesson: Pluto's fn emits UNTYPED jsonb (jsonb_build_object) that TS only CASTS — a key rename (porLookup vs porAnestesia) compiles clean and crashes at runtime. A bare 'as' cast gives FALSE confidence (compiles while runtime JSON lacks the key). Fix: zod-parse (or equivalent runtime validate) the RPC return at the queries.ts:3897 boundary so fn↔consumer key drift fails LOUDLY at the boundary with a clear error, not a deep .map crash. Contrast venus: its reshapes build typed objects in TS code, so key drop fails COMPILE — Pluto's SQL-built JSON can't be compile-checked that way, hence runtime validation. backlog normal 2026-06-14 05:33
OPS-14 agent-ops whey↔lezama global ~/.claude/CLAUDE.md §-level reconcile: lezama missing entire sections whey has (was missing ## Collaborate — added 2026-06-14; also lacks Permission, Communication, others). Audit all 3 hosts' global CLAUDE.md section sets, decide canonical fleet-neutral set, mirror missing sections per-host. Surfaced during the log-review-autonomy global-line rollout. backlog normal nw-whey-cc 2026-06-14 05:21
PLUTO-101 pluto D8 views+indexes (db lane): a-solucionar 6-scan view, academic-hierarchy + practicas team-stats/hierarchy views; verify 8d index candidates (deletedAt partial, periodoId, assignment*Id, comisionId/jtpId/adjuntoId, appEvents.createdAt, authId) vs actual index inventory ↳#98 backlog normal 2026-06-14 03:20
PLUTO-99 pluto D8 Tier-2: compute-in-Node over DB rows (cron practicas-kpi-report:277/330/146/208, legacy-export-actions:68-88, hierarchy-utils:22-74/team-stats) -> SQL GROUP BY/ORDER BY ↳#98 backlog normal 2026-06-14 03:20
PLUTO-98 pluto PLUTO D8 compute-placement remediation (self-scan) backlog normal 2026-06-14 03:20
MARS-116 mars Mars logging structural hardening (R1 follow-up): middleware-injected requestId correlation + actor de-anon in onRequestError (F-3/F-4), isCritical sync-write for auth/authz/security cats (F-5), log-error 5min digest dedup (F-6) — audit design-review first (middleware is auth-adjacent) backlog normal 2026-06-14 02:36
PLUTO-82 pluto Historial de cambios rows appear duplicated (~4x) on practica change history; investigate root cause (view join fan-out / archive double-write / query) and fix at source - data should not be stored 4x backlog normal 2026-06-13 08:14
PLUTO-81 pluto PLUTO-77 v1 LOW followup: comision-day secondary list capped at limit-200 first-page (no cursor pagination); add cursor paging if an ayudante's assisted-comision roster exceeds 200 backlog normal 2026-06-13 07:40
MARS-108 mars Teacher-facing student reassignment surface (JTP/Ayudante self-service, NOT on /alumnos) backlog normal 2026-06-13 06:46
PLUTO-78 pluto Duplicate practicas: operador + asistente each create the SAME clinical event picking each other as counterpart -> 2 mirror practica rows for 1 real práctica. Need duplicate-detection + canonical-record rule (natural key candidates: fecha+comision+paciente/tratamiento+the operador/asistente pair). Design WITH Elazar; covers (a) prevent new dupes at create, (b) reconcile existing dupes in prod. Cross-team lessons-learned for mars/venus. backlog normal 2026-06-13 05:59
MARS-107 mars Mars appEvents conform to fleet standard (evolutiva-appevents-standard.md): add categoryId uuid FK->lookupOptions + seed appEventCategory group (16 canonical + practica/studentAssignment/assignment) + backfill 18 free-text values w/ mapping; add 4 promoted cols (httpStatus/durationMs/path/failureCode); add logError/logWarn/logInfo wrappers + pickKnown + isCritical sync-bypass; append-only trigger (GUC-bypass) AFTER appEventRelays sidecar cutover (replace detail.relay.delivered UPDATE pattern); replace level-only prune with 5-cat-security tiered retention; canonical v_appEvents_* views; legacy_events sink. Staged db+coder. BLOCKED on committed SSOT + Elazar priority call. backlog normal 2026-06-13 02:41
VENUS-4 venus Venus appEvents conform to fleet standard: categoryId uuid FK->lookupOptions + seed appEventCategory group + backfill w/ renames (access->authz, app->system, client-env->client); add 4 promoted cols (httpStatus/durationMs/path/failureCode); canonical logError/logWarn/logInfo wrappers + pickKnown + isCritical sync-bypass; canonical v_appEvents_* views; error-tier retention job (180d, GUC-bypass); re-level 1435 perf/warn rows->info; legacy_events sink decision for ~1552 rows. BLOCKED on committed SSOT + Elazar priority call. backlog normal 2026-06-13 02:36
PLUTO-73 pluto conform appEvents to fleet SSOT (categoryId FK, promoted cols, append-only+GUC, appEventRelays sidecar, retention guard, logger, views) blocked normal 2026-06-13 02:32
MARS-106 mars No-404 directive: navigation/practica-link-dead fired 3x — find and eliminate the dead practica link source (broken link/route), not just relabel the event backlog normal 2026-06-13 02:23
PLUTO-68 pluto /practicas/nueva form: lay fields side-by-side to save vertical space (currently stacked one-below-the-other) inProgress normal coder-pluto-cc 2026-06-12 17:24
AYUD-4 ayudarg CR24-full: remove photo DISPLAY code (listEventPhotosQuery, EventPhotoRow, any /personas/[id] photo render) — Elazar confirmed full erasure backlog normal coder2-ayudarg-cc 2026-06-12 10:10
AYUD-3 ayudarg Observability: add success-path logging (login success, key page loads) — currently only error branches log backlog normal coder-ayudarg-cc 2026-06-12 10:04
MARS-101 mars /practicas/[id] detail-grid: 25px overflow @768 (nowrap dt labels force 1fr tracks past tooth-panel) + label truncation @360 ('Restauraci…') — needs live-DOM-measured fix backlog normal 2026-06-12 06:40
PLUTO-61 pluto Stop writing dot-stripped gmail form to users.email (commons Email-Norm violation, cosmetic) backlog normal 2026-06-12 06:34
MARS-68 mars Audit Next.js/Node compute that should be pushed to Postgres (aggregations/filters/joins done in JS that belong in SQL or a view) inProgress normal 2026-06-12 05:56
PLUTO-53 pluto 404: /notificaciones dead route — UI link points to nonexistent page (active Jun 3+9) backlog normal 2026-06-12 05:50
PLUTO-46 pluto Vercel log-drain setup: Elazar greenlit (2026-06-12) true 24h+ runtime-log retention (currently logs are point-in-time only via Vercel MCP). Scope: pick drain destination (log service/endpoint), configure Vercel log-drain, implementer is infra (nw-whey/nw-venus) not coder. PM owes Elazar the concrete scoped plan before dispatch. backlog normal 2026-06-12 03:35
PLUTO-44 pluto Defense-in-depth: render-path requireCapForAction throw should render graceful acceso-denegado, not 500 + admin error-email storm (generic error-boundary / convert render-path cap checks to redirect variant). Surfaced by PLUTO-43 (dead-fetch was the trigger; this guards the class). backlog normal 2026-06-12 01:54
PLUTO-42 pluto /practicas mobile card is read-only: teachers cannot change practica estado/grade from a phone — handleChangeEstado control is desktop-table-only; add it to the md:hidden mobile card backlog normal 2026-06-12 01:44
MARS-97 mars EPIC mobile-first refactor (Elazar directive, all 3 apps): Mars is desktop-CSS-with-patches, not mobile-first. Staged base-up rework. Stage0 foundation (44px tap floor + search/form fixes, mobile-only media blocks, desktop density unchanged); Stage1 DataTable mobile card mode (fixes /practicas + /docentes); Stage2 /mi-cursada; Stage3 /practicas/nueva form (+tooth-selector tap targets, +undefined .conducto-* classes latent bug); Stage4 filter-bar accordion; Stage5 practica detail (/practicas/[id]+/mi-cursada/[id]: info-bar, changelog, comentarios, review-form, image-viewer pinch-zoom currently broken on mobile); Stage6 secondary (soporte thread, notificaciones, perfil, postgrado-progression). Order 0>1>2>3>5>4>6. Owners: coder-mars 0/3/5, audit-mars-ca 1/6. Held on proxy-mars BEFORE baseline (Elazar launching). Admin wide-tables=P3 tail/defer. backlog normal pm-mars-cc 2026-06-12 01:36
MARS-87 mars EPIC: shift /users /estudiantes /docentes from admin-dashboard mgmt to self-managed roster (JTP/Ayudante/Adjunto/students self-pick relationships + self-confirmation workflow) backlog normal 2026-06-09 18:03
MARS-86 mars Disable 107 orphan-auth users (auth huerfanas, never logged in) backlog normal 2026-06-09 18:03
MARS-77 mars Sidebar/navbar per-role regroup (Stage A): execute the holistic restructure the /sidebars-preview diagnostic (75ad66f, 2026-06-04) was built to inform. Per-role nav still cluttered/inconsistent. Use the preview tool (renders real sidebar per role side-by-side) to design grouping, then regroup. Only piecemeal edits landed since (MARS-33/34, WI#327, WI#214); holistic cleanup dropped + untracked until now (Elazar 06-09). backlog normal 2026-06-09 16:17
ADRIANAP-2 adriana-pavon Asesoramiento en SEO backlog normal 2026-06-09 04:23
ADRIANAP-20 adriana-pavon └─ Informe escrito con plan de acción priorizado + llamada de presentación backlog normal 2026-06-09 04:24
ADRIANAP-19 adriana-pavon └─ Recomendaciones Schema.org: Organization, Event, DanceSchool/LocalBusiness por página backlog normal 2026-06-09 04:24
ADRIANAP-18 adriana-pavon └─ Recomendaciones de contenido: fix Cartelera (2024 events visible in 2026), expandir páginas de academias, proponer 3 landing pages SEO backlog normal 2026-06-09 04:24
ADRIANAP-17 adriana-pavon └─ Revisión on-page: title tags, H1 (homepage no tiene), meta descriptions, alt text de imágenes backlog normal 2026-06-09 04:24
ADRIANAP-16 adriana-pavon └─ Keyword research y análisis de competencia para flamenco Buenos Aires backlog normal 2026-06-09 04:24
ADRIANAP-15 adriana-pavon └─ Auditoría técnica: Core Web Vitals, canonicals, errores 404, velocidad, mobile backlog normal 2026-06-09 04:24
ADRIANAP-14 adriana-pavon └─ Configurar accesos: Google Search Console, verificar sitemap.xml, revisar robots.txt backlog normal 2026-06-09 04:24
MARS-69 mars UX Friction (epic): reduce user pain points surfaced by toast/error telemetry backlog normal 2026-06-09 03:44
HOAC-1 ha Vanilla rebuild: replace Divi/WordPress static export with hand-authored HTML/CSS/JS — 100% local, no jQuery, no external CDN, no wp-content/wp-includes inProgress normal webmaster-hormigonacero-cc 2026-06-09 03:36
HOAC-6 ha └─ Rebuild index.html as vanilla semantic HTML (header/nav/main/footer, single h1, reserve space to kill CLS) on the new design system inProgress normal 2026-06-09 05:02
HOAC-10 ha └─ Teardown: delete wp-content/ + wp-includes/ once unreferenced; strip wp-* cache rules from vercel.json; update sitemap.xml/robots.txt inProgress normal 2026-06-09 03:36
HOAC-12 ha └─ Accessibility pass (DEFERRED per Elazar 2026-06-08): fix viewport user-scalable=0, footer contrast, heading-order, add main landmark backlog normal 2026-06-08 18:06
HOAC-11 ha └─ Verify: re-run PageSpeed mobile+desktop (target 90+ mobile), visual-parity check vs current live, confirm all internal links + sitemap resolve under cleanUrls backlog normal 2026-06-08 18:06
HOAC-13 ha └─ Phase 2 (ONLY after vanilla index.html ships + verifies): build index-new.html as a from-scratch redesign PROPOSAL to present to client; keep noindex,nofollow until client approves backlog low webmaster-hormigonacero-cc 2026-06-09 02:37
VENUSINF-5 venusinfra EPIC: whey + lezama thin-client cutover backlog normal nw-whey-cc 2026-06-09 02:20
VENUSINF-26 venusinfra └─ Per-cutover rollback plan + burn-in verification gates backlog normal 2026-06-09 02:21
VENUSINF-25 venusinfra └─ Define what stays local on whey vs moves to venus (role redefinition) backlog normal 2026-06-09 02:21
VENUSINF-24 venusinfra └─ lezama → thin client via public venus (simplify the whey-VPN dependency) backlog normal 2026-06-09 02:21
VENUSINF-23 venusinfra └─ whey → thin client (hub/pg/smtp point to venus) backlog normal 2026-06-09 02:21
VENUSINF-3 venusinfra EPIC: Self-hosted SMTP on venus backlog normal nw-whey-cc 2026-06-09 02:20
VENUSINF-18 venusinfra └─ Repoint notify-elazar.sh to venus SMTP; verify delivery to Elazar inbox backlog normal 2026-06-09 02:21
VENUSINF-17 venusinfra └─ PTR/reverse-DNS + SPF/DKIM/DMARC for deliverability backlog normal 2026-06-09 02:21
VENUSINF-16 venusinfra └─ Install + configure MTA (postfix) on venus backlog normal 2026-06-09 02:21
MARS-64 mars Archive trigger captures NEW not OLD on UPDATE — verify forensic recovery coverage across audited tables (db) backlog normal 2026-06-07 10:56
MARS-60 mars SOP-7 A: override-ayudante UI — authorized role can correct/remove the auto-added ayudante on a práctica (Romina complaint; auto-add is by-design, gap = no override path) backlog normal coder-mars-cc 2026-06-07 08:34
MARS-42 mars Check size of Mars images on Hostinger (api-images file store) — measure total disk + file count used by Mars JPEGs on the api.pensanta.com/mars FTP-jail host; report bytes + count, flag if cleanup/retention needed. backlog normal 2026-06-06 08:41
MARS-35 mars Adjunto oversight/governability landing: adjunto logs in -> lands on a page showing comisión health, which JTPs need help, pending workload (Elazar 06-06, q3). NEEDS DESIGN/BRAINSTORM - distinct surface from /practicas backlog normal pm-mars-cc 2026-06-06 05:50
MSG-9 llmmsg-srv venus /opt/llmmsg-srv is NOT a git checkout - no sync path for maintainer pushes (forces manual /gdrive/temp hops; v1.16 bootstrap had to be hand-installed). Make it a proper git checkout of origin/main like lezama (project_lezama_code_drift) so future pushes land via git pull. Care: venus dir has live local files (.agent-name, service config) - clone-in-place or backup+clone, don't clobber runtime config. backlog normal 2026-06-06 04:56
OPS-8 agent-ops Fleet model audit: many agents still pinned Opus 4.7; move to default-tracks-latest (verify default=Opus 4.8 + future models) or pin Opus 4.8; review model choice per agent by role backlog normal nw-whey-cc 2026-06-06 04:25
OPS-7 agent-ops attach-tmux.sh: list OFFLINE agents too; selecting one launches its ccs session and attaches you to it backlog normal nw-whey-cc 2026-06-06 03:53
MARS-13 mars Tech-debt sweep: catalog unused DB objects (tables/columns/views, e.g. 0-row #395/#396, redundant text cols #394) + dead app-code fields/exports; file one deletion WI per finding (Elazar 06-05: stop brushing off 'legacy field we dont use') backlog normal 2026-06-05 18:40
MARS-14 mars └─ Delete unused DB views (technical debt audit) backlog normal 2026-06-05 18:45
MARS-17 mars │ └─ Delete unused views: vComisionAyudantesByJtp, vPendingAccessRequests, vStudentPostgradoProgression backlog normal 2026-06-05 18:41
MARS-16 mars │ └─ Delete unused health/admin views (vHealth*, vActiveSupportTickets, vAccountSwitchLinks, vHelpArticles) backlog normal 2026-06-05 18:41
MARS-15 mars │ └─ Delete unused error logging views (vErrorsLast5/10/20/25, vAppErrors*, vRecurringErrors, vAppEventsRecent) backlog normal 2026-06-05 18:41
#487 mars Custom 404: add LLM-copy block to not-found page + enrich routing/not-found event (referrer, appVersion, requestId) + rate-limiter backlog normal coder02-mars-cc 2026-06-05 18:38
OPS-1 agent-ops db-size-monitor blind to /var/lib: add to scan roots (currently /home/rob /opt /srv /rtshared). The llmmsg-srv hub DB (/var/lib/llmmsg-srv/v2.sqlite 38M live + llmmsg.sqlite 30M dead-v1) never appears in size snapshots - exactly the DB Elazar worries about. Also surfaces probe-table growth (host_probes 32k rows) for retention review. backlog normal nw-whey-cc 2026-06-05 06:25
VENUS-2 venus alumno→staff comentario reply email — student thread reply notifies teacher; reply-scoped, carga-seed stays silent by construction (direct INSERT bypasses notify, per Pluto practica-actions.ts:358-365); reuse 15-min notifiedAt debounce + Reply-To rectificar-practica@; Q3 yes per Elazar 2026-06-05 backlog normal 2026-06-05 06:19
#644 agent-ops Fleet google-workspace real-usage sweep on venus+lezama: grep each host's transcripts for actual mcp__google-workspace__ tool_use (not installs/mentions); add per-project where used. whey done: odaia(heavy), pluto-pm(light), nw-whey(1 gmail). backlog normal nw-whey-cc 2026-06-05 04:27
#643 agent-ops Audit odaia agent roster — 15 cwds under ~/Documents/personal/odaia looks too many; consolidate, then properly scope google-workspace MCP per surviving agent (currently re-added to all 15 per-project as a stopgap 2026-06-05). backlog normal nw-whey-cc 2026-06-05 04:27
#629 agent-ops Normalize agent names + folder/.aro/.agent-name layout: fix hyphenated project-names in cc-names, KEEP host suffix -w/-v/-l (it identifies cross-host agents, e.g. proxy-<proj>-cc-w); rename coder->coder01/coderhelp->coder02/db->db01/db2->db02 via claude-mv per-project (agent-driven, not manual); build drift-normalizer script. whey+venus now, lezama later. backlog normal nw-whey-cc 2026-06-04 14:50
#623 llmmsg-srv gitmerge.sh diverged-branch newest-wins auto-adds untracked files, defeats gitpush --only strict-staging backlog normal bin-whey-cc 2026-06-03 16:14
#525 agent-ops Review evolutiva backup policy + space (2h/30d/gdrive, ~1.75GB steady-state; context: WI #509) backlog normal nw-whey-cc 2026-06-03 04:06
#602 pluto Prácticas rectificar + bidirectional comment/email-notification workflow (port/adapt from Mars) blocked normal evolutiva-pm-cc-w 2026-06-01 22:02
#593 llmmsg-srv /loop skill self-exports LLMMSG_AUTONOMOUS=1 on entry (so L1 hook branches correctly inside /loop) backlog normal pm-llmmsgsrv-cc 2026-05-31 13:29
#555 agent-ops bisync watchdog: alert when gdrive-bisync.service fails > 2 consecutive runs backlog normal bin-whey-cc 2026-05-29 02:15
#463 llmmsg-srv Next.js chat client to supersede chat-duo GTK + chat-duo-web (brainstorm item 4): node service on whey, Tailscale-only, native Pending tabs. Needs design brainstorm->spec->plan. backlog normal coder-chatduo-cc 2026-05-26 08:37
#554 agent-ops Fleet audit: every agent's cwd has local .agent-name matching registered name backlog normal bin-whey-cc 2026-05-25 02:04
#490 pluto Plan: paciente DNI + HC central store — autocomplete, dedup warning, estadísticas blocked normal 2026-05-25 02:04
#529 llmmsg-srv chat-duo timestamp display drops date - stale msgs read as today backlog normal coder-chatduo-cc 2026-05-23 18:07
#527 agent-ops pull cc-memory-sweep.sh v1.2 (sh.git 20ce2fe) onto whey + lezama backlog normal bin-whey-cc 2026-05-23 06:33
#526 agent-ops memlint-cron.sh: replace email escalation with llmmsg DM to host maintainer (nw-{host}-cc) backlog normal bin-whey-cc 2026-05-23 06:33
#524 llmmsg-srv aro_config caller field unauthenticated - light-scope hardening backlog normal 2026-05-23 06:20
#499 ayudarg Create dailyErrorDigest DB view for daily PM error review (aggregate logs table errors per day) backlog normal db-ayudarg-cc 2026-05-22 06:11
#497 ayudarg Plan beneficiary DNI storage/sharing — autocomplete-suggest, duplicate-DNI warning (same DNI registered under a different name), and statistics backlog normal pm-ayudarg-cc 2026-05-22 06:11
#480 agent-ops bwi git-sync dead since 2026-05-06: decide whey-only policy vs resume DB commits+pushes to GitHub; venus agents routing through whey meanwhile backlog normal 2026-05-22 05:30
#467 agent-ops memory-lint compute_footprint over-walks CLAUDE.md chain - ignores claudeMdExcludes backlog normal bin-whey-cc 2026-05-22 04:15
#464 agent-ops cc-context efficiency report - read-only reporting layer on cc-context-metrics.sqlite (week/day/48h) backlog normal bin-whey-cc 2026-05-22 03:40
#443 agent-ops cc-context daily digest: delivery channel decision (thread 5) — A fold into 08:00 elazar-pending-digest / B standalone unit+hour / skip todo normal nw-whey-cc 2026-05-21 12:48
#447 agent-ops STRUCTURAL: /loop self-/compact over-cap workstream. Proven (Elazar 2026-05-21, ~28-30k ctx): a /loop session self-/compacts via ScheduleWakeup prompt /compact. Replaces cap->park->relaunch with cap->ss->self-/compact->continue. Gated on a ccs.sh launcher decision (ScheduleWakeup exists only in /loop-mode sessions) — needs Elazar GO. Separate from v2.7 over-cap path todo normal bin-whey-cc 2026-05-21 07:12
#438 llmmsg-srv cc-context-monitor compact half - wire host-side tmux send-keys auto-compact for idle over-cap sessions, after the one-session verification test backlog normal 2026-05-20 15:47
#58 pluto CR 39: Crear una sección interna accesible para usuarios autenticados con manual de uso, SOP operativos y ayudas de carga/revisión. Debe poder crec blocked normal 2026-05-18 10:06
#133 pluto /administrar/comisiones spreadsheet grid — Stage 4 editable comisión/day rows por período blocked normal 2026-05-18 10:06
#420 ayudarg UX /personas/(id): agregar campo Comentarios/Notas debajo de Persona backlog normal 2026-05-18 08:39
#419 ayudarg UX nav: pulldown muestra guión en círculo — reemplazar con ícono usuario + menú estándar backlog normal 2026-05-18 08:39
#61 pluto CR 42: 3 docentes reales sin asignación a comisión: gonzalo.oviedo, lorena.salomone, cirugia1 (@odontologia.uba.ar). Necesitan ser asignados a comi blocked normal 2026-05-17 20:47
#402 agent-ops memory-lint scope bug: gitpush pre-hook runs memory-lint.sh with no arg → scans ALL ~/.claude/projects/*/memory dirs → one project's memory hygiene blocks every other project's pushes. Cross-project DoS. Fix: scope to current-project memory dir only (resolve from PWD or .agent-name). Surfaced 2026-05-17 by coder-mars-cc-29923 blocked on llmmsg-srv-cc's dirty memory dir. backlog normal 2026-05-17 06:27
#404 agent-ops └─ memory-lint A/B/D/E: gitpush-pre.sh per-project scope (arg, not glob) + non-blocking warn-only + drop §11 heading-dup from per-push + never touch CLAUDE.md. Mars+pluto+venus .gitpush-pre.sh mirror. Ratified by Elazar -30088. backlog high whey-nw-cc 2026-05-17 06:40
#398 llmmsg-srv hub-resident cross-project WI board: add cross_wi table + MCP wi_add/wi_close/wi_ls/wi_show/wi_event tools. Replaces per-host bwi for cross-project items (mars/pluto/venus/evolutiva). 3-PM consensus pm-mars-29395 / pluto-29405 / venus-29411; Elazar greenlight elazar-…-29506 Q2. Owner: llmmsg-srv-cc-w. backlog normal 2026-05-17 05:04
#339 ayudarg GDPR erasure: fire-and-forget admin email is silent on failure — add error log + retry/queue so the hard-delete loop doesn't stall backlog normal 2026-05-12 15:24
#338 ayudarg Localize Supabase password-reset email template (default English → Spanish + AyudArg branding) via Supabase dashboard backlog normal 2026-05-12 15:18
#336 ayudarg Fix verify-deploy.sh: --format json + project-name positional incompatibility backlog normal 2026-05-12 14:47
#331 ayudarg Vercel MCP token expired — auditor falling back to curl for deploy audit backlog normal 2026-05-12 13:47
#317 ayudarg Server-side userId in createEventoOnExistingAccion (do not trust client payload) backlog normal 2026-05-11 18:36
#311 ayudarg Aplicar diseño de Flor (diseñadora) backlog normal 2026-05-11 18:19
#309 ayudarg Necesidad de salud: notificar admin de Brigada backlog normal 2026-05-11 18:19
#308 ayudarg DNI obligatorio en preguntas backlog normal 2026-05-11 18:19
#307 ayudarg Pregunta: ¿Hay algo que no puedas comer? backlog normal 2026-05-11 18:19
#305 ayudarg Agregar necesidades a la acción al crearla backlog normal 2026-05-11 18:19
#304 ayudarg Crear usuario a Flor backlog normal 2026-05-11 18:19
#302 ayudarg Geolocalización del voluntario backlog normal 2026-05-11 18:19
#301 ayudarg Recordatorio visita 24hs si no hay eventos backlog normal 2026-05-11 18:19
#300 ayudarg Criterios cierre/apertura/alerta para eventos/acciones/necesidades backlog normal 2026-05-11 18:19
#299 ayudarg Emails de alerta + todos criterios timers backlog normal 2026-05-11 18:19
#298 ayudarg Bubble de notificación backlog normal 2026-05-11 18:19
#297 ayudarg Íconos en mapa llevan a acción backlog normal 2026-05-11 18:19
#296 ayudarg Recursero toggle mapa backlog normal 2026-05-11 18:19
#295 ayudarg Bienvenido bring back backlog normal 2026-05-11 18:19
#294 ayudarg Mapa: ver legales backlog normal 2026-05-11 18:19
#293 ayudarg Enriquecer mapa: colores e íconos por acción/evento/necesidad backlog normal 2026-05-11 18:19
#292 ayudarg Alta y reseteo de claves backlog normal 2026-05-11 18:19
#174 evolutiva Vercel + Supabase optimization — reduce Fluid Active CPU bill creep, eliminate dashboard misconfig, lower latency backlog normal 2026-05-03 01:48
#158 llmmsg-srv Brainstorm: connect lezama agents to whey's llmmsg-srv hub backlog normal 2026-05-02 03:38
#7 mars CR-override-grade: adjunto/titular jumps in when JTP unavailable backlog normal 2026-04-30 11:12
VENUS-20 venus bug(auth): seed scripts use raw admin.createUser → NULL-token login-lockout in seeded users backlog low 2026-06-16 18:43
MARS-138 mars getJtpStats PENDING axis is SA-populated while admin-delta-report + vPracticasSinEvaluar are SA-free — informes oracle can miss a picked-but-no-active-SA práctica backlog low 2026-06-16 06:55
MARS-137 mars Orphaned-pending picks: reassign-pending-practicas handling after write-path retire (MARS-136) backlog low 2026-06-16 06:19
MARS-135 mars Rotate Mars Supabase DB (postgres) password — leaked in git history backlog low 2026-06-16 05:16
PLUTO-139 pluto DB-health sweep follow-ups (from PLUTO-138, non-urgent): (1) verify practicas.idx_practicas_editlocked query path — drop if genuinely cold; (2) confirm userAuditLogLegacy table is retired → archival candidate (table+idx); (3) FK-usage audit: of 64 advisor-flagged unindexed FKs, identify which appear in live WHERE/JOIN (hot) vs audit/write-path (createdBy/deletedBy/archivedBy — leave cold), index only the hot ones via migration w/ archive-context. Don't index/drop blindly — query-path verify first. backlog low coder-pluto-cc 2026-06-16 02:39
MARS-132 mars EXPLAIN ANALYZE teeth_agg practica report query (1661ms mean, /informes teeth aggregation) backlog low 2026-06-16 02:37
VENUS-16 venus chore(db): index unindexed FKs on live query paths backlog low 2026-06-15 16:13
MARS-131 mars Mars DB hygiene (no IO risk, found in 06-15 Disk-IO self-check): (1) VACUUM ANALYZE teacherComisionMemberships (65d stale, 19.7% dead); (2) lower autovacuum_vacuum_scale_factor on notifications (high churn); (3) drop unused idx_st_createdbyuserid on supportTickets (0 scans, 13 rows); (4) index users.comisionId when query plans warrant. All reversible, audit pre-apply DDL review. backlog low 2026-06-15 16:12
MSG-50 llmmsg-srv dm-* send-authorization: reject non-owner/non-host-nw/non-Elazar sends to or origin_aro'd-as aro:dm-* backlog low coder-llmmsgsrv-cc 2026-06-15 08:39
#597 llmmsg-srv Hub cleanup traps (post-#594): systemd unit sets LLMMSG_SRV_DB but code reads LLMMSG_DB (no-op env var); stale llmmsg.sqlite + init-db.sh schema conflicts with live v2.sqlite backlog low coder-llmmsgsrv-cc 2026-06-15 08:39
#596 llmmsg-srv Refresh venus /opt/llmmsg-srv flat copy from whey (hub.mjs+shim) - stale May-18 scp caused misdiagnosis; do NOT delete (venus MCP shim runs from it) backlog low coder-llmmsgsrv-cc 2026-06-15 08:39
MSG-47 llmmsg-srv MSG-30 lezama: coordinated full-tree pull-forward (shim v2.9.47 + bootstrap v1.19 + package.json, atomic) - replaces nw-lezama hand-patch, un-dirties staged v1.18 bootstrap backlog low pm-llmmsgsrv-cc 2026-06-15 03:37
MARS-123 mars Broaden skew auto-reload classifier to chunk-load TypeErrors (Load failed / Failed to fetch / ChunkLoadError / dynamic-import errors) so stale-chunk refs self-recover via one-shot cache-bust — gated on recurrence; error-report-block.tsx isVersionSkew currently matches only the exact RSC stale-bundle string. Low risk (bounded by sessionStorage one-reload-per-session + __rscRetry guard). Do NOT ship for a single transient; revisit if Load-failed/chunk-load warns recur with volume. backlog low 2026-06-14 16:43
MSG-43 llmmsg-srv Rationalize errscan-vs-applog overlap fleet-wide (both = error->PM-DM; applog covers all 3 proj+now green, errscan mars-only, mars DOUBLE-covered) - decide consolidate-not-expand; needs PM/Elazar division-of-labor call deferred low pm-llmmsgsrv-cc 2026-06-14 15:04
PLUTO-125 pluto Advisory (low pri): enable auth_leaked_password_protection (HaveIBeenPwned check) in Supabase auth — currently disabled. Low value for Pluto (allowlist-only, no open signup) but a free defense-in-depth toggle. From PLUTO-123 security sweep. backlog low 2026-06-14 06:44
PLUTO-120 pluto Phase-2 demo cleanup (BLOCKED on demo-row purge): strip the now-unneeded demo filters/labels/tab once Elazar purges demo rows. These are PROTECTIVE while rows exist — removing earlier leaks demo data into real reports. Sites: admin/page.tsx:11 (@demo pendingUsers filter), informes/page.tsx:117-121 + practicas/page.tsx:139-142 ('Demo ' comision filter), admin-user-detail.tsx:68/127 + audit-log.tsx:122 (isDemo/demo_seed label map), complication-rate/dificultad-distribution/procedure-type cards '(no demo)' text, admin/usuarios 'Usuarios demo' tab. Coupled to PLUTO-118 phase-1 + the row purge. backlog low 2026-06-14 06:00
PLUTO-113 pluto Dead-code removal: softDeletePeriodo + softDeleteComision (admin-actions.ts:443/534) are exports with ZERO callers; live paths are removePeriodo/removeComision. Remove the dead exports. backlog low 2026-06-14 05:25
PLUTO-111 pluto Observability: log /api/image 401/403 auth-denials to appEvents (category auth/authz, level info) so denial-storms are diagnosable; route currently logs only proxy-failures, not the gate denials backlog low coder-pluto-cc 2026-06-14 05:18
MARS-117 mars Mars: track index/DDL changes in-repo — schema.md omits indexes (0 index refs) and DDL is applied via Supabase MCP (recorded only in Supabase migrations table), so index changes like ix_appEvents_category_action_createdAt have no git-side record. Add index export to export-db.py OR adopt a db/migrations file convention so DDL is reproducible/reviewable from the repo. backlog low 2026-06-14 03:32
PLUTO-103 pluto Hygiene: vPracticaParticipantFacts counts demo-practica-by-real-student in scoped teacher stats (pre-existing, surfaced during PLUTO-97 gate-A) backlog low 2026-06-14 03:30
PLUTO-100 pluto D8 Tier-3: batch sequential per-row write loops (personas-actions:378/388 role add/remove) into set-based INSERT VALUES / UPDATE WHERE id=ANY ↳#98 backlog low 2026-06-14 03:20
PLUTO-91 pluto PLUTO-89 fast-follow hardening: multi-pieza dup-guard is order-sensitive ('11,12' vs '12,11' evades tier-1 because piezas keep insertion order). Canonicalize the pieza set for the dedup KEY only (sorted), preserving as-entered display/storage order. Needs functional index or normalized key column backlog low 2026-06-13 10:57
PLUTO-85 pluto public/formulario-practica.pdf rides unrelated commits — byte re-touch (identical size, no content change) re-touches in the push window, not present in pre-push git status. Recurring since PLUTO-77, again on PLUTO-84. Find what regenerates it (build step / file watcher) and either .gitignore it or normalize so it stops riding unrelated commits. Harmless but persistent noise. backlog low 2026-06-13 09:29
EVO-3 evolutiva api-images: immediate-erasure endpoint (GDPR/right-to-erasure) — DELETE /{id}?purge=1 or /erase/{id} that skips _trash + unlinks immediately, tenant-scoped, audit-logged. backlog low coder-apiimages-cc 2026-06-13 09:05
EVO-2 evolutiva api-images: reconcile 67 orphan images in flat uploads/2026/ with no mars/pluto DB owner — decide trash vs reassign backlog low 2026-06-13 08:29
BWI-9 basquetwi kpi-report.py digest-integration polish for kpi-weekly-report.sh: (1) add explicit --markdown flag alias (default stdout already md); (2) off-vocab line as count/total (e.g. 14/47) for the digest health metric. Section anchors ## 1/2/3 already grep-stable. backlog low db-basquetwi 2026-06-13 02:50
AYUD-10 ayudarg Regen schema.md (stale on personaEventPhotos line) — export-db.py blocked on venus (psycopg2 missing); run elsewhere or fix venv backlog low db-ayudarg-cc 2026-06-12 10:18
PLUTO-67 pluto fn_detectRateSpike cadence: every-2min cron is 91% of DB-time (frequency-driven, ~7.6s/day absolute) - weigh fraud-detection latency vs cost backlog low 2026-06-12 07:53
PLUTO-66 pluto log-toast ingest: no server-side rate limit (anon-flood appEvents amplification) backlog low 2026-06-12 07:26
MARS-103 mars /notificaciones modest payload trim: paginate the 100-row list + replace 100 per-row server-action-bound <form>s with one delegated action/link nav (smaller RSC payload + less hydration). Not a perf bug — cold-start was the 6s cause; this is opportunistic. No DB/infra change. backlog low 2026-06-12 07:25
PLUTO-65 pluto PLUTO-34 contract step: DROP flat columns on 7 archive tables after jsonb expand verified in prod (irreversible) backlog low 2026-06-12 07:12
MARS-102 mars Weekly ux-pain digest delivery: move to Vercel-cron→authenticated-POST-to-hub→PM-drains-on-reconnect (remove relay-row/always-on-agent dependency). Blocked on llmmsg-maintainer answers: (1) can Vercel POST to hub from outside the reverse tunnel with an auth key, (2) unread-buffer retention/TTL must exceed weekly digest interval so an offline PM still receives it. Applies to mars (replace MARS-84 relay-row) + venus + pluto toast-ports. db agents are NOT 24/7 so a db-host cron is not viable; only nw agents + maybe PMs run 24/7. backlog low 2026-06-12 07:08
MARS-100 mars /informes table overflows 43px @360 (861px table-wrap) — needs mobile card/scroll mode backlog low 2026-06-12 06:37
PLUTO-60 pluto Retire residual /login?error=no-profile UI path backlog low 2026-06-12 06:26
PLUTO-59 pluto Convenience VIEW joining clientError.digest -> serverError.detail (full message+stack) for client-error diagnosis backlog low 2026-06-12 06:17
PLUTO-58 pluto Table convergence: drop server page-size oddball 15 (->[10,25,50,100] fleet baseline); later adopt Mars-style column-config API over Pluto server stack backlog low 2026-06-12 06:09
PLUTO-57 pluto UX: pre-filter practica list-row links by viewer scope so out-of-scope rows aren't clickable (avoids working-as-designed scope-deny on /practicas/[id]) backlog low 2026-06-12 06:08
PLUTO-51 pluto Proxy viewport tooling: chrome-devtools-mcp (CDP) for Pluto needs an auth path — Pluto is OAuth-only backlog low 2026-06-12 04:21
PLUTO-45 pluto KPI weekly-cron staleness alert: last-success-timestamp check that pages if no kpiCronReport appEvent in >8 days. Weekly crons (0 9 * * 1) can fail silently for ~7d before anyone notices (PLUTO-39 showed how easily a weekly gap reads as 'dead'). Defensive observability add, NOT a bugfix. Touches email/alert path → audit pre-push. backlog low 2026-06-12 03:17
PLUTO-41 pluto Migrate all touch primitives (Button/Select/Input) to uniform pointer-coarse:min-h-11 for 44px touch targets — replaces the 3-way convention (Button h-11 sm:h-9 / Select flat h-11 / Input sm:-gated); keys on input modality not viewport so a narrowed desktop window stays 36px. Ref Venus impl. Do AFTER PLUTO-40 lands. backlog low 2026-06-12 01:39
PLUTO-36 pluto Pluto P3: canonicalizeEmail JS/DB parity edge — JS lastIndexOf('@') vs DB SPLIT_PART first-'@'; diverge only on malformed multi-@ input (dedup-parity, not dot-strip). Align the @-split semantics. backlog low 2026-06-10 13:16
PLUTO-32 pluto Pluto P3 residual: bulkInviteUsers welcome-email loop bypasses the /send-email HTTP rate limiter (PLUTO-20) — uncapped in-process sends on bulk invite. Decide cap (e.g. 100/batch or inter-send delay) vs accept (admin-initiated, low-freq, in-process-mail-undroppable per PLUTO-20 design). From audit round-1. backlog low 2026-06-10 06:37
MARS-92 mars Drop legacy accessRequests.status text col — statusOptionId FK is the enforced gate; plain text col is unconstrained dead weight (surfaced during Pluto PLUTO-22 cross-app alignment) backlog low 2026-06-10 06:14
PLUTO-31 pluto Pluto P3: cold audit FK cols (createdBy/updatedBy) unindexed — defer to post-go-live advisor run backlog low 2026-06-10 05:12
PLUTO-30 pluto Pluto P3: periodos.isCurrent no uniqueness constraint — two isCurrent=true rows possible backlog low 2026-06-10 05:12
PLUTO-29 pluto Pluto P3: vPracticas* views don't filter isDemo — demo inflates grader stats (fix at vPracticas base) backlog low 2026-06-10 05:12
PLUTO-28 pluto Pluto P3: denyAccess UUID-in-URL + deny-vs-404 — practica-existence probe backlog low 2026-06-10 05:12
PLUTO-27 pluto Pluto P3: getCurrentPeriodoId + getComisionesForCurrentPeriodo no auth guard — comision enumeration backlog low 2026-06-10 05:12
MSG-26 llmmsg-srv llmmsg-kpi-report.sh: strip dead -small ARO branch from §PM .aro action list (lanes retired MSG-17) backlog low pm-llmmsgsrv-cc 2026-06-10 04:04
ADRIANAP-9 adriana-pavon Recuperación de Correos Históricos (condicional: requiere localizar la computadora) blocked low 2026-06-09 04:24
ADRIANAP-13 adriana-pavon └─ Generar informe de volumen y fechas de correos recuperados backlog low 2026-06-09 04:24
ADRIANAP-12 adriana-pavon └─ Importar mensajes recuperados a cuenta activa actual via IMAP backlog low 2026-06-09 04:24
ADRIANAP-11 adriana-pavon └─ Extraer almacén local de correos — Apple Mail: ~/Library/Mail/, o .pst si era Outlook backlog low 2026-06-09 04:24
ADRIANAP-10 adriana-pavon └─ Evaluar estado del equipo y del disco (¿bootea? ¿disco legible?) backlog low 2026-06-09 04:24
MARS-67 mars Index cold FK columns deferred from advisor sweep backlog low 2026-06-09 02:53
BWI-7 basquetwi Migrate bwi PG + wi-http from whey to venus deferred low 2026-06-09 02:51
MARS-63 mars Cross-app: port Mars error-digest cron (errores 24h digest email) to Pluto + Venus — Elazar greenlit 2026-06-07, NOT now. Each app gets its own daily digest cron + threshold + recipient. Pluto/Venus PMs mirror in their backlogs when picked up; this is the tracking SSOT. backlog low 2026-06-07 09:37
MARS-56 mars Stop the recurring push stash-dance: gitignore untracked auditor scaffolding + resolve parked pm/codex-says.md backlog low 2026-06-07 06:21
MARS-53 mars Graceful handling of stale server-action-ID (deploy-skew) in global error boundary backlog low coder02-mars-cc 2026-06-06 23:12
ONEDB-13 one-db cc-context-monitor v3.0 M1 sys.exit(1) aborts MANUAL venus/lezama runs before pg-mirror write when CCM_HUB_URL=127.0.0.1 default. Unattended unaffected (service unit exports LLMMSG_HUB_URL ZT/tunnel). Fix post-ONEDB-12: document manual-run env requirement (export LLMMSG_HUB_URL) over per-host CCM_HUB_URL remap. Bump VERSION. backlog low 2026-06-06 20:04
MARS-43 mars 11 active studentAssignments rows with NULL assignedTeacherUserId — students with no teacher assigned (pre-dates 2026-06-06, surfaced during MARS-40). Fix path: evidence-based auto-assign per no-operator model (NOT an admin-pick UI). Triage when bandwidth allows. backlog low 2026-06-06 09:01
MARS-31 mars Animated/moving notification badge: make the notification bell badge pulse/animate to draw attention to unread notifications backlog low pm-mars-cc 2026-06-06 05:18
MARS-22 mars student-assignment-tcm.ts peer-inference fallback (L188-234) seeds a NULL SA from OTHER students' practicas.jtpUserId/ayudanteUserId snapshot; TCM-gated (deletedAt IS NULL + role-matched) so stale teachers rejected — NOT a rule-(b) violation, low risk. Tighten to prefer live peer SA over práctica snapshot. ↳#684 backlog low pm-mars-cc 2026-06-05 19:22
#394 mars Dual-column status antipattern: accessRequests (status text + statusOptionId) and notifications (type text + notificationTypeOptionId) are synced by triggers — assess dropping redundant text columns in favour of UUID FK only backlog low db02-mars-cc 2026-06-05 18:38
MARS-5 mars informes follow-up: grader keeps credit even after student SA lapses (LEFT-JOIN vStudentAssignments on the graded axis) backlog low 2026-06-05 09:57
#647 llmmsg-srv .llmmsg-aros cleanup: remove 16 repo-tracked copies in pensanta website repos (#631 tail) ↳#631 backlog low nw-venus-cc 2026-06-05 04:38
#638 basquetwi Switch bwi bind + BWI_PUBLIC_BASE from ZT IP 172.27.178.27:8042 back to bwi.pensanta.com:8042 once DNS propagates (relates #636) deferred low 2026-06-05 03:39
#502 mars Enable pg_cron + daily errorDigestSnapshots table so error trends survive appEvents pruning (WI#390) backlog low 2026-05-22 06:12
#498 ayudarg Add LLM-copy block to not-found.tsx — cross-app 404 spec parity (venus/mars/pluto WI#486/#487) backlog low coder-ayudarg-cc 2026-05-22 06:11
#492 mars Plan: patient DNI/HC number storage + cross-record sharing - enable future autocomplete-suggest, mismatch warnings ('DNI ya existe con otro nombre'), statistics backlog low 2026-05-22 06:08
#465 llmmsg-srv Document to=pm:X send target + hub PM election/pending-queue in README.md protocol section (shipped in 5741b17, README not yet updated) backlog low llmmsg-srv-cc 2026-05-22 03:53
#390 mars Pruning strategy for append-only growing tables: appEvents (2334 rows), notifications (5202 rows), imageUploadAnalysisEvents (4327 rows) — no TTL/rotation defined; design retention policy + purge job backlog low db-mars-cc 2026-05-19 04:56
#202 mars Standing audit: nextjs/nodejs → Postgres pushdown — find Node-side aggregations/filters that should be DB views/functions, refactor opportunistically backlog low audit-mars-cc 2026-05-18 11:04
#2 mars Rename studentAssignments.jtpUserId → assignedTeacherUserId backlog low 2026-05-18 10:14
#423 ayudarg Tooling: playwright auth setup para screenshot regression (blocked en #119 — Chrome Wayland + cookies cifradas) backlog low 2026-05-18 09:02
#119 pluto User contact profile split — userProfile 1:1 table para campos opcionales blocked low 2026-05-18 08:48
#396 mars helpArticles + helpArticleTags tables: 0 rows, no known app surface — PM decision: implement in-app help or drop scaffolding backlog low 2026-05-17 05:02
#395 mars studentPostgradoProgression table: 0 rows, no known app surface — PM decision: implement feature or drop table backlog low 2026-05-17 05:02
#328 ayudarg Recursos: derive comuna options from cards with data (parallel to needOptions) — avoid empty-state on no-data comunas backlog low 2026-05-12 02:59
#319 ayudarg Replace prioridad=87 magic number with named constant backlog low 2026-05-11 18:36
#318 ayudarg a11y: htmlFor/id on Otra + Notas inputs in /acciones/nueva + /necesidades/nueva backlog low 2026-05-11 18:36
#310 ayudarg Estadísticas: edad voluntarios/asistidos, género, necesidades cubiertas backlog low 2026-05-11 18:19
#241 mars Cátedra branding sweep p3: URL slug strategy backlog low 2026-05-08 07:21
#8 mars CR-7 comisionChangeRequests backlog low 2026-04-30 11:12
#9 mars CR-8 informes/calificaciones backlog low 2026-04-30 11:12
#312 ayudarg Callejero backlog someday 2026-05-31 21:47
#372 pluto DEFERRED: extract userDocumentoReview workflow table from users.documento* cols if documento approval flow grows. Workflow entity with natural FK, not generic profile split. Counter to WI#119 verdict. backlog someday 2026-05-15 07:20
#314 ayudarg Alertas por email backlog someday 2026-05-11 18:19
#313 ayudarg Beneficiarios backlog someday 2026-05-11 18:19
#100 pluto Análisis estadístico — rol researcher dedicado + acceso a datos anonimizados backlog someday 2026-05-01 01:56