@geoly-ai/social-hub-cli 0.2.18 → 0.2.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,16 @@ All notable changes to `@geoly-ai/social-hub-cli` are documented in this file.
4
4
 
5
5
  Release workflow: `pnpm release:cli` → `pnpm publish:cli`.
6
6
 
7
+ ## [0.2.19] - 2026-07-22
8
+
9
+ ### Added
10
+
11
+ - created/updated/unchanged 分类计数 + 单调并发安全(板块情报 #4)
12
+
13
+ ### Fixed
14
+
15
+ - not_visible 计入采集完成度 coverage,不再反复派发白吃额度(板块情报 #5)
16
+
7
17
  ## [0.2.18] - 2026-07-22
8
18
 
9
19
  ### Added
@@ -1,6 +1,6 @@
1
1
  {
2
- "generatedAt": "2026-07-22T08:34:47.285Z",
3
- "cliVersion": "0.2.18",
2
+ "generatedAt": "2026-07-22T10:31:07.316Z",
3
+ "cliVersion": "0.2.19",
4
4
  "commands": [
5
5
  "accounts",
6
6
  "accounts brand-bindings",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geoly-ai/social-hub-cli",
3
- "version": "0.2.18",
3
+ "version": "0.2.19",
4
4
  "type": "module",
5
5
  "description": "social-hub CLI for Social Ops Hub",
6
6
  "repository": {
@@ -22,8 +22,8 @@
22
22
  },
23
23
  "dependencies": {
24
24
  "commander": "^12.1.0",
25
- "@geoly-ai/social-hub-sdk": "0.0.35",
26
- "@geoly-ai/social-hub-authz": "0.0.7"
25
+ "@geoly-ai/social-hub-authz": "0.0.7",
26
+ "@geoly-ai/social-hub-sdk": "0.0.36"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@types/node": "^22.10.2",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 1,
3
3
  "package": "social-ops-hub",
4
- "cliVersion": "0.2.18",
4
+ "cliVersion": "0.2.19",
5
5
  "repository": "social-ops-hub",
6
6
  "publish": {
7
7
  "registry": "https://skill.sh",
@@ -65,6 +65,9 @@ social-hub intelligence evidence-import --file evidence.json
65
65
  # 热帖批量回灌(批≤200;每条 watchlistId 做品牌归因→进 subreddit_hot_post_snapshots;逐条拒收报告)
66
66
  social-hub intelligence posts-import --file posts.json
67
67
  # posts.json: {"items":[{"watchlistId":"<uuid>","subreddit":"espresso","title":"...","permalink":"https://www.reddit.com/r/espresso/comments/x/y/","score":12,"commentsCount":3}]}
68
+ # 返回 {createdCount(净新增),updatedCount(已有帖内容变),unchangedCount(内容未变),rejectedCount,
69
+ # importedCount=前三者和(兼容),results[{index,id,outcome}]}——created 才是净新增,无需抓前后比 permalink。
70
+ # 分类=material(标题/正文/flair/作者)变化;指标(score/comments)变不算 updated;陈旧回放不覆盖较新数据。
68
71
  ```
69
72
 
70
73
  **热帖归因**:`watchlistId` 是品牌归因主键(watchlist 挂 brandId);受限主体回灌时该条
@@ -128,8 +131,11 @@ social-hub intelligence evidence-status --subreddit espresso
128
131
  **8 类证据**:about / rules / wiki / submit_text / pinned / flair / page_signals /
129
132
  installed_apps。**状态语义**:`available`=抓到内容(含"规则为空"这类可确证的空);
130
133
  `not_visible`=页面明确无该项;`failed`=采集失败——**failed 不等于"没有规则"**,
131
- 合规判断必须区分。`needsAcquisition=true` 表示无新鲜证据(从未采/过期/最近失败,
132
- lastAttemptAt/lastFailureReason 区分),先 evidence-fetch 再消费。TTL:
134
+ 合规判断必须区分。**采集完成度**:`needsAcquisition=true` 表示无新鲜的**已完成采集**证据
135
+ (从未采/过期/仅 failed);**fresh not_visible 与 fresh available 一样算已完成 → needsAcquisition=false**
136
+ (不再反复派发白吃额度),TTL 到期后 not_visible 才重新 needsAcquisition。**内容消费**另有
137
+ `evidence-list --fresh-only` 只返 available(not_visible 无内容可消费)。看 lastAttemptAt/
138
+ lastFailureReason 区分从未采/失败。TTL:
133
139
  rules/wiki/about/submit_text 30 天、pinned 24 小时、flair/page_signals/
134
140
  installed_apps 7 天。
135
141