mirror of
https://github.com/saphid/frame-control.git
synced 2026-10-26 11:01:47 +01:00
Document running receipt guard and its verification boundary
This commit is contained in:
1 parent
761e952d8f
commit
7172be17fc
3 files changed
+21
-4
No files matched your search
@@ -2682,5 +2682,15 @@
|
||||
"Local custom artwork",
|
||||
"Closed-panel automation, suspend/input and private MobX observation",
|
||||
"Worn VR and physical controller/keyboard use"
|
||||
]
|
||||
],
|
||||
"receiptIntegration": {
|
||||
"prerequisite": "#301 merged at ad57662",
|
||||
"verification": "Local Python/Node tests; hardware checks above preceded this authorization-only change",
|
||||
"checks": [
|
||||
"Parent poll and both close paths include pinned SHA-256",
|
||||
"Missing/stale receipts rejected before CEF for active polls and close after plugin replacement",
|
||||
"Reopened panel accepts current receipt for poll and close",
|
||||
"Finite subscription lease unchanged for rejected stale close"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -69,3 +69,10 @@ suspend/input events, game actions or closed-panel automation.
|
||||
Discord shortcut detection, real IPC connection/activity, local custom artwork,
|
||||
actual running-game transitions, worn VR and physical controller/keyboard use
|
||||
remain unverified. None of the new fixture checks promotes a plugin to works.
|
||||
|
||||
After #301 merged, running polls and both close paths adopted its pinned SHA-256
|
||||
receipt guard. Local Python/Node tests verify the parent carries that receipt,
|
||||
missing/stale receipts are rejected before CEF after plugin replacement, and a
|
||||
reopened panel can poll and close with the new receipt. Rejected stale closes
|
||||
retain the tested finite-lease cleanup. This authorization-only follow-up did
|
||||
not repeat the device checks above; their recorded hardware scope is unchanged.
|
||||
@@ -115,9 +115,9 @@ Its cleanup actions were not tested; they may remove local game saves.
|
||||
|
||||
Framey also supplies local tabs/sidebar pages, spinners, dialog/menu wrappers
|
||||
and progress bars. Its explicit SteamClient subscription fallbacks return
|
||||
disposable handles without emitting fabricated events. There is no attached
|
||||
running game in `DFL.Router`, and power, app launch and hardware mutation methods
|
||||
are not supplied. Plugins that need live Steam stores still require integration
|
||||
disposable handles without emitting fabricated events. Running-game reads and
|
||||
lifetime notifications use the scoped bridge described below; power, app launch
|
||||
and hardware mutation methods are not supplied. Other live Steam stores require integration
|
||||
work. IndexedDB is hidden because the browser exposes it but denies access in
|
||||
an opaque iframe; localForage can then select Framey's bounded localStorage.
|
||||
Direct IndexedDB users remain unsupported.
|
||||
|
||||
Reference in new issue
Block a user