figcraft/docs
bflatastic 7edc61b8d2 M9: harden open hosting against resource exhaustion
Fixes from the security review of the public server:
- team libraries only in key-published files on open servers; unpacking
  bounded by the file cap (zip bombs refused)
- byte-bounded send queues per connection and in all, a bound on bytes
  waiting for the hub, per-address and global download budgets
- batches checked against the file, per-address and total caps as files
  grow (refused with a Reject the app rolls back); the core's recent-batch
  memory bounded in bytes; nothing confirmed when a log can't be written
- usage reports kept in memory; per-kind message caps checked while read
- layered IPv6 limits (/64, /56, /48), a global publish rate, connections
  reserved for sessions, short idle timeout for one-shot requests
- revoked links and removed files cut library connections
- data directory 0700, server key 0600 from creation
- install.sh: SSH ports from sshd, ufw left off when other services
  listen, unprivileged builds of the latest tag, settings checked before
  use, own Caddy snippet; systemd memory and network caps; backups check
  free space and say they hold the key
- linger reads raw bytes after an oversized frame (tungstenite asserted)
2026-10-12 11:40:03 +07:00
..
brand M0.1-M0.3: workspace, licences, geom/color/doc crates 2026-10-09 12:01:57 -04:00
images Docs: README showcase screenshots and example files 2026-10-12 08:57:26 +07:00
architecture.md M8: Windows QA fixes (#131) 2026-10-11 18:20:38 +07:00
auto-layout-parity.md M2: auto layout behaviour suite and fixes (#130) 2026-10-11 17:53:11 +07:00
cli.md M9: install.sh, backup timer and docs for a public figcraft-server 2026-10-12 11:40:03 +07:00
collab-protocol.md M9: harden open hosting against resource exhaustion 2026-10-12 11:40:03 +07:00
collaboration-parity.md M9: harden open hosting against resource exhaustion 2026-10-12 11:40:03 +07:00
components-parity.md M1: layers and assets panels behaviour suite and fixes 2026-10-12 03:47:34 +07:00
contributors.md About: Contributors and Models tabs with full credits; bump version to 0.2.0 (from 0.1.0) for release 2026-10-09 21:10:33 -04:00
control-protocol.md M5: prototyping tail: gamepad triggers, widgets in prototypes, mode lookups 2026-10-12 05:28:53 +07:00
dev-mode-parity.md M7: dev resources links 2026-10-12 02:30:25 +07:00
file-format-parity.md M6: experimental .fig export 2026-10-12 07:19:57 +07:00
gaps.md M6: experimental .fig export 2026-10-12 07:19:57 +07:00
hardware-parity.md M8: Windows QA fixes (#131) 2026-10-11 18:20:38 +07:00
localization-parity.md M9: draft catalogs catch up 2026-10-12 07:53:24 +07:00
mcp.md M9: install.sh, backup timer and docs for a public figcraft-server 2026-10-12 11:40:03 +07:00
parity-checklist.md M1: keyboard shortcut parity suite and bindings 2026-10-12 06:49:02 +07:00
plugins.md M11: plugin installs saved at once; directory and library requests off the UI thread 2026-10-12 06:15:00 +07:00
prototyping-parity.md M5: prototyping tail: gamepad triggers, widgets in prototypes, mode lookups 2026-10-12 05:28:53 +07:00
release-playbook.md M0.9: MCP server + figcraft-cli, PDF export, web app, release/CI packaging, vector edit mode, workspace lint cleanup 2026-10-09 13:31:53 -04:00
releasing.md M9: hosting figcraft-server: wss in the desktop app, server releases, deployment guide (#125) 2026-10-11 15:52:27 +07:00
roadmap.md M9: Simplified Chinese draft catalog 2026-10-12 05:57:48 +07:00
server.md M9: harden open hosting against resource exhaustion 2026-10-12 11:40:03 +07:00
target-app-parity.md M9: install.sh, backup timer and docs for a public figcraft-server 2026-10-12 11:40:03 +07:00
translating.md M9: Simplified Chinese draft catalog 2026-10-12 05:57:48 +07:00
ui-parity.md M1: rotation origin and place-with-Enter shortcuts 2026-10-12 07:53:24 +07:00