Spaces:
Sleeping
Sleeping
Commit History
29 days ago
-
Fix audited pipeline, session isolation and proposal grounding issues
Preserve per-visitor configuration and background work, repair dossier and interview extraction, correct analysis signals and harden provider errors. Share writer/verifier grounding, budget rendered requests and verify screening answers. Offline item regressions, integration smoke checks and isolation checks pass; live provider/browser validation remains pending.357ee36
-
Add a guided interview as a second way to build the profile
Freelancers with no dossier folder can choose "Interview me instead" on the Dossier screen: 63 chat-style questions (buttons and free text) whose answers become the same evidence index a folder produces, so scoring, the recommendation and the proposal run unchanged. - Answers are stored exactly as typed. The AI (the Setup API by default, or an optional free Groq key) checks each answer fits its question and asks follow-ups; rule checks run first, and alone when no API works. - A thin folder is offered a gap-filling interview that adds to the folder's evidence; "Interview me instead" replaces the folder, and its profile is scored on the interview alone. - Previous (edit and replace), Skip, Finish, Start over with confirm, and a Groq key box on the interview screen and in Setup. - Each answer is also its own evidence chunk, so project results and later projects reach the proposal writer; practice work is labelled as practice; tone, opening, guarantee, timezone and language…93411b2
-
Add shareable in-app error diagnostics
Users hitting a provider error had no way to see what went wrong or to hand anything useful to the team. Four gaps closed: A. The only error surface (API Usage Status) was gated behind SHOW_DEBUG_PANEL, which defaults off — invisible to exactly the user who needs it. New diagnostics_panel is never debug-gated, shows only failures, and renders nothing on a healthy run so the design is unchanged. It clears itself once a later call succeeds. B. api_usage_log lived only in session_state, so a page reload — the usual reaction to a failure — destroyed the evidence. Every finished call is now mirrored to a bounded JSONL log at write time. C. Provider correlation fields were discarded. LLMCallResult now carries request_id, http_status and error_type, read from structured SDK fields rather than guessed from message text, so 401 (bad key) and 404 (wrong/retired model) are distinguishable with certainty. D. No way to share. Reports can be downloaded, copied, or uplo…22b38d8