Commit Graph

23 Commits

Author SHA1 Message Date
ajaysi
923fa671fe feat: ContentGuardianAgent, onboarding UX, Team Activity action wiring, docs, agent help modal
ContentGuardianAgent consolidation:
- Merge 3 duplicate classes into single source in specialized/content_guardian.py
- Watchdog audit_committee() with heuristic scoring, coverage gaps, overlaps, alerts
- Remove misleading rejection_rate() helper; use acceptance_rate directly
- Integrate audit + alerts + trend signals into today_workflow_service.py

Team Activity page:
- QualityAuditPanel: health ring, per-agent critiques, coverage gaps, overlaps
- TrendSignalsPanel: opportunity cards with urgency/impact/coverage bars
- AlertBanner: persistent dismiss via POST /alerts/{id}/mark-read
- AgentHelpModal: dialog showing all 8 agents with descriptions, tools, schedule
- QualityAuditPanel action buttons: Fill gap -> /content-planning, Resolve overlap, View CTA on alerts/issues
- TrendSignalsPanel action buttons: Create content from this trend -> /blog-writer with trend context state

Onboarding system:
- Step 4 validation: no auto-pass via basic_ready; requires persona data or explicit progression
- Step 5 validation: logs warning on auto-pass without integration data
- OnboardingCompletionService: single DB session, transactional task creation, upsert pattern
- Business-without-website: nullable website_url on SIFIndexingTask and MarketTrendsTask
- DeepCompetitorAnalysisExecutor: 5-min timeout, 10-competitor cap, asyncio.wait_for
- Persona generation: async with 30s timeout, falls back to scheduler
- OnboardingProgressService.reset_onboarding(): resets session + pauses all DB tasks
- OnboardingControlService.reset_onboarding(): also cancels APScheduler jobs
- FinalStep TaskSchedulingPanel: shows scheduled/failed tasks after completion, 8s auto-redirect
- onboarding_completed agent activity event logged to feed

Documentation:
- docs-site/features/onboarding/: overview, steps, scheduler-tasks, technical-reference (4 pages)
- docs-site/mkdocs.yml: added Onboarding System nav section
- docs-site/features/sif-agents/: overview, agent-directory, committee-system, content-guardian (4 pages)
- docs-site/features/team-activity/: overview, quality-audit, trend-signals, alert-system (4 pages)
- docs-site/features/todays-workflow/: updated overview, technical-architecture, workflow-guide, api-reference
2026-06-01 12:24:31 +05:30
ajaysi
64f1f88cdd feat: image generation overhaul (model-aware text, dim clamping, \.30 pricing), event-driven dashboard cache invalidation, SEO insights (AI visibility, GSC, keyword gap), YouTube OAuth/publish, blog writer & content planning improvements, scheduler monitoring updates 2026-05-30 07:58:22 +05:30
ajaysi
aaf94049da feat: validate podcast cost estimation accuracy, document per-token costs, and fix subscription/plan enforcement
Issue #543 — Validate Estimated Cost Accuracy (UI vs Backend)

Backend:
- cost_estimator.py uses pricing catalog (APIProviderPricing) as single source of truth
- All 7 cost components: analysis, research (search+LLM), script, TTS, voice clone, avatar, video
- initialize_default_pricing() runs on every app startup for auto-sync

Frontend cost estimation fixes:
- Added missing analysisCost, scriptCost, voiceCloneCost to PodcastEstimate type
- toPodcastEstimate() now extracts all 7 backend fields (was dropping 3)
- headerCostEst maps analysisCost->Analyze, scriptCost->Write, voiceCloneCost->Produce
- EstimateCard shows 5 chips: Analysis, Research, Script, Voice(TTS+clone), Visuals(avatar+video)
- Chip sum now equals backend total for all configurations

