feat: add SceneKind::Monitoring and scene_kind_hint param to analyzer

- Add SceneKind::Monitoring enum variant with from_str/as_str helpers
- Add analyze_scene_source_with_hint function accepting optional scene kind hint
- User hint takes priority over meta tag, defaults to ReportCollection
- ReportCollection requires target_url, expected_domain, entry_script
- Monitoring type has optional fields
- Add test cases for hint parameter behavior
- Update non_report fixture with required meta tags for ReportCollection

🤖 Generated with [Qoder][https://qoder.com]
This commit is contained in:
木炎
2026-04-16 23:33:24 +08:00
parent 45b54ab007
commit 67fe17302e
3 changed files with 385 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>普通门户页面</title>
<!-- No sgclaw-scene-kind meta tag - user must specify via hint -->
<meta name="sgclaw-tool-kind" content="browser_script">
<meta name="sgclaw-target-url" content="http://example.com/dashboard">
<meta name="sgclaw-expected-domain" content="example.com">
<meta name="sgclaw-entry-script" content="js/monitor.js">
</head>
<body>
<button>打开菜单</button>
</body>
</html>