fix: bypass Wails v2 []string marshalling via JSON.stringify + end-to-end test
Root cause: Wails v2.12.0 cannot reliably marshal []string arguments from JavaScript to Go when called through positional binding. The event IDs array arrived empty on the Go side, causing no worklog_entry_events INSERTs. Fix: - AcceptSuggestionWith now accepts eventIDsJSON (string) instead of eventIDs ([]string). Frontend passes JSON.stringify(eventIds). - Backend json.Unmarshal into []string before validation. - Pre-insert validation: each eventID checked in activity_events. - Atomic tx: entry create + linking in single Begin/Commit. - INSERT (not INSERT OR IGNORE) — failure is a hard error. - Post-commit verification: JOIN COUNT(*) must match len(eventIDs). - End-to-end test: TestAcceptSuggestionWithEndToEnd creates a node, 3 activity events, accepts suggestion, verifies all 3 linked. Other changes: - GetWorklogEntryEvents: fixed column name (details_json -> metadata). - openActivityTarget(ev): new function for 'Посмотреть' button that navigates to specific note/file/folder instead of just opening node. - All 'openNodeById(ev.nodeId)' in event contexts replaced with 'openActivityTarget(ev)'.
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
background: #13131f;
|
||||
}
|
||||
</style>
|
||||
<script type="module" crossorigin src="/assets/main-DQ318Oic.js"></script>
|
||||
<script type="module" crossorigin src="/assets/main-BaeOWl0t.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="/assets/main-BafVhx43.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
Reference in New Issue
Block a user