Subscription & plan fixes:
- Removed Stripe re-verification from checkSubscription() (downgrade regression fix #539)
- Added verifyCheckoutRef pattern for reliable mount-time checkout polling
- One-time Stripe sync effect with pending_subscription_change flag for Customer Portal returns
- Free plan limits: stability_calls 3->10, audio_calls 5->10 (supports 2 podcasts)
- Image enforcement uses actual provider (GPT_PROVIDER), not hardcoded Stability
- Billing/pricing pages bypass onboarding check in ProtectedRoute
- Gradient buttons + loading spinner on plan chip in UserBadge
- Added metadata-based Stripe lookup fallback (Issue #538)

Documentation:
- TESTING_GUIDE.md: comprehensive testing instructions for non-technical testers
  - Free plan limits, usage tracking, cost estimation formulas
  - 10 test cases for UI verification
  - Troubleshooting guide
  - Quick-reference cost formulas with all default rates

Cleanup: removed legacy ToBeMigrated directory (70+ files, ~22K LOC)
GSC Brainstorm: service, hook, modal, and UI components for blog topic brainstorming
2026-05-27 08:46:38 +05:30
ajaysi
96fa469fe8 fix: add metadata-based Stripe customer lookup in verify-checkout for reliable post-subscription plan detection (#538) 2026-05-26 15:25:05 +05:30
ي
b805595e3c docs(seo-dashboard): add recent SEO enhancement coverage from code + docs review 2026-05-25 20:56:27 +05:30
ajaysi
9b3bec698b fix: credit tracking, voice clone TTL, avatar upload ui, asset serving fallback, OAuth encryption, free plan video renders, backlink outreach sprint 2026-05-25 17:07:35 +05:30
ajaysi
e14ab7f931 Merge branch 'pr-525'
# Conflicts:
#	docs-site/docs/features/podcast-maker/api-reference.md
#	docs-site/docs/features/podcast-maker/implementation-overview.md
2026-05-23 13:35:24 +05:30
ي
6df1010db1 docs: remove podcast maker binary screenshot assets 2026-05-23 13:29:39 +05:30
ajaysi
644e72d289 feat: Brainstorm Topics with GSC + Issue #518 fixes + Blog Editor enhancements
Issue #518 - Subscription not updating after checkout:
- Fix stale closure in SubscriptionContext checkout polling (use subscriptionRef)
- Move checkout success polling from InitialRouteHandler into SubscriptionContext
- Remove redundant polling code from InitialRouteHandler
- Fix plan label: 'Free' instead of 'No Plan', proper capitalization
- Add plan refresh button in UserBadge
- Add 'View Costing Details' to UserBadge dropdown
- Rename 'ALwrity Podcast Maker' to 'Podcast Creator' across UI
- Clean subscription=success URL param after verification

Blog Writer WYSIWYG Editor enhancements:
- Per-section preview toggle (view/edit icons)
- Enhanced hover-based toolbar
- Circular SVG progress stats bar with detailed tooltip
- Research tool chips in stats bar footer
- Per-section TTS with useTextToSpeech hook (browser native)
- Full blog preview modal with print/PDF support
- PlayAllTTSButton: sequential playback with progress bar
- OnThisPageNav: floating sidebar with scroll tracking
- Section data attributes for scroll anchoring

GSC Brainstorm Topics feature:
- Backend: gsc_brainstorm_service.py (rule-based + LLM recommendations)
- Backend: POST /gsc/brainstorm endpoint with 3-word minimum validation
- Frontend: gscBrainstorm.ts API client
- Frontend: useGSCBrainstormConnection hook (popup OAuth, no /onboarding redirect)
- Frontend: useGSCBrainstorm hook (connect check + brainstorm call)
- Frontend: GSCBrainstormModal (3-tab results: Opportunities, Gaps, AI Recs)
- Frontend: BrainstormButton (visible at 3+ words, GSC connect overlay)
- Wire BrainstormButton into ManualResearchForm and ResearchAction
- Add blog_writer to gsc_auth router features for ALWRITY_ENABLED_FEATURES
2026-05-20 22:44:15 +05:30
ajaysi
ff61708e29 Merge PR #468: Add Podcast Maker journey pages for personas 2026-04-07 18:00:24 +05:30
ajaysi
63767d72b3 Merge PR #469: Add Podcast Maker best-practices guide 2026-04-07 18:00:20 +05:30
ي
18bed36e2b docs: add podcast maker best practices guide 2026-04-07 17:52:29 +05:30
ي
24d932d2b5 docs: add Podcast Maker journeys across persona tracks 2026-04-07 17:50:44 +05:30
ي
cd53680523 Add user-facing Podcast Maker docs with implementation and API refs 2026-04-07 17:48:58 +05:30
ي
b93a4d2a67 docs: add podcast demo mode deployment flag guidance 2026-03-30 07:41:46 +05:30
ajaysi
8193cdba67 AI Analysis and Content Strategy fixes. Enhanced Strategy Routes refactoring. 2026-01-10 19:32:50 +05:30
ajaysi
49e2131715 AI Image Studio, AI podcast Maker, AI product Marketing 2025-11-28 14:33:52 +05:30
ajaysi
bf7493c366 AI Video Generation Implementation 2025-11-17 17:38:23 +05:30
ajaysi
4901b7eb72 AI Story Writer Backend Migration Complete, Frontend UI Components Added 2025-11-16 19:25:26 +05:30
ajaysi
cdb41aec1b Added image generation to blog writer 2025-10-31 15:59:16 +05:30
ajaysi
e57d2577f8 Alwrity technical documentation 2025-09-25 12:23:21 +05:30
ajaysi
b2b5769ad9 feat: Add comprehensive documentation structure
- Created ALwrity introduction page with vision summary
- Added detailed installation guide with step-by-step instructions
- Created comprehensive configuration guide for API keys and settings
- Added first steps guide with complete user onboarding flow
- Updated navigation structure to include all new pages
- Preserved existing documentation while organizing it logically
- Optimized for SEO with proper structure and metadata
2025-09-24 18:09:58 +05:30
ajaysi
5bee5c0aa0 feat: Set up MkDocs documentation site with Material theme
- Created comprehensive MkDocs configuration with Material theme
- Set up organized documentation structure for ALwrity features
- Added GitHub Pages deployment workflow
- Created initial documentation pages:
  - Homepage with feature overview
  - Quick Start guide
  - Blog Writer and SEO Dashboard feature docs
  - Comprehensive troubleshooting guide
- Configured responsive design with dark/light mode toggle
- Added search functionality and navigation
- Set up automatic deployment to GitHub Pages

The documentation site will be available at https://alwrity.github.io/ALwrity
2025-09-24 16:53:29 +05:30