feat(h5): align third feedback with latest PSD and scanning screen

This commit is contained in:
xsl
2026-10-12 16:33:10 +08:00
parent f3e7eac909
commit c7b085e795
30 changed files with 3343 additions and 987 deletions
+20 -14
View File
@@ -6,26 +6,26 @@
"4": "customer-feedback-second.js",
"5": "n",
"6": ".runAndExtendWithFaceDetection",
"7": "k",
"7": ".toString",
"8": "admin.js",
"9": "__awaiter",
"10": "mn",
"10": "FaceLandmarks",
"11": "lib/accounts.js",
"12": "server.js",
"13": "files",
"14": ".draw",
"15": "extractFaces",
"16": "巨子测肤 · 1'me 在线肌肤测试 — UI 设计规范",
"17": "FaceLandmarks68",
"17": "k",
"18": "1'me 在线肌肤测试 H5",
"19": "head-pose.js",
"20": "build_fixtures.py",
"21": "AgeGenderNet",
"22": "extractAllFacesAndComputeResults",
"21": "disposeUnusedWeightTensors",
"22": ".predictAgeAndGender",
"23": "facepp-skinanalyze(旷视皮肤分析专业版调用技能)",
"24": "巨子测肤 · 1'me 语音播报内容设计文档 V1.0",
"25": "mobile-select.iife.min.js",
"26": "wi",
"26": ".extractWeights",
"27": "gen_voice.py",
"28": "C",
"29": "face-api.js 本地化依赖(h5/vendor/faceapi/)",
@@ -39,9 +39,8 @@
"37": "UI 外发版 10.09 图片资源",
"38": "FaceLandmark68Net",
"39": "UI交互界面调整",
"40": "extractFaceTensors",
"41": "NeuralNetwork",
"42": "export_psd_assets.py",
"42": "layer_at",
"43": "normalize",
"44": "start-local.sh",
"45": "PredictAllAgeAndGenderWithFaceAlignmentTask",
@@ -60,7 +59,6 @@
"58": ".dispose",
"59": "call_skinanalyze.sh",
"60": "report-fixture.js",
"61": ".extractWeights",
"62": "提交前 Review(2026-10-11)",
"63": "e2e-browser.mjs",
"64": "account-client.js",
@@ -70,13 +68,12 @@
"68": "analyze-timeout.js",
"69": "misans/README.md",
"70": ".forwardInput",
"71": ".toString",
"72": "build_report_copy.py",
"73": "camera-geometry.js",
"74": "report-copy.js",
"75": "prepare_h5_assets.py",
"76": ".detect",
"77": ".runAndExtendWithFaceDetections",
"76": "TinyYolov2Base",
"77": "drawFaceExpressions",
"78": "t",
"79": "登录反馈与加载优化(2026-10-12)",
"80": "线上微信登录部署记录",
@@ -84,11 +81,20 @@
"82": "wechat-browser.mjs",
"83": "10.09 新版 H5 实施与验收",
"84": "微信登录联调:2026-10-12",
"86": "LabeledFaceDescriptors",
"85": "test/accounts.js",
"87": "产品推荐规则:肤龄基准与边界调整",
"88": "ui-20261012/manifest.json",
"89": "傅艳NEW与项思炼的会话 2026年10月12日.md",
"90": "customer-feedback.mjs",
"91": "wi",
"92": "客户反馈修改(2026-10-12)",
"93": ".runAndExtendWithFaceDetections",
"94": "第三轮反馈:PSD 对齐及本地验收",
"95": "login-performance.mjs",
"96": "production-loop.mjs",
"97": "PredictSingleAgeAndGenderWithFaceAlignmentTask",
"98": "PredictSingleFaceExpressionsWithFaceAlignmentTask"
"98": "PredictSingleFaceExpressionsWithFaceAlignmentTask",
"99": "DetectSingleFaceLandmarksTask",
"100": "extractAllFacesAndComputeResults",
"106": "第三轮反馈20261012/傅艳NEW与项思炼的会话 2026年10月12日.md"
}
+1 -1
View File
@@ -1 +1 @@
{"0": "00c97d478a8f90eb", "1": "cb6ea50bd4e4a5ca", "2": "00705ebb76871f0f", "3": "1f737ca8edb978f2", "4": "56bf12952b0de42b", "5": "93c69860c6f6563c", "6": "5a9014c4a7f87699", "7": "188dd5e33354e35d", "8": "1ecf47531e1d507b", "9": "64a6935321c48bb6", "10": "9ac0935bc0d2c1fd", "11": "ed0d13cfa8571d24", "12": "53594b653ad48743", "13": "7e3b558a587a4ebe", "14": "bf75bfc99d4f9e34", "15": "72d3264e772df1cb", "16": "95add6a975c0cb72", "17": "15606ce5d8eec23a", "18": "38bb0b185ceed116", "19": "0a373ad2197fd1a6", "20": "aecf2fce44ba49c5", "21": "224bdcd6528fddbf", "22": "e42f384dfedcff89", "23": "90fac00055070ce2", "24": "f85b5b1634224c86", "25": "46e8db3e6e3f37ea", "26": "83b0fd3b14363e4d", "27": "eab427ce9a5219e9", "28": "9c6f14efe476acf4", "29": "c608f1c6492e1cb1", "30": "73c13793fca09f56", "31": "fbbcfc059751cc6a", "32": "f6bcf56c4589316b", "33": "75f750c5b7d9f63d", "34": "f024ff7942935690", "35": "c4fa292c3dfb0d0e", "36": "a7d375041779bad4", "37": "cb8f26249485324a", "38": "9a25b1230b5fe649", "39": "fdd95375b4a5ddb3", "40": "c6e2efd58425d13d", "41": "d96493a5f110bd4c", "42": "ffd960136fde00ad", "43": "5b04375ec4594cb1", "44": "852c1bb2446edd9c", "45": "92ab3e5134ed8685", "46": "65718282b3c32109", "47": "e594ecaa8e7d1538", "48": "1e2c13775a52fdea", "49": "1f976711cda158dc", "50": "bbb2b57d72922b16", "51": "eb6a182204867275", "52": "2ec3c8c088568ba9", "53": "68c45056378341a7", "54": "c58d41e8e580fdc6", "55": "54d7329fed675057", "56": "8c9a3fc5edff7e44", "57": "f2a40b5f1b29f669", "58": "d0d4f9872c8bcc83", "59": "891f59cda3708718", "60": "a505b7de6257a4e8", "61": "2d008ec4a8df7849", "62": "1366ae24c7e5897d", "63": "c256b43f75d7809e", "64": "ce0e68dab611f022", "65": "74ae017de0ffd36b", "66": "e042d7fe7351bcb9", "67": "3e126d8deaf6e200", "68": "6b91f3679541de79", "69": "e511846eeba03076", "70": "880a74c6d255e5cc", "71": "cd6f168abba94fea", "72": "c84f196a7bd35861", "73": "2b887bf601ccfb9f", "74": "ae2a154311e1f53a", "75": "69fdd23278518884", "76": "68250611c66f576f", "77": "429cd62f9137881c", "78": "f4aae1bece83f9e0", "79": "c6cfdfe181232ecc", "80": "315325cde1352e98", "81": "37c559741825be74", "82": "2b037735e1f5b0f6", "83": "1284897282eb47a3", "84": "d8bb296741d3d05c", "86": "f8b38aeaaab11ec4", "87": "e5fa7717989eda80", "89": "9e3363b80eeceeea", "90": "dd1c246e19a2d032", "92": "fced244d93677d90", "97": "01f68dfc34a29d32", "98": "8c471c7baeaaca54"}
{"0": "ea3f8d8f67782fdc", "1": "cb6ea50bd4e4a5ca", "2": "485914b81d357062", "3": "1f737ca8edb978f2", "4": "56bf12952b0de42b", "5": "ecc33b1dfcb6c0a4", "6": "8bd61518dd267641", "7": "cd6f168abba94fea", "8": "1ecf47531e1d507b", "9": "8abf7998360e0ccc", "10": "7fb7f7cc828b286c", "11": "4a490abd5e503318", "12": "53594b653ad48743", "13": "7e3b558a587a4ebe", "14": "bf75bfc99d4f9e34", "15": "fb002c2979ef551d", "16": "95add6a975c0cb72", "17": "09246ceabd90e01c", "18": "38bb0b185ceed116", "19": "0a373ad2197fd1a6", "20": "aecf2fce44ba49c5", "21": "254ec4cab6c4ac57", "22": "a2b13160223b5a98", "23": "90fac00055070ce2", "24": "f85b5b1634224c86", "25": "46e8db3e6e3f37ea", "26": "487edffbbcedb8cb", "27": "eab427ce9a5219e9", "28": "121c45cc1e571288", "29": "c608f1c6492e1cb1", "30": "73c13793fca09f56", "31": "fbbcfc059751cc6a", "32": "f6bcf56c4589316b", "33": "75f750c5b7d9f63d", "34": "f024ff7942935690", "35": "5a17f8810dae4ff2", "36": "a7d375041779bad4", "37": "cb8f26249485324a", "38": "9a25b1230b5fe649", "39": "fdd95375b4a5ddb3", "41": "d96493a5f110bd4c", "42": "916170b9f5d7346b", "43": "e48804ba2a6c4e86", "44": "852c1bb2446edd9c", "45": "92ab3e5134ed8685", "46": "65718282b3c32109", "47": "e594ecaa8e7d1538", "48": "cf2f2424bc00436f", "49": "1f976711cda158dc", "50": "bbb2b57d72922b16", "51": "eb6a182204867275", "52": "2ec3c8c088568ba9", "53": "68c45056378341a7", "54": "c58d41e8e580fdc6", "55": "b9ba0a5c51b155b1", "56": "8c9a3fc5edff7e44", "57": "f2a40b5f1b29f669", "58": "3ba0641876109aff", "59": "891f59cda3708718", "60": "a505b7de6257a4e8", "62": "1366ae24c7e5897d", "63": "c256b43f75d7809e", "64": "ce0e68dab611f022", "65": "74ae017de0ffd36b", "66": "e042d7fe7351bcb9", "67": "3e126d8deaf6e200", "68": "6b91f3679541de79", "69": "e511846eeba03076", "70": "880a74c6d255e5cc", "72": "c84f196a7bd35861", "73": "2b887bf601ccfb9f", "74": "ae2a154311e1f53a", "75": "69fdd23278518884", "76": "04c475f726d2508f", "77": "979dcc63399620ad", "78": "bf1217db5748fa4e", "79": "c6cfdfe181232ecc", "80": "315325cde1352e98", "81": "37c559741825be74", "82": "2b037735e1f5b0f6", "83": "1284897282eb47a3", "84": "d8bb296741d3d05c", "85": "4bc370be8afd7db1", "87": "e5fa7717989eda80", "88": "8b5ab5232cef3457", "89": "9e3363b80eeceeea", "90": "dd1c246e19a2d032", "91": "83b0fd3b14363e4d", "92": "fced244d93677d90", "93": "435ca504c453b5ca", "94": "70616dc5d4c69039", "95": "59c31f858c7b6970", "96": "4195478d5c528371", "97": "01f68dfc34a29d32", "98": "8c471c7baeaaca54", "99": "da489b69f7f553c4", "100": "adaed54e9cb4adfc", "106": "8bc72c179793e1c2"}
+111 -93
View File
@@ -1,16 +1,16 @@
# Graph Report - juzi (2026-10-12)
## Corpus Check
- 77 files · ~4,389,750 words
- 83 files · ~4,627,050 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
- 1280 nodes · 2677 edges · 92 communities (75 shown, 17 thin omitted)
- Extraction: 93% EXTRACTED · 7% INFERRED · 0% AMBIGUOUS · INFERRED: 181 edges (avg confidence: 0.53)
- 1326 nodes · 2732 edges · 98 communities (78 shown, 20 thin omitted)
- Extraction: 93% EXTRACTED · 7% INFERRED · 0% AMBIGUOUS · INFERRED: 183 edges (avg confidence: 0.54)
- Token cost: 0 input · 0 output
## Graph Freshness
- Built from commit: `fe9623a1`
- Built from commit: `f3e7eac9`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -22,26 +22,26 @@
- customer-feedback-second.js
- n
- .runAndExtendWithFaceDetection
- k
- .toString
- admin.js
- __awaiter
- mn
- FaceLandmarks
- lib/accounts.js
- server.js
- files
- .draw
- extractFaces
- 巨子测肤 · 1'me 在线肌肤测试 — UI 设计规范
- FaceLandmarks68
- k
- 1'me 在线肌肤测试 H5
- head-pose.js
- build_fixtures.py
- AgeGenderNet
- extractAllFacesAndComputeResults
- disposeUnusedWeightTensors
- .predictAgeAndGender
- facepp-skinanalyze(旷视皮肤分析专业版调用技能)
- 巨子测肤 · 1'me 语音播报内容设计文档 V1.0
- mobile-select.iife.min.js
- wi
- .extractWeights
- gen_voice.py
- C
- face-api.js 本地化依赖(h5/vendor/faceapi/)
@@ -53,9 +53,8 @@
- UI 外发版 10.09 图片资源
- FaceLandmark68Net
- UI交互界面调整
- extractFaceTensors
- NeuralNetwork
- export_psd_assets.py
- layer_at
- normalize
- start-local.sh
- PredictAllAgeAndGenderWithFaceAlignmentTask
@@ -71,7 +70,6 @@
- regression.js
- .dispose
- call_skinanalyze.sh
- .extractWeights
- 提交前 Review(2026-10-11)
- e2e-browser.mjs
- account-client.js
@@ -81,10 +79,9 @@
- analyze-timeout.js
- misans/README.md
- .forwardInput
- .toString
- build_report_copy.py
- .detect
- .runAndExtendWithFaceDetections
- TinyYolov2Base
- drawFaceExpressions
- t
- 登录反馈与加载优化(2026-10-12)
- 线上微信登录部署记录
@@ -92,12 +89,21 @@
- wechat-browser.mjs
- 10.09 新版 H5 实施与验收
- 微信登录联调:2026-10-12
- LabeledFaceDescriptors
- test/accounts.js
- 产品推荐规则:肤龄基准与边界调整
- ui-20261012/manifest.json
- 傅艳NEW与项思炼的会话 2026年10月12日.md
- wi
- 客户反馈修改(2026-10-12)
- .runAndExtendWithFaceDetections
- 第三轮反馈:PSD 对齐及本地验收
- login-performance.mjs
- production-loop.mjs
- PredictSingleAgeAndGenderWithFaceAlignmentTask
- PredictSingleFaceExpressionsWithFaceAlignmentTask
- DetectSingleFaceLandmarksTask
- extractAllFacesAndComputeResults
- 第三轮反馈20261012/傅艳NEW与项思炼的会话 2026年10月12日.md
## God Nodes (most connected - your core abstractions)
1. `__awaiter()` - 59 edges
@@ -112,6 +118,8 @@
10. `loadRecords()` - 20 edges
## Surprising Connections (you probably didn't know these)
- `actualLines()` --indirect_call--> `el()` [INFERRED]
h5/test/customer-feedback-third.mjs → h5/js/admin.js
- `loadRecords()` --indirect_call--> `it()` [INFERRED]
h5/js/admin.js → h5/vendor/faceapi/face-api.js
- `bind()` --indirect_call--> `a()` [INFERRED]
@@ -120,17 +128,15 @@
h5/js/app.js → h5/vendor/faceapi/face-api.js
- `vizCompose()` --indirect_call--> `rh()` [INFERRED]
h5/js/app.js → h5/vendor/faceapi/face-api.js
- `vizCompose()` --indirect_call--> `scale()` [INFERRED]
h5/js/app.js → h5/vendor/faceapi/face-api.js
## Import Cycles
- None detected.
## Communities (92 total, 17 thin omitted)
## Communities (98 total, 20 thin omitted)
### Community 0 - "face-api.js"
Cohesion: 0.02
Nodes (43): ce(), cn(), computeReshapedDimensions(), createBrowserEnv(), createFileSystem(), createNodejsEnv(), Dimensions(), dr() (+35 more)
Nodes (37): bgrToRgbTensor(), cn(), computeReshapedDimensions(), createBrowserEnv(), createFileSystem(), createNodejsEnv(), Dimensions(), dr() (+29 more)
### Community 1 - "线上闭环测试(不含真实微信授权)"
Cohesion: 0.25
@@ -138,7 +144,7 @@ Nodes (7): 发现并修复, 可复现命令, 已通过的检查, 线上闭环测
### Community 2 - "app.js"
Cohesion: 0.05
Nodes (81): applyMirror(), armNudge(), beginDetect(), bindBackdropClose(), busyWithFlow(), captureFromVideo(), captureHaptic(), checkStill() (+73 more)
Nodes (82): applyMirror(), armNudge(), beginDetect(), bindBackdropClose(), busyWithFlow(), captureFromVideo(), captureHaptic(), checkStill() (+74 more)
### Community 3 - "skin-score.js"
Cohesion: 0.12
@@ -149,16 +155,16 @@ Cohesion: 0.17
Nodes (10): assert, context, face, fs, geometry, original, path, source (+2 more)
### Community 5 - "n"
Cohesion: 0.17
Nodes (39): a(), ae(), be(), bf(), cf(), d(), de(), drawContour() (+31 more)
Cohesion: 0.15
Nodes (36): a(), ae(), bf(), cf(), d(), drawContour(), dt(), ea() (+28 more)
### Community 6 - ".runAndExtendWithFaceDetection"
Cohesion: 0.33
Nodes (5): allFacesMtcnn(), allFacesSsdMobilenetv1(), allFacesTinyYolov2(), detectAllFaces(), DetectSingleFaceTask()
Cohesion: 0.23
Nodes (6): allFacesMtcnn(), allFacesSsdMobilenetv1(), allFacesTinyYolov2(), DetectAllFaceLandmarksTask(), detectAllFaces(), DetectSingleFaceTask()
### Community 7 - "k"
Cohesion: 0.18
Nodes (11): b(), gn(), k(), kn(), ne(), tt(), wo(), Yt() (+3 more)
### Community 7 - ".toString"
Cohesion: 0.33
Nodes (5): FaceMatch(), la(), pr(), pt(), vt()
### Community 8 - "admin.js"
Cohesion: 0.21
@@ -166,15 +172,15 @@ Nodes (28): ageText(), api(), bind(), closeDetail(), collectFilters(), dimsHtml(
### Community 9 - "__awaiter"
Cohesion: 0.14
Nodes (13): __awaiter(), bufferToImage(), ComposableTask(), fetchImage(), fetchJson(), fetchNetWeights(), fetchOrThrow(), __generator() (+5 more)
Nodes (12): __awaiter(), ComposableTask(), fetchImage(), fetchJson(), fetchNetWeights(), fetchOrThrow(), __generator(), getModelUris() (+4 more)
### Community 10 - "mn"
Cohesion: 0.17
Nodes (11): Lu(), mn(), Point(), Pu(), Uu(), vn(), Vu(), wl() (+3 more)
### Community 10 - "FaceLandmarks"
Cohesion: 0.09
Nodes (8): FaceLandmark68NetBase(), FaceLandmarks(), FaceLandmarks5(), FaceLandmarks68(), getCenterPoint(), minBbox(), Point(), wl()
### Community 11 - "lib/accounts.js"
Cohesion: 0.07
Nodes (34): atomic(), body(), cookie(), cookies(), crypto, fs, json(), login() (+26 more)
Cohesion: 0.17
Nodes (20): atomic(), body(), cookie(), cookies(), crypto, fs, json(), login() (+12 more)
### Community 12 - "server.js"
Cohesion: 0.08
@@ -185,16 +191,16 @@ Cohesion: 0.12
Nodes (15): files, analyze-fail, analyzing, countdown-321, hint-far, hint-front, hint-hold, hint-near (+7 more)
### Community 15 - "extractFaces"
Cohesion: 0.21
Nodes (17): awaitMediaLoaded(), createCanvas(), createCanvasFromMedia(), extractFaces(), extractImagePatches(), getContext2dOrThrow(), getEnv(), getMediaDimensions() (+9 more)
Cohesion: 0.12
Nodes (22): awaitMediaLoaded(), Box(), bufferToImage(), createCanvas(), createCanvasFromMedia(), extractFaces(), extractFaceTensors(), extractImagePatches() (+14 more)
### Community 16 - "巨子测肤 · 1'me 在线肌肤测试 — UI 设计规范"
Cohesion: 0.15
Nodes (12): 1. 基准与尺寸换算, 2. 色彩规范, 3. 字体规范, 4. 组件切图(assets/svg/), 5. 图片素材(assets/images/,共 15 张), 6. 页面清单(design/ 下有整屏 PNG 预览), 7. 目录结构, 8. 还原建议 (+4 more)
### Community 17 - "FaceLandmarks68"
Cohesion: 0.19
Nodes (3): FaceLandmarks5(), FaceLandmarks68(), getCenterPoint()
### Community 17 - "k"
Cohesion: 0.11
Nodes (21): b(), ba(), be(), ca(), da(), fa(), jt(), k() (+13 more)
### Community 18 - "1'me 在线肌肤测试 H5"
Cohesion: 0.13
@@ -208,13 +214,13 @@ Nodes (8): assertPoints(), check(), clamp(), dist(), estimate(), makeFrontal(),
Cohesion: 0.40
Nodes (9): build_case1(), build_case2(), build_truth(), col(), dump(), main(), parse_value(), set_path() (+1 more)
### Community 21 - "AgeGenderNet"
Cohesion: 0.05
Nodes (28): AgeGenderNet(), disposeUnusedWeightTensors(), extractorsFactory$3(), extractorsFactory$5(), extractorsFactory$7(), extractorsFactory$9(), extractParamsFromWeigthMap(), extractParamsFromWeigthMap$1() (+20 more)
### Community 21 - "disposeUnusedWeightTensors"
Cohesion: 0.08
Nodes (24): disposeUnusedWeightTensors(), extractorsFactory$3(), extractorsFactory$5(), extractorsFactory$7(), extractorsFactory$9(), extractParamsFromWeigthMap(), extractParamsFromWeigthMap$1(), extractParamsFromWeigthMap$2() (+16 more)
### Community 22 - "extractAllFacesAndComputeResults"
Cohesion: 0.09
Nodes (12): ComputeAllFaceDescriptorsTask(), ComputeSingleFaceDescriptorTask(), extendWithAge(), extendWithFaceDescriptor(), extendWithFaceExpressions(), extendWithGender(), extractAllFacesAndComputeResults(), extractSingleFaceAndComputeResult() (+4 more)
### Community 22 - ".predictAgeAndGender"
Cohesion: 0.28
Nodes (4): extendWithAge(), extendWithGender(), PredictAllAgeAndGenderTask(), PredictSingleAgeAndGenderTask()
### Community 23 - "facepp-skinanalyze(旷视皮肤分析专业版调用技能)"
Cohesion: 0.20
@@ -228,17 +234,17 @@ Nodes (8): 1. 音频格式约定(已定), 2. 播报清单(14 条), 3. 播放策
Cohesion: 0.20
Nodes (16): _arrayLikeToArray(), _arrayWithHoles(), _arrayWithoutHoles(), _classCallCheck(), _createClass(), _defineProperties(), h(), _iterableToArray() (+8 more)
### Community 26 - "wi"
Cohesion: 0.28
Nodes (9): Ci(), Ei(), Fi(), Ii(), ki(), pe(), ri(), wi() (+1 more)
### Community 26 - ".extractWeights"
Cohesion: 0.05
Nodes (29): AgeGenderNet(), createFaceDetectionNet(), createFaceRecognitionNet(), createMtcnn(), createSsdMobilenetv1(), createTinyFaceDetector(), createTinyYolov2(), extractConvParamsFactory() (+21 more)
### Community 27 - "gen_voice.py"
Cohesion: 0.30
Nodes (11): ndarray, Path, gen_countdown(), main(), normalize_clip(), 倒计时单独按字生成再拼接,避免「三、二、一」整句被读成播报腔、与提示音气质漂移。 与提示音共用同一 speaker + instruct;句间留约…, 裁掉过长首尾静音,保留 ≤150ms 边沿,避免提示显迟钝。, 响度归一 −16 LUFS + 转 MP3 48k CBR mono 22050Hz。 (+3 more)
### Community 28 - "C"
Cohesion: 0.10
Nodes (22): ao(), Bo(), C(), cd(), co(), Do(), eo(), fo() (+14 more)
Cohesion: 0.09
Nodes (31): ao(), C(), cd(), co(), Do(), eo(), fo(), Ft() (+23 more)
### Community 29 - "face-api.js 本地化依赖(h5/vendor/faceapi/)"
Cohesion: 0.29
@@ -253,8 +259,8 @@ Cohesion: 0.60
Nodes (4): main(), 递归缩放 result 内全部坐标:{left,top,width,height} 矩形与 {x,y} 点,与原数据同为整数。, scale_coords(), to_data_url()
### Community 35 - "customer-feedback.js"
Cohesion: 0.11
Nodes (17): alternate, assert, crop, details, excellent, fs, model, modelBefore (+9 more)
Cohesion: 0.06
Nodes (26): alternate, assert, crop, details, excellent, fs, model, modelBefore (+18 more)
### Community 37 - "UI 外发版 10.09 图片资源"
Cohesion: 0.40
@@ -264,16 +270,12 @@ Nodes (4): UI 外发版 10.09 图片资源, 前端素材对应, 文件位置,
Cohesion: 0.40
Nodes (4): 1meAI测肤旷视UI问题反馈, UI交互界面调整, 交互, **设计**
### Community 40 - "extractFaceTensors"
Cohesion: 0.08
Nodes (10): bgrToRgbTensor(), Box(), DetectAllFaceLandmarksTask(), DetectSingleFaceLandmarksTask(), extendWithFaceLandmarks(), extractFaceTensors(), FaceLandmarks(), isTensor3D() (+2 more)
### Community 42 - "export_psd_assets.py"
Cohesion: 0.70
Nodes (4): bounds(), layer_at(), main(), save_image()
### Community 42 - "layer_at"
Cohesion: 0.18
Nodes (11): list, bounds(), layer_at(), main(), save_image(), composite(), main(), sha256() (+3 more)
### Community 43 - "normalize"
Cohesion: 0.07
Cohesion: 0.09
Nodes (27): conv(), conv$1(), convDown(), convLayer(), convLayer$1(), convNoRelu(), convWithBatchNorm(), denseBlock3() (+19 more)
### Community 44 - "start-local.sh"
@@ -285,8 +287,8 @@ Cohesion: 0.38
Nodes (6): assert, check(), missing, raw, SS, UI
### Community 48 - "已修改"
Cohesion: 0.25
Nodes (7): 12 日第二批:明确项修改, 准备捕捉提醒, 字重, 已修改, 拍照展示, 首页高清批注, 验证与状态
Cohesion: 0.22
Nodes (8): 12 日第二批:明确项修改, 公网部署与复核(2026-10-12,北京时间), 准备捕捉提醒, 字重, 已修改, 拍照展示, 首页高清批注, 验证与状态
### Community 53 - "护理建议(全量文本,按需求摘抄)"
Cohesion: 0.10
@@ -297,8 +299,8 @@ Cohesion: 0.11
Nodes (17): 1. 结论和依据, 2. 统一比较口径, 3. 逐页差异和调整内容, 4. 报告数据如何接到新 UI, 5. 登录与“我的报告”的真实能力缺口, 6. 原稿中需要整理的内容, 7. 实施顺序与交付物, 8. 验收定义 (+9 more)
### Community 55 - "i"
Cohesion: 0.08
Nodes (31): ba(), bn(), ca(), cl(), da(), dn(), ee(), et() (+23 more)
Cohesion: 0.11
Nodes (20): bn(), dn(), ee(), et(), fn(), i(), je(), ln() (+12 more)
### Community 56 - "report-ui.js"
Cohesion: 0.50
@@ -309,12 +311,8 @@ Cohesion: 0.60
Nodes (5): diffCtx(), loadJSON(), main(), okNum(), okStr()
### Community 58 - ".dispose"
Cohesion: 0.21
Nodes (9): FaceRecognitionNet(), getSizesForScale(), nonMaxSuppression(), normalize$1(), rescaleAndNormalize(), scale(), stage1(), stage2() (+1 more)
### Community 61 - ".extractWeights"
Cohesion: 0.09
Nodes (26): createFaceDetectionNet(), createFaceRecognitionNet(), createMtcnn(), createSsdMobilenetv1(), createTinyFaceDetector(), createTinyYolov2(), extractConvParamsFactory(), extractFCParamsFactory() (+18 more)
Cohesion: 0.14
Nodes (13): extendWithFaceLandmarks(), getSizesForScale(), iou(), nonMaxSuppression(), nonMaxSuppression$1(), normalize$1(), ObjectDetection(), rescaleAndNormalize() (+5 more)
### Community 62 - "提交前 Review(2026-10-11)"
Cohesion: 0.40
@@ -344,21 +342,13 @@ Nodes (7): assert, end, fs, path, source, start, vm
Cohesion: 0.22
Nodes (9): boxPredictionLayer(), decodeBoxesLayer(), depthwiseConvLayer(), getCenterCoordinatesAndSizesLayer(), getStridesForLayerIdx(), mobileNetV1(), outputLayer(), pointwiseConvLayer() (+1 more)
### Community 71 - ".toString"
Cohesion: 0.33
Nodes (5): FaceMatch(), la(), pr(), pt(), vt()
### Community 76 - ".detect"
Cohesion: 0.15
Nodes (6): iou(), NetInput(), nonMaxSuppression$1(), SsdMobilenetv1(), TinyYolov2(), TinyYolov2Base()
### Community 77 - ".runAndExtendWithFaceDetections"
Cohesion: 0.15
Nodes (11): DetectAllFacesTask(), DrawBox(), drawDetections(), drawFaceExpressions(), DrawFaceLandmarks(), extendWithFaceDetection(), FaceExpressions(), isWithFaceDetection() (+3 more)
### Community 77 - "drawFaceExpressions"
Cohesion: 0.22
Nodes (6): DrawBox(), drawDetections(), drawFaceExpressions(), DrawFaceLandmarks(), FaceExpressions(), isWithFaceExpressions()
### Community 78 - "t"
Cohesion: 0.14
Nodes (14): bi(), Ef(), er(), ia(), Ie(), j(), Kt(), Mf() (+6 more)
Cohesion: 0.10
Nodes (26): bi(), Bo(), ce(), cl(), de(), e(), Ef(), er() (+18 more)
### Community 79 - "登录反馈与加载优化(2026-10-12)"
Cohesion: 0.25
@@ -384,28 +374,56 @@ Nodes (5): 10.09 新版 H5 实施与验收, 按确认项实现, 文档未定义
Cohesion: 0.33
Nodes (6): 后续真机确认与体验优化, 微信登录联调:2026-10-12, 本轮修正, 白名单与凭据, 真实微信验收与排查, 自动验证
### Community 85 - "test/accounts.js"
Cohesion: 0.22
Nodes (9): assert, create, fs, http, os, path, ReportUI, SkinScore (+1 more)
### Community 87 - "产品推荐规则:肤龄基准与边界调整"
Cohesion: 0.33
Nodes (6): 产品推荐规则:肤龄基准与边界调整, 决策顺序, 后台与前端一致性, 实施与验证范围, 已明确的要求, 已确认的三个条件
### Community 88 - "ui-20261012/manifest.json"
Cohesion: 0.22
Nodes (8): assets, design_scale, document_size, native_header_px, shape_metrics, source, source_sha256, text_styles
### Community 91 - "wi"
Cohesion: 0.28
Nodes (9): Ci(), Ei(), Fi(), Ii(), ki(), pe(), ri(), wi() (+1 more)
### Community 92 - "客户反馈修改(2026-10-12)"
Cohesion: 0.33
Nodes (5): 公网部署与复测, 客户反馈修改(2026-10-12), 皱纹数据说明, 逐项处理, 验证
### Community 93 - ".runAndExtendWithFaceDetections"
Cohesion: 0.33
Nodes (5): DetectAllFacesTask(), extendWithFaceDetection(), isWithFaceDetection(), isWithFaceLandmarks(), resizeResults()
### Community 94 - "第三轮反馈:PSD 对齐及本地验收"
Cohesion: 0.40
Nodes (4): 原稿与导出可追溯性, 已完成, 本地验证, 第三轮反馈:PSD 对齐及本地验收
### Community 96 - "production-loop.mjs"
Cohesion: 0.50
Nodes (3): artifacts, errors, samples
### Community 100 - "extractAllFacesAndComputeResults"
Cohesion: 0.11
Nodes (9): ComputeAllFaceDescriptorsTask(), ComputeSingleFaceDescriptorTask(), extendWithFaceDescriptor(), extendWithFaceExpressions(), extractAllFacesAndComputeResults(), extractSingleFaceAndComputeResult(), FaceRecognitionNet(), PredictAllFaceExpressionsTask() (+1 more)
## Knowledge Gaps
- **236 isolated node(s):** `source`, `document_size`, `pages`, `assets`, `layers` (+231 more)
- **256 isolated node(s):** `source`, `document_size`, `pages`, `assets`, `layers` (+251 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **17 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
- **20 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions
_Questions this graph is uniquely positioned to answer:_
- **Why does `r()` connect `n` to `face-api.js`, `.toString`, `mn`, `normalize`, `server.js`, `t`, `i`, `C`?**
_High betweenness centrality (0.050) - this node is a cross-community bridge._
- **Why does `k()` connect `k` to `face-api.js`, `app.js`, `n`, `lib/accounts.js`, `t`, `i`?**
_High betweenness centrality (0.043) - this node is a cross-community bridge._
- **Why does `renderReport()` connect `app.js` to `t`, `k`?**
_High betweenness centrality (0.041) - this node is a cross-community bridge._
- **Why does `k()` connect `k` to `face-api.js`, `app.js`, `n`, `lib/accounts.js`, `t`, `C`?**
_High betweenness centrality (0.061) - this node is a cross-community bridge._
- **Why does `renderReport()` connect `app.js` to `k`, `t`?**
_High betweenness centrality (0.048) - this node is a cross-community bridge._
- **Why does `rate()` connect `lib/accounts.js` to `k`?**
_High betweenness centrality (0.048) - this node is a cross-community bridge._
- **Are the 24 inferred relationships involving `n()` (e.g. with `newRecordId()` and `ae()`) actually correct?**
_`n()` has 24 INFERRED edges - model-reasoned connections that need verification._
- **Are the 27 inferred relationships involving `r()` (e.g. with `handleExport()` and `handleRecordsQuery()`) actually correct?**
@@ -413,4 +431,4 @@ _Questions this graph is uniquely positioned to answer:_
- **Are the 7 inferred relationships involving `t()` (e.g. with `renderReport()` and `e()`) actually correct?**
_`t()` has 7 INFERRED edges - model-reasoned connections that need verification._
- **What connects `source`, `document_size`, `pages` to the rest of the system?**
_236 weakly-connected nodes found - possible documentation gaps or missing edges._
_256 weakly-connected nodes found - possible documentation gaps or missing edges._
File diff suppressed because one or more lines are too long
+1961 -816
View File
File diff suppressed because it is too large Load Diff
+124 -14
View File
@@ -40,8 +40,8 @@
"semantic_hash": ""
},
"h5/js/app.js": {
"mtime": 1791786351.8390813,
"ast_hash": "7bfa025f6ac5b97e62075cd762a1eee0",
"mtime": 1791793504.3911867,
"ast_hash": "bedf52ab54b171d46f36b14e40c942a9",
"semantic_hash": ""
},
"h5/js/head-pose.js": {
@@ -140,8 +140,8 @@
"semantic_hash": ""
},
"h5/index.html": {
"mtime": 1791786653.9070883,
"ast_hash": "39e41fec33bce3bf22520b9a3128b2ec",
"mtime": 1791792928.367181,
"ast_hash": "f55cc02cf612e5d2526b3ef61ebb4d54",
"semantic_hash": ""
},
"h5/vendor/faceapi/README.md": {
@@ -835,8 +835,8 @@
"semantic_hash": ""
},
"tools/export_psd_assets.py": {
"mtime": 1791642102.9273047,
"ast_hash": "7cee68c3db2cd4a52b58b8e380e2fe8d",
"mtime": 1791792360.291166,
"ast_hash": "9a30784b1e310d7079127af2d5090e85",
"semantic_hash": ""
},
"MP_verify_kpx234XimQGtFPo6.txt": {
@@ -1245,8 +1245,8 @@
"semantic_hash": ""
},
"h5/js/report-ui.js": {
"mtime": 1791779513.7549675,
"ast_hash": "100c3438318d0f7a8048c74ef3455252",
"mtime": 1791792515.5711725,
"ast_hash": "ba1192ff1f00a5e1ac4712e470124d0b",
"semantic_hash": ""
},
"h5/lib/accounts.js": {
@@ -1260,8 +1260,8 @@
"semantic_hash": ""
},
"h5/test/report-persistence.mjs": {
"mtime": 1791773638.010959,
"ast_hash": "9876c659bb7c3513f871d576f0024e72",
"mtime": 1791793231.819183,
"ast_hash": "24636f96fd5cd576cde11ef9e911f3ff",
"semantic_hash": ""
},
"h5/test/ui-20261009.mjs": {
@@ -1680,13 +1680,123 @@
"semantic_hash": ""
},
"h5/test/customer-feedback-second.mjs": {
"mtime": 1791787113.9230983,
"ast_hash": "2ee0f030571c4a0f6b897a8f9bd4b15d",
"mtime": 1791792650.5151644,
"ast_hash": "2e340ce46b90c142341cb1f9636cb2e7",
"semantic_hash": ""
},
"docs/\u5ba2\u6237\u53cd\u9988\u7b2c\u4e8c\u6279\u4fee\u6539-2026-10-12.md": {
"mtime": 1791786653.9070883,
"ast_hash": "0cb17a2e1c909816642fa31d3a416f1e",
"mtime": 1791787225.4750996,
"ast_hash": "fc8acdbebaa37e806d6f21b24c9c9b90",
"semantic_hash": ""
},
"design/ui-20261012/manifest.json": {
"mtime": 1791793758.3191924,
"ast_hash": "0f1746d6457878cd4ac5f5c4019d7524",
"semantic_hash": ""
},
"h5/test/customer-feedback-third.mjs": {
"mtime": 1791793748.2471912,
"ast_hash": "60694d94b13194da8aa13f796c8be196",
"semantic_hash": ""
},
"tools/export_third_feedback_assets.py": {
"mtime": 1791793748.2471912,
"ast_hash": "d33276ea29ab7592e99cf5dc28113065",
"semantic_hash": ""
},
"tools/test_export_psd_assets.py": {
"mtime": 1791793090.1911738,
"ast_hash": "47ab953b1fa980034d3822257b4173f1",
"semantic_hash": ""
},
"new_feedback/\u7b2c\u4e09\u8f6e\u53cd\u998820261012/\u5085\u8273NEW\u4e0e\u9879\u601d\u70bc\u7684\u4f1a\u8bdd 2026\u5e7410\u670812\u65e5.md": {
"mtime": 1791790056.0,
"ast_hash": "c916f80fdb198de25ee09f0f1d1192cf",
"semantic_hash": ""
},
"design/ui-20261012/page-0.webp": {
"mtime": 1791793754.4191914,
"ast_hash": "35fd7cc24654f4aa29de6633e4fbf461",
"semantic_hash": ""
},
"design/ui-20261012/page-1.webp": {
"mtime": 1791793755.7511919,
"ast_hash": "e975a47848bbdae8d58b9d5c1ae564e2",
"semantic_hash": ""
},
"design/ui-20261012/page-4.webp": {
"mtime": 1791793757.1511922,
"ast_hash": "59a5db7c76b4674dc6cf70c82c4862d7",
"semantic_hash": ""
},
"design/ui-20261012/page-9.webp": {
"mtime": 1791793758.3191924,
"ast_hash": "5f1e8bf0a41e26e135cd0e5f65abe51e",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/brand-lockup.png": {
"mtime": 1791793750.415191,
"ast_hash": "558555cc40714b849da78a5179bfa7f0",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/button-history-label.png": {
"mtime": 1791793750.4231908,
"ast_hash": "a9d03f5781d34b6372cfa7c520987c51",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/button-start-label.png": {
"mtime": 1791793750.419191,
"ast_hash": "5c23895cde756eb5d5389858394d4315",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/product-25.webp": {
"mtime": 1791793750.747191,
"ast_hash": "e7c712741ad00090e432abf74679a71b",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/product-35.webp": {
"mtime": 1791793751.0871909,
"ast_hash": "cb4bc6170163813432e2420abeda87e0",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/product-50.webp": {
"mtime": 1791793751.4831908,
"ast_hash": "5a9c0bde70efd5f50022a48def483580",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/scan-waiting.webp": {
"mtime": 1791793752.751191,
"ast_hash": "f389fa035ff64a894a7e2242c9e0341b",
"semantic_hash": ""
},
"h5/assets/img/ui-20261012/splash-slogan.png": {
"mtime": 1791793750.399191,
"ast_hash": "5730cf293b59cf7c8c49ccfa5bcc6699",
"semantic_hash": ""
},
"new_feedback/\u7b2c\u4e09\u8f6e\u53cd\u998820261012/\u56fe\u7247\u548c\u9644\u4ef6/exported_img_v3_0216d_0fc10635-b27d-4d3e-b92e-ff01cc4dfa1g.png": {
"mtime": 1791790056.0,
"ast_hash": "cad3834df44b1d38feb172955030e96c",
"semantic_hash": ""
},
"new_feedback/\u7b2c\u4e09\u8f6e\u53cd\u998820261012/\u56fe\u7247\u548c\u9644\u4ef6/exported_img_v3_0216d_2586d3cb-ffdb-4792-893b-cc831952a2cg.png": {
"mtime": 1791790056.0,
"ast_hash": "8cf8984413f91c3ad3d454e1723edfb3",
"semantic_hash": ""
},
"new_feedback/\u7b2c\u4e09\u8f6e\u53cd\u998820261012/\u56fe\u7247\u548c\u9644\u4ef6/exported_img_v3_0216d_69cd3338-bd06-47cb-979c-375e1cb5028g.png": {
"mtime": 1791790056.0,
"ast_hash": "88614b7df04765e246a550c641da1479",
"semantic_hash": ""
},
"new_feedback/\u7b2c\u4e09\u8f6e\u53cd\u998820261012/\u56fe\u7247\u548c\u9644\u4ef6/exported_img_v3_0216d_bd67ae20-e4ad-4ecd-8b0c-6ca58494d57g.png": {
"mtime": 1791790056.0,
"ast_hash": "d2c6770ba56a6f33b67aa3cb9b609229",
"semantic_hash": ""
},
"docs/\u5ba2\u6237\u53cd\u9988\u7b2c\u4e09\u8f6e\u4fee\u6539-2026-10-12.md": {
"mtime": 1791793748.2471912,
"ast_hash": "ae9f2b73434be30167f778fa974d950b",
"semantic_hash": ""
}
}