Skip to content

Commit 2a32b96

Browse files
committed
fix: verify fixrisk issues and sync multi-platform sidecar artifacts
1 parent a21f4ec commit 2a32b96

21 files changed

Lines changed: 1486 additions & 1099 deletions

.gitattributes

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
*.xml text eol=lf
2424
*.gitignore text eol=lf
2525
*.gitattributes text eol=lf
26-
2726
*.png binary
2827
*.jpg binary
2928
*.jpeg binary
@@ -44,9 +43,10 @@
4443
*.aab binary
4544
*.keystore binary
4645
*.jks binary
47-
4846
src/frontend/graph_data.json filter=lfs diff=lfs merge=lfs -text
4947
src/frontend/data.js filter=lfs diff=lfs merge=lfs -text
5048
src-tauri/bin/node-x86_64-pc-windows-msvc.exe filter=lfs diff=lfs merge=lfs -text
5149
src-tauri/bin/server-x86_64-pc-windows-msvc.exe filter=lfs diff=lfs merge=lfs -text
5250
src-tauri/bin/godot-x86_64-pc-windows-msvc.exe filter=lfs diff=lfs merge=lfs -text
51+
src-tauri/bin/server-x86_64-unknown-linux-gnu filter=lfs diff=lfs merge=lfs -text
52+
src-tauri/bin/server-aarch64-apple-darwin filter=lfs diff=lfs merge=lfs -text

.github/workflows/migration-gates.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ jobs:
2626
command: npm run test:tauri
2727
- suite: mobile-pipeline-contract-suite
2828
command: npm run test:mobile:contracts
29+
- suite: sidecar-signature-policy-contract-suite
30+
command: npm run verify:sidecar:signatures -- --contract-only
2931

3032
steps:
3133
- name: Checkout repository

.github/workflows/npm-publish.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ jobs:
3434
- name: Enforce strict wasm parity gates
3535
run: npm run test:wasm:parity:gates
3636

