fix(awooop): 清理 tenants 前台內部識別文案
All checks were successful
Code Review / ai-code-review (push) Successful in 17s
CD Pipeline / tests (push) Successful in 1m38s
CD Pipeline / build-and-deploy (push) Successful in 6m1s
CD Pipeline / post-deploy-checks (push) Successful in 2m50s

This commit is contained in:
Your Name
2026-06-15 08:13:48 +08:00
parent 5c26e58632
commit 471b16ac17
4 changed files with 28 additions and 9 deletions

View File

@@ -8596,6 +8596,7 @@
"eyebrow": "全域納管",
"title": "全域產品資產台帳",
"subtitle": "把租戶資料表、正式網站入口、前後台產品、平台工具、設計系統、AI 工具與原始碼管控候選合併到同一個只讀視圖;前台只顯示脫敏範圍代號,不揭露原始負責人或命名空間,且這不是建立專案庫、改路由、部署、掃描或執行期授權。",
"badge": "只讀資產台帳",
"loading": "讀取資產盤",
"itemsUnit": "項",
"productsTitle": "產品 / 專案納管",
@@ -8614,11 +8615,11 @@
},
"repos": {
"label": "候選專案庫",
"detail": "來源於 source-control primary readiness,只顯示脫敏範圍與阻塞原因。"
"detail": "來源於版本來源就緒度台帳,只顯示脫敏範圍與待補證據數。"
},
"tenants": {
"label": "租戶資料",
"detail": "保留 AwoooP tenant table,避免把產品範圍誤當租戶政策。"
"detail": "保留 AwoooP 租戶資料表,避免把產品範圍誤當租戶政策。"
},
"ownerAccepted": {
"label": "已接受回覆",
@@ -8634,7 +8635,8 @@
"repos": "來源",
"gates": "閘門",
"redactedScope": "已脫敏範圍",
"blockers": "阻塞項 {count}"
"blockers": "待補證據 {count}",
"routeShape": "上游 {upstream};後台 {admin};即時通道 {websocket}"
},
"columns": {
"domain": "網站 / 服務入口",

View File

@@ -8596,6 +8596,7 @@
"eyebrow": "全域納管",
"title": "全域產品資產台帳",
"subtitle": "把租戶資料表、正式網站入口、前後台產品、平台工具、設計系統、AI 工具與原始碼管控候選合併到同一個只讀視圖;前台只顯示脫敏範圍代號,不揭露原始負責人或命名空間,且這不是建立專案庫、改路由、部署、掃描或執行期授權。",
"badge": "只讀資產台帳",
"loading": "讀取資產盤",
"itemsUnit": "項",
"productsTitle": "產品 / 專案納管",
@@ -8614,11 +8615,11 @@
},
"repos": {
"label": "候選專案庫",
"detail": "來源於 source-control primary readiness,只顯示脫敏範圍與阻塞原因。"
"detail": "來源於版本來源就緒度台帳,只顯示脫敏範圍與待補證據數。"
},
"tenants": {
"label": "租戶資料",
"detail": "保留 AwoooP tenant table,避免把產品範圍誤當租戶政策。"
"detail": "保留 AwoooP 租戶資料表,避免把產品範圍誤當租戶政策。"
},
"ownerAccepted": {
"label": "已接受回覆",
@@ -8634,7 +8635,8 @@
"repos": "來源",
"gates": "閘門",
"redactedScope": "已脫敏範圍",
"blockers": "阻塞項 {count}"
"blockers": "待補證據 {count}",
"routeShape": "上游 {upstream};後台 {admin};即時通道 {websocket}"
},
"columns": {
"domain": "網站 / 服務入口",

View File

@@ -975,7 +975,7 @@ function GlobalAssetCoveragePanel({ inventory }: { inventory: TenantAssetInvento
</div>
</div>
<span className="inline-flex border border-[#9bc7a4] bg-[#f0faf2] px-2 py-0.5 text-xs font-semibold text-[#17602a]">
{inventory?.schema_version ?? t("loading")}
{inventory ? t("badge") : t("loading")}
</span>
</div>
@@ -1095,8 +1095,12 @@ function GlobalAssetCoveragePanel({ inventory }: { inventory: TenantAssetInvento
<td className="px-3 py-2">
<AssetStatusBadge status={route.coverage_status} t={t} />
</td>
<td className="px-3 py-2 font-mono text-[#5f5b52]">
upstream={route.upstream_count}; admin={route.admin_route_count}; ws={route.websocket_route_count}
<td className="px-3 py-2 text-[#5f5b52]">
{t("labels.routeShape", {
upstream: route.upstream_count,
admin: route.admin_route_count,
websocket: route.websocket_route_count,
})}
</td>
</tr>
))}

View File

@@ -304,6 +304,10 @@ def validate(root: Path) -> None:
"github_target_owner_decision_response_v1",
"source_control_ref_truth_owner_response_v1",
"source_control_workflow_secret_name_owner_response_v1",
"awooop_tenant_asset_inventory_v1",
"source-control primary readiness",
"AwoooP tenant table",
"阻塞項 {count}",
"批准!",
"工作視窗",
"My request for Codex",
@@ -357,6 +361,13 @@ def validate(root: Path) -> None:
"My request for Codex",
]:
assert_text_not_contains("frontend.public_sensitive_source_text", public_frontend_source_text, forbidden)
for forbidden in [
'inventory?.schema_version ?? t("loading")',
"upstream={route.upstream_count}",
"admin={route.admin_route_count}",
"ws={route.websocket_route_count}",
]:
assert_text_not_contains("frontend.tenants_visible_internal_implementation_text", awooop_tenants_page, forbidden)
for label, text in [
("awooop_home_page", awooop_home_page),