12 KiB
Graph Report - juzi (2026-09-28)
Corpus Check
- 31 files · ~1,845,525 words
- Verdict: corpus is large enough that graph structure adds value.
Summary
- 898 nodes · 2113 edges · 72 communities (42 shown, 30 thin omitted)
- Extraction: 92% EXTRACTED · 8% INFERRED · 0% AMBIGUOUS · INFERRED: 168 edges (avg confidence: 0.52)
- Token cost: 0 input · 0 output
Graph Freshness
- Built from commit:
4e3d915b - Run
git rev-parse HEADand compare to check if the graph is stale. - Run
graphify update .after code changes (no API cost).
Community Hubs (Navigation)
- face-api.js
- n
- app.js
- skin-score.js
- .extractWeights
- normalize
- .runAndExtendWithFaceDetections
- FaceLandmarks
- disposeUnusedWeightTensors
- __awaiter
- iou
- FaceProcessor
- server.js
- files
- extractAllFacesAndComputeResults
- .run
- 巨子测肤 · 1'me 在线肌肤测试 — UI 设计规范
- extractFaces
- 1'me 在线肌肤测试 H5
- head-pose.js
- build_fixtures.py
- .forwardInput
- .loadFromDisk
- facepp-skinanalyze(旷视皮肤分析专业版调用技能)
- 巨子测肤 · 1'me 语音播报内容设计文档 V1.0
- Box
- wi
- gen_voice.py
- initialize
- face-api.js 本地化依赖(h5/vendor/faceapi/)
- regression.js
- isValidNumber
- FaceMatcher
- build-fixture.py
- DetectSingleFaceLandmarksTask
- ao
- tt
- TinyYolov2
- cn
- ComputeAllFaceDescriptorsTask
- ComputeSingleFaceDescriptorTask
- dr
- FaceLandmark68Net
- rescaleAndNormalize
- PredictAllAgeAndGenderWithFaceAlignmentTask
- PredictAllFaceExpressionsWithFaceAlignmentTask
- PredictSingleAgeAndGenderWithFaceAlignmentTask
- PredictSingleFaceExpressionsWithFaceAlignmentTask
- Yo
- call_skinanalyze_3view.sh
- .draw
- createSsdMobilenetv1
- FaceDetection
- ff
- ge
- sa
- po
- .dispose
- call_skinanalyze.sh
- extractWeightsFactory
- NeuralNetwork
- e2e-browser.mjs
- AgeGenderNet
- extractParams$4
- FaceExpressionNet
- extractParams$5
- PredictAllAgeAndGenderTask
- PredictAllFaceExpressionsTask
- PredictSingleAgeAndGenderTask
- PredictSingleFaceExpressionsTask
God Nodes (most connected - your core abstractions)
__awaiter()- 59 edges__generator()- 59 edgesn()- 36 edgest()- 33 edgesi()- 33 edgesr()- 32 edgesC()- 32 edgestoNetInput()- 27 edgese()- 22 edgesf()- 20 edges
Surprising Connections (you probably didn't know these)
detectFrame()--indirect_call-->d()[INFERRED] h5/js/app.js → h5/vendor/faceapi/face-api.jsvizCompose()--indirect_call-->h()[INFERRED] h5/js/app.js → h5/vendor/faceapi/face-api.jsvizCompose()--indirect_call-->rh()[INFERRED] h5/js/app.js → h5/vendor/faceapi/face-api.jsvizCompose()--indirect_call-->w()[INFERRED] h5/js/app.js → h5/vendor/faceapi/face-api.jsrenderReport()--indirect_call-->t()[INFERRED] h5/js/app.js → h5/vendor/faceapi/face-api.js
Import Cycles
- None detected.
Communities (72 total, 30 thin omitted)
Community 0 - "face-api.js"
Cohesion: 0.02 Nodes (38): ca(), ce(), computeReshapedDimensions(), dn(), ee(), er(), et(), FaceMatch() (+30 more)
Community 1 - "n"
Cohesion: 0.06 Nodes (94): a(), ae(), b(), ba(), be(), bf(), bi(), bn() (+86 more)
Community 2 - "app.js"
Cohesion: 0.07 Nodes (69): afterCurrent(), armNudge(), beginCountdown(), beginDetect(), bindBackdropClose(), busyWithFlow(), cancelCountdown(), captureFromVideo() (+61 more)
Community 3 - "skin-score.js"
Cohesion: 0.12 Nodes (44): acneGrade(), buildViewModel(), calcAcne(), calcContour(), calcSens(), calcSmooth(), calcTone(), calcWrinkles() (+36 more)
Community 4 - ".extractWeights"
Cohesion: 0.20 Nodes (8): createFaceRecognitionNet(), createMtcnn(), createTinyFaceDetector(), createTinyYolov2(), extractFCParamsFactory(), extractorsFactory$8(), extractParams$3(), extractParams$7()
Community 5 - "normalize"
Cohesion: 0.07 Nodes (29): conv(), conv$1(), convDown(), convLayer(), convLayer$1(), convNoRelu(), convWithBatchNorm(), denseBlock3() (+21 more)
Community 6 - ".runAndExtendWithFaceDetections"
Cohesion: 0.15 Nodes (11): DetectAllFacesTask(), DrawBox(), drawDetections(), drawFaceExpressions(), DrawFaceLandmarks(), extendWithFaceDetection(), FaceExpressions(), isWithFaceDetection() (+3 more)
Community 7 - "FaceLandmarks"
Cohesion: 0.07 Nodes (13): extendWithFaceLandmarks(), FaceLandmark68NetBase(), FaceLandmarks(), FaceLandmarks5(), FaceLandmarks68(), getCenterPoint(), isDimensions(), minBbox() (+5 more)
Community 8 - "disposeUnusedWeightTensors"
Cohesion: 0.10 Nodes (23): disposeUnusedWeightTensors(), extractorsFactory$3(), extractorsFactory$5(), extractorsFactory$7(), extractorsFactory$9(), extractParamsFromWeigthMap(), extractParamsFromWeigthMap$1(), extractParamsFromWeigthMap$2() (+15 more)
Community 9 - "__awaiter"
Cohesion: 0.18 Nodes (10): __awaiter(), bufferToImage(), fetchImage(), fetchJson(), fetchNetWeights(), fetchOrThrow(), __generator(), loadWeightMap() (+2 more)
Community 11 - "FaceProcessor"
Cohesion: 0.22 Nodes (3): extractParams$1(), FaceLandmark68TinyNet(), FaceProcessor()
Community 12 - "server.js"
Cohesion: 0.14 Nodes (16): callFacepp(), CRED, DATA_DIR, ERR_MSG, fs, handleAnalyze(), http, isUsableB64() (+8 more)
Community 13 - "files"
Cohesion: 0.12 Nodes (15): files, analyze-fail, analyzing, countdown-321, hint-far, hint-front, hint-hold, hint-near (+7 more)
Community 14 - "extractAllFacesAndComputeResults"
Cohesion: 0.21 Nodes (6): extendWithAge(), extendWithFaceDescriptor(), extendWithFaceExpressions(), extendWithGender(), extractAllFacesAndComputeResults(), extractSingleFaceAndComputeResult()
Community 15 - ".run"
Cohesion: 0.21 Nodes (6): allFacesMtcnn(), allFacesSsdMobilenetv1(), allFacesTinyYolov2(), DetectAllFaceLandmarksTask(), detectAllFaces(), DetectSingleFaceTask()
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 - "extractFaces"
Cohesion: 0.18 Nodes (18): awaitMediaLoaded(), createCanvas(), createCanvasFromMedia(), extractFaces(), extractFaceTensors(), extractImagePatches(), getContext2dOrThrow(), getEnv() (+10 more)
Community 18 - "1'me 在线肌肤测试 H5"
Cohesion: 0.18 Nodes (10): 1'me 在线肌肤测试 H5, Windows 本机部署(提测用), 密钥配置, 已知占位清单, 技术说明, 拍照交互(引导式自动三连拍), 本地运行, 检测流程与评分渲染 (+2 more)
Community 19 - "head-pose.js"
Cohesion: 0.33 Nodes (8): assertPoints(), check(), clamp(), dist(), estimate(), makeFrontal(), makeSide(), midpoint()
Community 20 - "build_fixtures.py"
Cohesion: 0.40 Nodes (9): build_case1(), build_case2(), build_truth(), col(), dump(), main(), parse_value(), set_path() (+1 more)
Community 21 - ".forwardInput"
Cohesion: 0.22 Nodes (9): boxPredictionLayer(), decodeBoxesLayer(), depthwiseConvLayer(), getCenterCoordinatesAndSizesLayer(), getStridesForLayerIdx(), mobileNetV1(), outputLayer(), pointwiseConvLayer() (+1 more)
Community 22 - ".loadFromDisk"
Cohesion: 0.25 Nodes (3): ComposableTask(), getModelUris(), TinyFaceDetector()
Community 23 - "facepp-skinanalyze(旷视皮肤分析专业版调用技能)"
Cohesion: 0.20 Nodes (9): 1. 凭据(统一管理), 2. 标准调用模板(全可选参数,每次都带), 2b. 三视图调用模板(正脸 + 双侧脸 → 下颌线), 3.1 本轮踩过的坑(务必避复), 3. 三维度 × 6 分类 P/S 计算(2026-09-26 生效,取代旧六维), 4. 产品分组公式, 5. Excel 报告铁律(必须遵守), 6. 其他 Agent 调用约定 (+1 more)
Community 24 - "巨子测肤 · 1'me 语音播报内容设计文档 V1.0"
Cohesion: 0.22 Nodes (8): 1. 音频格式约定(已定), 2. 播报清单(14 条), 3. 播放策略(前端已实现侧约定), 4. 生成验收, A. 步骤引导(进入每个拍照步骤时播,与屏幕步骤文案一致), B. 姿态提示(实时检测不通过时播,同一提示 4 秒内不重复), C. 拍摄与流程, 巨子测肤 · 1'me 语音播报内容设计文档 V1.0
Community 26 - "wi"
Cohesion: 0.28 Nodes (9): Ci(), Ei(), Fi(), Ii(), ki(), pe(), ri(), wi() (+1 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 - "initialize"
Cohesion: 0.22 Nodes (9): createBrowserEnv(), createFileSystem(), createNodejsEnv(), initialize(), isBrowser(), isNodejs(), monkeyPatch(), resolveInput() (+1 more)
Community 29 - "face-api.js 本地化依赖(h5/vendor/faceapi/)"
Cohesion: 0.29 Nodes (6): face-api.js 本地化依赖(h5/vendor/faceapi/), 为什么本地化, 文件清单与体积, 来源与版本, 用法, 许可证
Community 30 - "regression.js"
Cohesion: 0.60 Nodes (5): diffCtx(), loadJSON(), main(), okNum(), okStr()
Community 31 - "isValidNumber"
Cohesion: 0.33 Nodes (5): bgrToRgbTensor(), Dimensions(), isValidNumber(), isValidProbablitiy(), isWithGender()
Community 33 - "build-fixture.py"
Cohesion: 0.60 Nodes (4): main(), 递归缩放 result 内全部坐标:{left,top,width,height} 矩形与 {x,y} 点,与原数据同为整数。, scale_coords(), to_data_url()
Community 36 - "ao"
Cohesion: 0.40 Nodes (5): ao(), Do(), io(), so(), To()
Community 37 - "tt"
Cohesion: 0.50 Nodes (4): kn(), tt(), wo(), z()
Community 39 - "cn"
Cohesion: 0.67 Nodes (3): cn(), en(), yn()
Community 42 - "dr"
Cohesion: 0.50 Nodes (4): dr(), na(), nt(), ta()
Community 44 - "rescaleAndNormalize"
Cohesion: 0.67 Nodes (3): getSizesForScale(), normalize$1(), rescaleAndNormalize()
Community 49 - "Yo"
Cohesion: 0.67 Nodes (3): qo(), Xo(), Yo()
Community 58 - ".dispose"
Cohesion: 0.20 Nodes (8): extractBoundingBoxes(), nonMaxSuppression(), scale(), SsdMobilenetv1(), stage1(), stage2(), stage3(), TinyYolov2Base()
Community 61 - "extractWeightsFactory"
Cohesion: 0.22 Nodes (10): extractConvParamsFactory(), extractorsFactory(), extractorsFactory$1(), extractorsFactory$6(), extractParams(), extractParams$2(), extractParams$6(), extractParamsTiny() (+2 more)
Community 63 - "e2e-browser.mjs"
Cohesion: 0.29 Nodes (4): EXPECTED, fails, pageErrors, pwRoot
Knowledge Gaps
- 63 isolated node(s):
step1-front,step2-leftface,step3-rightface,hint-noface,hint-near(+58 more) These have ≤1 connection - possible missing edges or undocumented components. - 30 thin communities (<3 nodes) omitted from report — run
graphify queryto explore isolated nodes.
Suggested Questions
Questions this graph is uniquely positioned to answer:
- Why does
val()connectskin-score.jstoBox? High betweenness centrality (0.083) - this node is a cross-community bridge. - Why does
Box()connectBoxtoface-api.js,isValidNumber,FaceLandmarks? High betweenness centrality (0.058) - this node is a cross-community bridge. - Why does
vizCompose()connectapp.jston? High betweenness centrality (0.057) - this node is a cross-community bridge. - Are the 23 inferred relationships involving
n()(e.g. withae()andbe()) actually correct?n()has 23 INFERRED edges - model-reasoned connections that need verification. - Are the 7 inferred relationships involving
t()(e.g. withrenderReport()ande()) actually correct?t()has 7 INFERRED edges - model-reasoned connections that need verification. - Are the 9 inferred relationships involving
i()(e.g. withda()andf()) actually correct?i()has 9 INFERRED edges - model-reasoned connections that need verification. - What connects
step1-front,step2-leftface,step3-rightfaceto the rest of the system? 63 weakly-connected nodes found - possible documentation gaps or missing edges.