37+
- name: Verify sidecar signing gate contract
38+
run: npm run verify:sidecar:signatures -- --contract-only
39+
3740
- name: Run tests
3841
run: npm test
3942

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
{
2+
"generatedAt": "2026-03-11T10:46:50.753Z",
3+
"source": [
4+
"docs/en/fixrisk_TODO.md",
5+
"docs/zh/fixrisk_TODO.md"
6+
],
7+
"issues": [
8+
{
9+
"id": "FR-001",
10+
"status": "closed-code",
11+
"verification": [
12+
"src/runtime.spool.policy.contract.test.ts passed"
13+
]
14+
},
15+
{
16+
"id": "FR-002",
17+
"status": "closed-code",
18+
"verification": [
19+
"src/pkg.sidecar.contract.test.ts passed",
20+
"package.json only keeps @yao-pkg/pkg in devDependencies"
21+
]
22+
},
23+
{
24+
"id": "FR-003",
25+
"status": "closed-code",
26+
"verification": [
27+
"src/mobile.pipeline.test.ts passed",
28+
"capacitor.config.ts loopback policy present"
29+
]
30+
},
31+
{
32+
"id": "FR-004",
33+
"status": "closed-code",
34+
"verification": [
35+
"src/pkg.snapshot.safety.contract.test.ts passed"
36+
]
37+
},
38+
{
39+
"id": "FR-005",
40+
"status": "closed-code",
41+
"verification": [
42+
"src/runtime.heap.policy.contract.test.ts passed"
43+
]
44+
},
45+
{
46+
"id": "FR-006",
47+
"status": "closed-policy-gate",
48+
"verification": [
49+
"src/sidecar.signature.contract.test.ts passed",
50+
"node scripts/verify-sidecar-signatures.js --contract-only passed"
51+
]
52+
},
53+
{
54+
"id": "FR-007",
55+
"status": "closed-code",
56+
"verification": [
57+
"src/graph.accessibility.contract.test.ts passed"
58+
]
59+
},
60+
{
61+
"id": "FR-008",
62+
"status": "closed-code",
63+
"verification": [
64+
"src/privacy.manifest.contract.test.ts passed",
65+
"node scripts/verify-privacy-manifest.js passed"
66+
]
67+
},
68+
{
69+
"id": "FR-009",
70+
"status": "tooling-closed-ops-pending",
71+
"verification": [
72+
"src/capacitor.evidence.contract.test.ts passed",
73+
"strict verifier currently fails due missing docs/mobile-evidence on this machine"
74+
]
75+
},
76+
{
77+
"id": "FR-010",
78+
"status": "closed-pipeline",
79+
"verification": [
80+
"workflow grep confirms actions/checkout@v5 + actions/setup-node@v5 + FORCE_JAVASCRIPT_ACTIONS_TO_NODE24"
81+
]
82+
}
83+
],
84+
"overall": {
85+
"allCodeLevelIssuesClosed": true,
86+
"remainingOperationalBlocker": "FR-009 physical large-graph device evidence capture"
87+
}
88+
}
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
{
2+
"generatedAt": "2026-03-11T11:32:45.182Z",
3+
"projectVersion": "1.3.0",
4+
"platforms": {
5+
"web": {
6+
"buildStatus": "success",
7+
"artifact": {
8+
"path": "dist/src/backend/wasm/noteconnection_compute.wasm",
9+
"exists": true,
10+
"sizeBytes": 208751,
11+
"mtime": "2026-03-10T11:04:00.254Z",
12+
"sha256": "c89d7c6980ac00c6360adf6aa6b3c89133eeae4b7ec2aab2296982b5367f9a28"
13+
}
14+
},
15+
"sidecar_windows": {
16+
"buildStatus": "success",
17+
"artifact": {
18+
"path": "src-tauri/bin/server-x86_64-pc-windows-msvc.exe",
19+
"exists": true,
20+
"sizeBytes": 91006249,
21+
"mtime": "2026-03-11T10:29:04.431Z",
22+
"sha256": "4dc1984124d77b34ce58adb71992ee6583bb188cc2acb032124228e5f36940bd"
23+
}
24+
},
25+
"sidecar_linux": {
26+
"buildStatus": "success",
27+
"artifact": {
28+
"path": "src-tauri/bin/server-x86_64-unknown-linux-gnu",
29+
"exists": true,
30+
"sizeBytes": 107806520,
31+
"mtime": "2026-03-11T10:16:56.501Z",
32+
"sha256": "41dea912149bebfbe1bc425154241f40137796f16dc8259566a07886ccf26433"
33+
}
34+
},
35+
"sidecar_macos_arm64": {
36+
"buildStatus": "success-with-signing-warning",
37+
"artifact": {
38+
"path": "src-tauri/bin/server-aarch64-apple-darwin",
39+
"exists": true,
40+
"sizeBytes": 94760944,
41+
"mtime": "2026-03-11T10:21:34.798Z",
42+
"sha256": "bdb24072bbe8f2d4020818b1e81165ce21b44d5934dc774c5b10eed43803218c"
43+
},
44+
"notes": [
45+
"requires signing on macOS before distribution"
46+
]
47+
},
48+
"godot_windows": {
49+
"buildStatus": "ready",
50+
"artifact": {
51+
"path": "src-tauri/bin/godot-x86_64-pc-windows-msvc.exe",
52+
"exists": true,
53+
"sizeBytes": 171924488,
54+
"mtime": "2026-01-25T18:30:53.000Z",
55+
"sha256": "63913d01be2c2d1f929b4a626f5347117126b34e9c64cbf350ea9f35a9657ebf"
56+
}
57+
},
58+
"android_capacitor": {
59+
"buildStatus": "blocked",
60+
"artifact": {
61+
"path": "android/app/build/outputs/apk/debug/app-debug.apk",
62+
"exists": true,
63+
"sizeBytes": 173806084,
64+
"mtime": "2026-03-04T08:17:35.215Z",
65+
"sha256": "114ea80b28ae5d07bd1700c4ab186debd6fa2fae348a6e673536b55f8e1fd3e5"
66+
},
67+
"notes": [
68+
"Gradle toolchain requires Java 21; host has JDK 23 only"
69+
]
70+
},
71+
"desktop_tauri_windows": {
72+
"buildStatus": "blocked",
73+
"artifact": {
74+
"path": "src-tauri/target/release/bundle",
75+
"exists": true
76+
},
77+
"notes": [
78+
"tauri release build still fails with rustc-LLVM out-of-memory even under low-memory flags"
79+
]
80+
}
81+
}
82+
}

capacitor.config.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,12 @@ import type { CapacitorConfig } from '@capacitor/cli';
33
const config: CapacitorConfig = {
44
appId: 'com.jacob.noteconnection.pro',
55
appName: 'NoteConnection',
6-
webDir: 'dist/src/frontend'
6+
webDir: 'dist/src/frontend',
7+
server: {
8+
hostname: 'localhost',
9+
cleartext: true,
10+
allowNavigation: ['localhost', '127.0.0.1'],
11+
},
712
};
813

914
export default config;

0 commit comments

Comments
 (0)