Commit Graph

460 Commits

Author SHA1 Message Date
ي
952824a271 Stabilize txtai nprobe handling without dropping loaded index state 2026-03-09 12:27:16 +05:30
ي
cd8582eb8c Fix txtai nprobe fallback to avoid reloading incompatible faiss index 2026-03-09 12:21:43 +05:30
ajaysi
1565551765 fix: Pass user_id to style analysis functions in website_analysis_executor
- Fix missing user_id parameter in analyze_content_style() call
- Fix missing user_id parameter in analyze_style_patterns() call
- Fix missing user_id parameter in generate_style_guidelines() call
- user_id is required for subscription checking in llm_text_gen()
- Resolves errors: 'user_id is required for subscription checking'
- All style detection functions now properly pass user_id from executor context
2026-03-09 12:09:56 +05:30
ي
e8d76cd745 Sync SEO dashboard imports and add route smoke test 2026-03-09 12:07:57 +05:30
ي
a19a18d9b4 Add competitor_analysis fallback for deep competitor task scheduling 2026-03-09 12:07:18 +05:30
ي
c3bd04e259 Fix huddle SSE auth fallback with query token support 2026-03-09 12:06:49 +05:30
ي
6b141ee554 Merge branch 'main' into codex/implement-central-visibility-for-seo-onboarding-tasks 2026-03-08 23:13:08 +05:30
ي
936dd14e0d Add consolidated onboarding SEO task health API and dashboard panel 2026-03-08 23:09:02 +05:30
ajaysi
39bc3e3008 Merge PR #397: Add typed request model for task status endpoint
- Add TaskStatusEnum to enumerate valid status values (pending, in_progress, completed, skipped, dismissed)
- Add TaskStatusUpdateRequest Pydantic model with validation
- Constrain completion_notes to max 4000 characters
- Automatically enforce schema validation and improve OpenAPI docs
- Update set_task_status endpoint to use typed request body
- Remove need for manual status validation (FastAPI handles it)
- Preserve dependencies normalization helper and all usages
- Preserve date validation and narrower exception handling from PR #396
- Keep proper feedback scoring using task.status from database
- Keep contextuality validation response fields intact
- Maintain all observability and error handling improvements
- Improve API robustness through type safety
2026-03-08 22:51:17 +05:30
ajaysi
92715661e3 Merge PR #396: Validate plan.date and add narrower exception handling
- Add date validation: validate plan.date is ISO format before computing yesterday
- Log clear warning (plan_id, user_id, plan_date, reason) if date parsing fails
- Replace silent 'except Exception: pass' with explicit SQLAlchemyError handling
- Log detailed warnings (plan_id, user_id, plan_date, yesterday_date, error details) on DB errors
- Keep failures non-fatal to indexing behavior (continue with today's indexing)
- Preserve dependencies normalization helper and its usage in yesterday payloads
- Preserve proper feedback scoring (uses task.status, handles all negative statuses)
- Keep contextuality validation response fields (quality_status, contextuality_validation)
- Improve observability while maintaining system robustness
2026-03-08 18:39:55 +05:30
ajaysi
0aaaf07900 Merge PR #395: Normalize dependencies in today workflow API payloads
- Add _normalize_dependencies() helper to handle all dependency type variations
- Handle None, list, JSON string, and invalid types with safe fallback to []
- Apply normalization to today and yesterday task payloads for consistency
- Ensure indexing pipeline receives normalized list dependencies
- Preserve task status feedback scoring logic (uses task.status, handles all negative cases)
- Keep contextuality validation and quality status response fields
- Improve data consistency across API and indexing surfaces
2026-03-08 18:31:48 +05:30
ajaysi
38444f4508 Merge PR #394: Derive task memory feedback_score from persisted task.status
- Use canonical persisted task.status (from DB) instead of incoming request parameter
- Implement explicit status-to-score mapping: completed→+1, skipped/dismissed/rejected→-1, other→0
- Normalize all negative outcomes uniformly for self-learning memory
- Ensure memory feedback aligns with backend status normalization rules
- Preserve contextuality_validation and quality_status response fields
- Keep failures non-fatal to API behavior with exception handling
- Improve code clarity with explicit conditional logic over ternary operators
2026-03-08 18:28:52 +05:30
ajaysi
74b788a353 Merge PR #392: Add contextuality validation and low-context workflow status
- Replace provenance-based quality with contextuality validation framework
- Add evidence link tracking system (onboarding:key and alert:id formats)
- Implement plan contextuality validation function with configurable thresholds
- Calculate task-level context scores based on evidence link density
- Define contextual workflows (>65% threshold) vs low-context workflows (<65%)
- Add validation in plan persistence layer before database commit
- Integrate contextuality metrics into release readiness checks
- Add recovery strategies for low-context workflows (regeneration with guidance)
- Track evidence link validity against grounding context (onboarding data, alerts)
- Provide detailed contextuality reports in quality assessments
- Maintain backward compatibility while enabling contextual workflow detection
2026-03-08 18:18:43 +05:30
ajaysi
2d4c83e79f Merge PR #391: Add workflow provenance quality metrics and classification
- Introduce task provenance tracking: agent_proposal, llm_backfill, controlled_fallback
- Add quality computation function to classify workflows as 'AI-personalized' or 'guided baseline'
- Calculate agent origin ratio, fallback ratio, and per-pillar coverage metrics
- Implement configurable agent personalization threshold (default 35%)
- Enhance plan metadata with comprehensive quality dimensions:
  - agentOriginRatio, agentOriginPercent, agentOriginTaskCount
  - agentOriginPillars, fallbackRatio, fallbackPercent, fallbackTaskCount
  - totalTaskCount and configurable thresholds
- Simplify task provenance metadata handling in sanitization
- Add backfill logic for existing plans to populate missing quality metrics
- Maintain backward compatibility with existing plan storage
2026-03-08 18:16:54 +05:30
ajaysi
56854df016 Merge PR #390: Add degraded-mode workflow regeneration criteria and endpoint
- Add POST /api/today-workflow/regenerate endpoint for on-demand plan regeneration
- Implement rate limiting (3 requests per 60 seconds) to prevent abuse
- Add regeneration quality score tracking and onboarding completion status
- Compute task hashes for deduplication and change detection
- Extract plan metadata from plan_json for cleaner API responses
- Integrate onboarding progress service to track completion status
- Return quality_score and generated_with_agents metadata in responses
- Enable manual workflow refresh in degraded mode scenarios
- Maintain backward compatibility with simplified schema
2026-03-08 18:12:43 +05:30
ajaysi
35581316a8 Merge PR #389: Committee Health Precheck and Simplified Architecture
- Simplify workflow generation by removing complex dependency coercion and metadata normalization functions
- Add committee health precheck to detect insufficient active agents before proposal gathering
- Add orchestrator initialization state metadata tracking for observability
- Downgrade fastapi to 0.104.0 for stability
- Simplify database schema (remove generation_mode, committee_agent_count, fallback_used columns from DailyWorkflowPlan)
- Remove 'skipped' from suppressed task statuses in memory service (keep only dismissed, rejected)
- Update task status normalization logic for clarity
- Return simplified metadata structure with generation_path and degradation tracking
2026-03-08 18:10:27 +05:30
ajaysi
8f6ed3a616 Merge PR #388: Daily Workflow Integration & Enhanced Reliability
- Resolve merge conflicts in backend/services/today_workflow_service.py and frontend/src/stores/workflowStore.ts
- Backend: Keep robust handling for both dict and object types in TaskProposal conversion
- Backend: Combine dependencies coercion with task metadata normalization
- Frontend: Implement graceful fallback pattern (try server first, then local generation on unavailability)
- Add provenanceSummary integration from server responses
- Ensure degraded mode handling with appropriate messaging
2026-03-08 17:47:15 +05:30
ي
52563849d5 Fix onboarding-status user ID resolution in scheduler path 2026-03-07 12:15:25 +05:30
ajaysi
4f2a3d6e2d fix: Resolve conflicts in PR #386 for per-agent timeouts and partial committee handling 2026-03-07 12:05:51 +05:30
ajaysi
f0f73eb003 Merge branch 'pr-385' 2026-03-07 12:02:50 +05:30
ajaysi
a00212ca4d refactor: Unify canonical task outcome statuses (completed, skipped) across workflow and memory services (Closes #384) 2026-03-07 12:00:04 +05:30
ajaysi
5780deff2f fix: Normalize specialized agent pillar IDs and log invalid proposals (Closes #383) 2026-03-07 11:57:26 +05:30
ajaysi
8b554a35c4 fix: Resolve dependency conflicts, scheduler status error, and frontend config (Closes #382) 2026-03-07 11:51:59 +05:30
ي
62d5cf773e Add typed request model for today workflow task status updates 2026-03-06 21:45:48 +05:30
ي
e694e6172f Validate plan date before yesterday workflow indexing 2026-03-06 21:45:25 +05:30
ي
2403d92f9d Normalize today workflow task dependencies payload 2026-03-06 21:44:23 +05:30
ي
acecf2a3f4 Fix task outcome feedback scoring to use normalized status 2026-03-06 21:43:40 +05:30
ي
7096f03623 Add contextuality validation and low-context workflow status 2026-03-06 21:42:49 +05:30
ي
84babd0407 Add workflow provenance quality metrics and classification 2026-03-06 21:42:14 +05:30
ي
4621107988 Add degraded-mode workflow regeneration criteria and endpoint 2026-03-06 21:40:29 +05:30
ي
15a9eaa9a0 Add committee health precheck and orchestrator init state metadata 2026-03-06 21:40:03 +05:30
ي
81b29895b9 Improve daily workflow provenance modeling and UI labels 2026-03-06 21:39:32 +05:30
ي
198143e6ca Add per-agent timeout handling for daily committee proposals 2026-03-06 21:38:04 +05:30
ي
c3f478a763 Normalize today workflow task dependencies as arrays 2026-03-06 21:37:36 +05:30
ajaysi
5d49351c2d feat: Support explicit technical SEO audit states and surface task diagnostics in dashboard (PR #382) 2026-03-05 22:28:55 +05:30
ajaysi
afe79f188a refactor: Align SEO dashboard imports/routes and add app router smoke test (PR #381) 2026-03-05 22:21:05 +05:30
ajaysi
110f7318cc chore: Update backend services, intelligence integration, and documentation 2026-03-05 22:14:25 +05:30
ajaysi
5cccb89df8 feat: Add competitor_analysis fallback for deep competitor onboarding scheduling (PR #380) 2026-03-05 22:11:55 +05:30
ajaysi
6205ff8bbe Merge PR #379: fix preflight pricing/model drift and usage UI 2026-03-05 12:22:21 +05:30
ي
81f49f4ebd Add explicit usage summary uniqueness and billing indexes 2026-03-05 11:17:48 +05:30
ي
45dbf095f6 Add Stripe webhook idempotency persistence guard 2026-03-05 11:17:21 +05:30
ي
81052d06b4 Fix preflight model mapping when skipping invalid providers 2026-03-05 11:10:54 +05:30
ajaysi
6121ae1a92 Merge branch 'pr-378' 2026-03-05 10:52:31 +05:30
ajaysi
156beba7e0 Merge branch 'pr-377' 2026-03-05 10:49:08 +05:30
ajaysi
2610b1e35b Merge branch 'pr-376' 2026-03-05 10:44:12 +05:30
ajaysi
93406352d4 Merge branch 'pr-375' 2026-03-05 10:41:19 +05:30
ajaysi
806ab7b20d Merge branch 'pr-374' 2026-03-05 10:34:36 +05:30
ajaysi
26131232c7 feat: enhance billing dashboard with historical data & security hardening
- Fix usage tracking zero-value bug with self-healing logic
- Add month selector for historical usage views
- Implement start-of-month graceful initialization
- Merge PR #372: Harden user-scoped access in subscription routes
- Fix UI bugs in UsageDashboard component
2026-03-05 10:21:56 +05:30
ي
c604dc87ec Add Stripe webhook event persistence and idempotency 2026-03-04 20:44:04 +05:30
ي
6e75f44ed5 Add subscription usage constraints and safe index migration 2026-03-04 20:43:14 +05:30