{"adoption": {"forks": 53727, "observed_at": "2026-08-28T04:12:19.187700+00:00", "stars": 64010}, "canonical_url": "https://ross.abutalabs.com/products/daily_stock_analysis", "card": {"archived": false, "artifact_type": "application", "description": "LLM 驱动的多市场股票智能分析系统：多源行情、实时新闻、决策看板与自动推送，支持零成本定时运行。  LLM-powered multi-market stock analysis system with multi-source market data, real-time news, decision dashboard, automated notifications, and cost-free scheduled runs.", "domain": ["fintech", "artificial-intelligence", "large-language-models", "data-science", "self-hosted", "analytics"], "enriched": true, "function": ["llm-inference", "agent-framework", "data-visualization", "analytics", "web-scraping", "workflow-automation", "scheduling", "webhook", "chatbot"], "health_score": 100, "homepage": "https://dsa.zhulinsen.tech", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["ZhuLinsen/daily_stock_analysis"], "name": "ZhuLinsen/daily_stock_analysis", "platform": ["python", "cli", "self-hosted", "cross-platform"], "pushed_at": "2026-08-25T14:54:01+00:00", "repo": "ZhuLinsen/daily_stock_analysis", "stars": 64010, "tags": ["stock-analysis", "quantitative-finance", "a-stock", "watchlist", "market-data", "decision-dashboard", "github-actions", "fastapi", "news-sentiment", "backtesting", "notifications", "trading", "ai-agents", "automation", "docker", "web-server"], "topics": ["aigc", "llm", "quant", "quantitative-trading", "a-stock", "ai-agent", "quantitative-finance"], "urls": [], "use_cases": ["analyze my watchlist stocks daily with AI and push a report", "generate LLM stock decision reports for A-shares and US stocks", "get daily market review and stock analysis on Telegram or Feishu", "run scheduled stock analysis without a server using GitHub Actions", "ask an AI agent strategy questions about a specific stock", "aggregate stock quotes, news, and fundamentals from multiple data sources", "backtest past AI stock reports and track accuracy", "self-host a stock analysis dashboard with Docker"], "what_it_is": "An LLM-powered stock analysis application that aggregates multi-source market data, news, and fundamentals for A-share, HK, US, Japanese, Korean, and Taiwanese markets, generating daily AI decision reports with scores, trends, and risk alerts. It includes a FastAPI/WebUI workbench, agent-based strategy Q&A, backtesting, and automated push to WeChat Work, Feishu, Telegram, Discord, Slack, and email, with zero-cost scheduled runs via GitHub Actions.", "when_to_avoid": ["you need high-frequency or algorithmic trade execution rather than daily research reports", "you require guaranteed real-time market data feeds with strict SLAs", "you want a fully deterministic quant backtesting engine without LLM involvement", "you cannot provide any LLM API key or prefer not to send financial data to cloud AI services"], "when_to_choose": ["you want automated daily AI-generated stock research reports pushed to chat or email", "you track stocks across Chinese, Hong Kong, and US markets and want multi-source data with fallbacks", "you want a zero-cost scheduled setup via GitHub Actions or a self-hosted Docker deployment", "you need a web workbench with history, backtesting, and strategy Q&A around your watchlist"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/daily_stock_analysis", "repo": "ZhuLinsen/daily_stock_analysis", "role": "main", "score": 82}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:12:19.187700+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:17:25.994487+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2a3babba226e3dd02d02706090d61584964672e1dde36fc49ddbd2e9c38fe07e", "fetched_at": "2026-08-28T04:12:19.187700+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ZhuLinsen/daily_stock_analysis"}, {"content_hash": "56d13ef3c2e3d6f357fa04b38818c9e5e58c4899305d24a5b6e68b2eac78fd59", "fetched_at": "2026-08-28T17:55:56.810151+00:00", "kind": "homepage", "missing": false, "url": "https://dsa.zhulinsen.tech"}, {"content_hash": "d3b19f45a89a046f59f9ee95b2530f3255a822a7181562cfdad5df20ee9db20e", "fetched_at": "2026-08-28T17:55:56.819056+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/"}, {"content_hash": "d77c54e2120c5eafe49f5a2c039b672c752ffba63ea025bfe72549ee7b5e33e9", "fetched_at": "2026-08-28T17:55:56.821049+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/quick-start/"}, {"content_hash": "3dd901509bdf2c05ea8f20efc3b60ad09ba23615a648011f33ae575923cfcf40", "fetched_at": "2026-08-28T17:55:56.822626+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/github-actions/"}, {"content_hash": "ab470bdc5e5a30cdad5c9c060d0b6d34ad79ff1c8011060a535503b31e7a7a8d", "fetched_at": "2026-08-28T17:55:56.824203+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/local/"}, {"content_hash": "936144fae9d08092208a8814eadb40582b67b5191dda9405ec63c29dd74fddbd", "fetched_at": "2026-08-28T17:55:56.825662+00:00", "kind": "site_page", "missing": false, "url": "https://dsa.zhulinsen.tech/docs/docker/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 16, "rhythm": 99}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 235, "days_push": 8, "days_rel": 10, "gap_med": 4.0, "n_releases_24m": 35}, "score": 82, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}