spectrum/wiki/open-questions.md
Open Questions — ACS (decide before building agents)
- Algolia app / index. Reuse CENTRAL app
0EXRPAXB56with a new Adobe index +ACS-agents, or a fresh app? Trade-off: namespace-in-shared-app (simple,ACS-keeps it disjoint) vs. clean isolation (separate app for a separate customer). — OPEN - Ingest path. Hand-built crawler-army (port AC2
scripts/setup/enrich/) overalgolia-central.vercel.app/docs, OR Algolia DocSearch MCP (mcp.algolia.com/1/docsearch/mcp, NeuralSearch, curated DocSet) as the retrieval layer. DocSearch offloads crawl+index+retrieval; does NOT replace grounded-agent + judge. Pilot both on the Adobe docset before committing. — OPEN - Corpus definition. What exactly is "Spectrum" here — Adobe Spectrum design system docs, adobe.com broadly, or the docs served at algolia-central.vercel.app/docs? Confirm the real ingest target. — OPEN
- Persona split / source clubbing. AC2 used 9
sourcevalues → General/Developer/Marketer. The Adobe corpus may not map the same way. Define after seeing the corpus facets. — OPEN - Repo / git. New standalone repo + remote for ACS, or a branch of AC2? Dir is separate → leaning standalone fork. — OPEN
Base to port from: algolia-central2.
Handoff / suggestions redesign (2026-07-09)
- ~~What exactly triggers the "go deeper with specialist?" offer.~~
Resolution (2026-07-09): written into
scripts/agents/suggestions_generic.md. Generic's nativesuggestions.system_promptemits exactly one suggestion literally prefixedSPECIALIST:(case-sensitive — the frontend parses.startsWith('SPECIALIST:')) only when the question is implementation-heavy: any of "how do I build / implement / create / code / write / use / set up / wire X in React (Spectrum)", or a request for a code example, exact props/types, hooks wiring, TypeScript, event handlers, or version-specific API. For everything else (pure design / overview / when-to-use / "what is X"), it emits an ordinary follow-up with NO prefix. When unsure whether a question is implementation-heavy, it defaults to theSPECIALIST:offer (the user decides whether to take the deep dive). Trigger criteria ported verbatim from the retired HANDOFF section ofinstructions_generic.md— the same criteria already proven live this session, not re-derived. Technical never emitsSPECIALIST:(nothing to hand off to). - ~~Multi-turn context shape sent to Technical on repeated deep dives.~~
Resolution (2026-07-09): send all past questions in full (verbatim) + a SUMMARY of each past answer (not full answer text). Arijit's call — balances context fidelity (specialist always sees the real question history) against token/latency cost (answers compress, since re-reading a full prior code answer verbatim isn't needed to build on it). Applies to both
genericHistoryandtechnicalHistoryaccumulation on 2nd+ rounds. Implementation detail deferred to Build: where the answer-summarization happens (client-side truncation/summarizer call, vs. asking the agent itself to emit a short summary alongside its full answer). -
Does
genericHistoryfold in Technical's past deep-dive answers, or stay Generic-only turns. Leaning yes (so Generic doesn't re-offer or lose context on something already covered), not yet implemented. — OPEN -
Future idea (out of scope for current build): Agent Studio's native memory feature. Real platform capability, checked 2026-07-09 — semantic memory (timeless user facts/preferences) + episodic memory (agent's past reasoning), retrieved automatically, persists ACROSS sessions/days (not within one live conversation), requires an
X-Algolia-Secure-User-Tokentying memories to a real user identity. Doesn't solve within-conversation continuity (that's the stateless-history design above) — but could let ACS remember a returning prospect's past questions across visits. Not needed for this build. — IDEA, not scheduled.
Live incident, 2026-07-09 evening — model deprecation + 3 follow-on bugs
- Does Agent Studio's completions API have a cache-bypass mechanism. This project has now hit query-level cache-poisoning twice (2026-07-03, 2026-07-09) on fixed sample-question wording. Rewording works but doesn't prevent a third recurrence on a different fixed string. Worth checking Agent Studio docs/API for a force-fresh header or param. — OPEN
mandate-guard.shvs. Claude Code's auto-mode classifier — unresolved infra conflict. Arijit's own hook (blocksgit push/vercel --prodpending a token-file unlock) and the harness's built-in bypass-pattern classifier fight each other: the classifier vetoes the unlock-file write itself, regardless of Arijit's explicit in-session yes. Every push/deploy the night of 2026-07-09 had to be run manually by Arijit. Two fixes proposed, neither applied: add a Bash allow-rule in~/.claude/settings.jsonfor the exact pattern, OR redesign the hook to require a real permission-prompt instead of a file-write signal. — OPEN, needs Arijit's decision + implementation next session.- Should agent model IDs be validated/monitored, not just hardcoded.
gemini-2.5-flash-litedeprecation broke production with zero warning. No monitoring exists to catch a provider deprecating a model out from under a live agent. Worth a periodic live-completions health check (even a simple cron'd curl) rather than discovering it from a user report. — OPEN, not scheduled.
E2E architecture validation, 2026-07-09→10 late night
- ~~Can Generalist really produce a real
offerSpecialist-equivalent signal in Agent Studio's real response format (VERDICT.md's flagged open gap)?~~ Resolved 2026-07-10: yes. Real E2E test (docs/spikes/2026-07-10-e2e-orchestrator-results.json, scriptscripts/spikes/agent-tool-handoff/e2e-orchestrator-validation.mjs) fed the orchestrator agent generalist-dev's REALSPECIALIST:-prefixed suggestion (not a hand-written fake) across 10 real questions (5 design, 5 implementation). 10/10 correct precision, and the orchestrator's real chaining decision matched the real signal on all 10 (a bug in the test script's own scoring under-reported this as 5/10 — see dev-log entry, root cause isnull === falseunder JS strict equality, not an architecture problem). - Is the pure-orchestrator design (VERDICT.md, validated above) the one to actually build, or does the written revert-plan's Option A/B still apply? The written plan (
docs/plans/2026-07-09-revert-to-tool-call-and-port-to-ac2.md) predates this validation and describes different mechanisms. Arijit confirmed pure-orchestrator as authoritative for the test, but the plan document itself hasn't been rewritten to match — needs reconciling before Build starts. — OPEN, next session's first job. - T6 (real browser, network tab, live click-through) never run. Every other test case in the 2026-07-10 E2E suite is API-level. The full 3-agent chain has never been driven from an actual browser session end to end. — OPEN.