Spaces:
Running
Running
Commit History
-
Fix auto-restart watchdog (strptime parsing log filenames with new _<sessioncode> suffix), SyntaxWarning (\s in JS-inside-Python string), and pin python_version to 3.11 (avoids Python 3.14 asyncio cleanup noise with Gradio 6.x). Running
Verified signaturec875c14 -
Fix auto-restart watchdog strptime: log filenames now include _<sessioncode> suffix; parse only the YYYYMMDD_HHMMSS prefix so idle check succeeds.
Verified signaturef0e53d6
-
revise-gate modal: reword body to "Please revise at least 10% ... before submitting your final version."
Verified signature154cce1 -
revise-gate modal: single-line body, no title, button -> Go back to argument
Verified signature29c350b -
revise-gate modal: quantified 90%/10% wording
Verified signaturea68694b
-
switch hf_dataset to AE-Talk-bot/log-C-Jun-18-2026 (split per-condition to relieve HF commit rate limit)
Verified signature0b460d8 -
recovery: rename localStorage keys to current condition names + JS namespace __SOC_RECOVERY -> __RECOVERY (clean up no_ai / socratic_frame legacy)
Verified signature2742b2e -
key-pool rotation: per-session OpenAI key assignment from OPENAI_KEY_01..10 (core/__init__.py)
Verified signature2253017 -
key-pool rotation: per-session OpenAI key assignment from OPENAI_KEY_01..10 (core/logger.py)
Verified signaturea5e44fd -
key-pool rotation: per-session OpenAI key assignment from OPENAI_KEY_01..10 (core/perfect_answer.py)
Verified signature4580afc -
key-pool rotation: per-session OpenAI key assignment from OPENAI_KEY_01..10 (core/config_loader.py)
Verified signature9d5f105 -
key-pool rotation: per-session OpenAI key assignment from OPENAI_KEY_01..10 (app.py)
Verified signaturece3746d
-
switch to log-Jun-17-2026 + C-non
Verified signaturee7e7053 -
Update README.md
Verified signatureccfcb84
-
Initial deploy of C (non-ca): no post-essay chat. Stripped chat additions from answer-ca base.
Verified signature0a1d57f -
Rename condition + mode_prefix to *-ca to match local folder rename. hf_dataset unchanged (legacy data stays in same dataset under new subfolder).
Verified signaturea9c08ce
-
Auto-grow chat input: lines=1, max_lines=6; CSS splits chat-input from buttons (textarea grows 42-160px; buttons stay 42px); chat-row aligns flex-end so Send stays at the bottom of the input.
Verified signature20986b6
-
general_chat_prompt: strip to vanilla — just case + initial_argument + perfect_answer, no behavior steering
Verified signaturebf30a9b -
general_chat_prompt: drop defensive "do not reveal discussion plan / probe / framework" rule since none are provided to the bot
Verified signature3b27385 -
B condition: add post-essay general chat. After perfect_answer is shown, msg_input + send_btn become interactive; on_send builds messages from case + initial_argument + perfect_answer (NOT discussion_plan) and calls LLM. Logs each chat turn via SessionLogger.add_turn(manager_verdict=None).
Verified signature3e182ec -
B condition: add post-essay general chat. After perfect_answer is shown, msg_input + send_btn become interactive; on_send builds messages from case + initial_argument + perfect_answer (NOT discussion_plan) and calls LLM. Logs each chat turn via SessionLogger.add_turn(manager_verdict=None).
Verified signatureba91955 -
B condition: add post-essay general chat. After perfect_answer is shown, msg_input + send_btn become interactive; on_send builds messages from case + initial_argument + perfect_answer (NOT discussion_plan) and calls LLM. Logs each chat turn via SessionLogger.add_turn(manager_verdict=None).
Verified signature478f607 -
INTRO_MESSAGE: B condition reframed for AI-assistant essay + optional chat
Verified signature1476e93 -
case + placeholder: B condition reframed as 'AI assistant generates + optional chat'
Verified signature4734173 -
case + placeholder: B condition reframed as 'AI assistant generates + optional chat'
Verified signature44c251f
-
STEP 1 framework detection: full reasoning-mode diagnosis with refined mixed-drafts rule. STEP 1 replaces keyword indicator lists with (a) identify load-bearing reasoning move, (b) 3 diagnostic questions in order (predicted outcomes / principles regardless of outcomes / character of an actor), (c) topic-vs-load decoupling table, (d) 'remove the lens' verification test. Mixed drafts rule: NOT a hard consequence default. Instead, pick the participant's CORE argument by explicit emphasis markers ('the most important reason' / 'perhaps for me' / 'the thing that is most ethically questionable is X') (highest priority), argumentative weight, then 'remove the lens' decisive test. Consequence is last-resort fallback only. Tested against pilot Kantian argument 5/5 correctly → duty_rights. Other downstream sections (essay, plan, hooks) unchanged.
Verified signature1ce0e2b -
STEP 1 framework detection rewritten from keyword-matching to reasoning-mode diagnosis. Previous prompt used indicator keyword lists ('right to X', 'consent', 'privacy' → duty_rights, etc.), which would misclassify drafts that mention a topic but argue through a different framework. New STEP 1 asks the LLM to (a) identify the load-bearing reasoning move, (b) ask 3 diagnostic questions in order (predicted outcomes / principles regardless of outcomes / character of an actor), (c) apply a topic-vs-load decoupling table, (d) verify via 'remove the lens' test. Mixed drafts hard-default to consequence. Regression tested in socratic_frame (8/8 cases including 1 synthetic privacy+consequence, 4 pilot consequence+privacy, 3 pilot duty_rights+privacy). Other downstream sections (essay generation, discussion plan, hooks) unchanged.
Verified signature9fda70f
-
Session-recovery propagated from socratic: hidden gr.Textbox (#recovery-payload) + Gradio .then(js=...) chains write/clear localStorage; on_submit_initial / on_end_session yield JSON events on their CONFIRM yields. RECOVERY_HEAD adds modal styling + window.__SOC_RECOVERY helpers; storage key no_ai_session_v1; touch-observer adapted (no chat input — watches chatbot clicks + arg_input edits). on_recover_session rebuilds chatbot as [case_display, user_arg, INTRO_MESSAGE, perfect_answer.text] (mirrors on_submit_initial yield 2) and re-activates the 60s snapshot_timer. SessionLogger.from_dict restores dominant_framework (no_ai's logger lacks argument_submitted_at, so that field is skipped).
Verified signature81f0f87
-
UI parity with socratic/socratic-frame: (1) hide Gradio Chatbot top chrome via show_label=False + CSS for share/clear/delete/trash; (2) strip the '# Case: ...' H1 from the initial chatbot message via display-only CASE_TEXT_DISPLAY; (3) hide the left yellow feedback-hint column (guide-col visible=False) so chatbot expands left, and drop the bottom-row mirror column to keep action buttons aligned under right-col.
Verified signature2cf117d -
UI parity with socratic/socratic-frame: (1) hide Gradio Chatbot top chrome via show_label=False + CSS for share/clear/delete/trash; (2) strip the '# Case: ...' H1 from the initial chatbot message via display-only CASE_TEXT_DISPLAY; (3) hide the left yellow feedback-hint column (guide-col visible=False) so chatbot expands left, and drop the bottom-row mirror column to keep action buttons aligned under right-col.
Verified signature6774e16 -
UI parity with socratic/socratic-frame: (1) hide Gradio Chatbot top chrome via show_label=False + CSS for share/clear/delete/trash; (2) strip the '# Case: ...' H1 from the initial chatbot message via display-only CASE_TEXT_DISPLAY; (3) hide the left yellow feedback-hint column (guide-col visible=False) so chatbot expands left, and drop the bottom-row mirror column to keep action buttons aligned under right-col.
Verified signature2021c0b -
UI parity with socratic/socratic-frame: (1) hide Gradio Chatbot top chrome via show_label=False + CSS for share/clear/delete/trash; (2) strip the '# Case: ...' H1 from the initial chatbot message via display-only CASE_TEXT_DISPLAY; (3) hide the left yellow feedback-hint column (guide-col visible=False) so chatbot expands left, and drop the bottom-row mirror column to keep action buttons aligned under right-col.
Verified signature4f0339d -
UI parity with socratic/socratic-frame: (1) hide Gradio Chatbot top chrome via show_label=False + CSS for share/clear/delete/trash; (2) strip the '# Case: ...' H1 from the initial chatbot message via display-only CASE_TEXT_DISPLAY; (3) hide the left yellow feedback-hint column (guide-col visible=False) so chatbot expands left, and drop the bottom-row mirror column to keep action buttons aligned under right-col.
Verified signatured7c1b05
-
UI parity with socratic/socratic-frame: (1) hide Gradio Chatbot top chrome via show_label=False + CSS for share/clear/delete/trash; (2) strip the '# Case: ...' H1 from the initial chatbot message via display-only CASE_TEXT_DISPLAY; (3) hide the left yellow feedback-hint column (guide-col visible=False) so chatbot expands left, and drop the bottom-row mirror column to keep action buttons aligned under right-col.
Verified signature417dc48
-
Record walkthrough_started_at client-side, pass to on_submit_initial via js= wrapper at submit
Verified signature02dcc00 -
Move walkthrough_started_at + start_session to walkthrough END Start click (with JS retry)
Verified signature9387dbd -
Format walkthrough_started_at + argument_submitted_at as ISO 8601 in payload
Verified signaturea25ff64 -
Add walkthrough_started_at field to logger (top of payload, preserved across start_session)
Verified signature152dcfe -
Record walkthrough_started_at on Start walkthrough click (first click only)
Verified signature278e578 -
Bump chatbot to 65vh and argument textbox to 55vh
Verified signaturefd7055a -
Add welcome overlay before walkthrough; make image walkthrough full-screen; rename Done -> Start
Verified signaturefa60166 -
Tutorial image 04.webp
Verified signature3a10908 -
Tutorial image 03.webp
Verified signature51aad86 -
Tutorial image 02.webp
Verified signature5ff206a -
Tutorial image 01.webp
Verified signature8887b8f -
Remove old PNG tutorial samples
Verified signature05d570b -
Remove old PNG tutorial samples
Verified signatured2dd89f -
Remove old PNG tutorial samples
Verified signature704905b
-
Add tutorial image 03.png
Verified signaturef156b5a -
Add tutorial image 02.png
Verified signature96fb606