Verification Report · syncthing v2.1.5
NOT PUBLISHED
syncthing-v2.1.5-20260911-001
verified_at 2026-09-11T10:51:56Z
Immutable inputs
| App version | v2.1.5 ← release tag v2.1.5 · source 2ca95cf14981 |
| Image (exact tag) | syncthing/syncthing:2.1.5 |
| Image digest (linux/amd64) | sha256:84dcf202b0890f795c4c3899d35a5ac7369bb8b72b5c270078c50247da4ddeef |
| Index digest | sha256:397aa00b92b48d65540ea3ae3cbf271b87bdccbe07a0b7bd7d2debc3a7b29138 |
| Pulled as | syncthing/syncthing:2.1.5@sha256:84dcf202b0890f795c4c3899d35a5ac7369bb8b72b5c270078c50247da4ddeef via registry-1.docker.io |
| Platform contract | ami-025d99823a4caad37 · us-east-1/x86_64 · source=public (plat-us-east-1-x86_64-20260909-001) |
| Config revisions | app 67bb960be09a · compose 89bee7986dce |
| Release type | initial — rule1: no published versions recorded for this app |
Publish gate
| Check | Field | Result |
|---|
| Compose started | checks.compose_started | Passed |
| Container healthy | checks.container_healthy | Passed |
| Health check passed | checks.health_check_passed | Passed |
| Application tests | checks.tests_passed | Passed |
| Screenshots captured | checks.screenshots_generated | Passed |
| Screenshots published | checks.screenshots_uploaded | Failed |
| Report published | checks.report_uploaded | Failed |
| Manifest published | checks.verification_manifest_uploaded | Failed |
| Platform contract valid | checks.required_platform_contract_valid | Passed |
Evidence
| Health probe | HTTP 200 — ready |
| Version assertion | True actual v2.1.5 — 匹配(exact):kind=exec_command 取到 'v2.1.5',期望 'v2.1.5' |
| Tests | pytest exit=0
.. [100%]
==================================== PASSES ====================================
=========================== short test summary info ============================
PASSED apps/syncthing/tests/test_gui.py::test_health_endpoint
PASSED apps/syncthing/tests/test_gui.py::test_gui_renders
2 passed in 1.46s
|
| Container state | running |
| Duration | 56.9s(2026-09-11T10:50:59Z → 2026-09-11T10:51:55Z) |
Screenshots

gui · Web GUI / Web 管理界面
Application test output
pytest exit=0
.. [100%]
==================================== PASSES ====================================
=========================== short test summary info ============================
PASSED apps/syncthing/tests/test_gui.py::test_health_endpoint
PASSED apps/syncthing/tests/test_gui.py::test_gui_renders
2 passed in 1.46s
Container logs (tail)
--- compose up ---
syncthing Pulling
syncthing Pulled
Network cn-syncthing_default Creating
Network cn-syncthing_default Created
Container cn-syncthing-syncthing-1 Creating
Container cn-syncthing-syncthing-1 Created
Container cn-syncthing-syncthing-1 Starting
Container cn-syncthing-syncthing-1 Started
--- container logs ---
syncthing-1 | 2026-09-11 10:51:03 INF syncthing v2.1.5 "Hafnium Hornet" (go1.27.1 linux-amd64) docker@github.syncthing.net 2026-09-08 06:57:55 UTC [noupgrade] (log.pkg=main)
syncthing-1 | 2026-09-11 10:51:03 INF Generating key and certificate (cn=syncthing log.pkg=syncthing)
syncthing-1 | 2026-09-11 10:51:03 INF Default config saved; edit to taste (with Syncthing stopped) or use the GUI (path=/var/syncthing/config/config.xml log.pkg=syncthing)
syncthing-1 | 2026-09-11 10:51:03 INF Archiving a copy of old config file format (path=/var/syncthing/config/config.xml.v0 log.pkg=syncthing)
syncthing-1 | 2026-09-11 10:51:03 INF Calculated our device ID (device=MGI6YMV-MQ3E5NT-WLG4PSG-XPK7LEQ-YG5LTAM-HPS5UBB-4FOX5RT-WS5MUQL log.pkg=syncthing)
syncthing-1 | 2026-09-11 10:51:03 INF Overall rate limit in use (send="is unlimited" recv="is unlimited" log.pkg=connections)
syncthing-1 | 2026-09-11 10:51:03 INF Using discovery mechanism (identity="global discovery server https://discovery-lookup.syncthing.net/v2/?noannounce" log.pkg=discover)
syncthing-1 | 2026-09-11 10:51:03 INF Using discovery mechanism (identity="global discovery server https://discovery-announce-v4.syncthing.net/v2/?nolookup" log.pkg=discover)
syncthing-1 | 2026-09-11 10:51:03 INF Using discovery mechanism (identity="global discovery server https://discovery-announce-v6.syncthing.net/v2/?nolookup" log.pkg=discover)
syncthing-1 | 2026-09-11 10:51:03 INF Using discovery mechanism (identity="IPv4 local broadcast discovery on port 21027" log.pkg=discover)
syncthing-1 | 2026-09-11 10:51:03 INF Using discovery mechanism (identity="IPv6 local multicast discovery on address [ff12::8384]:21027" log.pkg=discover)
syncthing-1 | 2026-09-11 10:51:03 INF TCP listener starting (address="[::]:22000" log.pkg=connections)
syncthing-1 | 2026-09-11 10:51:03 INF Creating new HTTPS certificate (log.pkg=api)
syncthing-1 | 2026-09-11 10:51:03 INF Relay listener starting (id=dynamic+https://relays.syncthing.net/endpoint log.pkg=connections)
syncthing-1 | 2026-09-11 10:51:03 INF GUI and API listening (address="[::]:8384" log.pkg=api)
syncthing-1 | 2026-09-11 10:51:03 INF Access the GUI via the following URL: http://127.0.0.1:8384/ (log.pkg=api)
syncthing-1 | 2026-09-11 10:51:03 INF failed to sufficiently increase receive buffer size (was: 1024 kiB, wanted: 7168 kiB, got: 2048 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for details.
syncthing-1 | 2026-09-11 10:51:03 INF QUIC listener starting (address="[::]:22000" log.pkg=connections)
syncthing-1 | 2026-09-11 10:51:03 INF Loaded configuration (name=728f333d2a7a log.pkg=syncthing)
syncthing-1 | 2026-09-11 10:51:03 WRN Syncthing should not run as a privileged or system user; please consider using a normal user account (log.pkg=syncthing)
syncthing-1 | 2026-09-11 10:51:04 INF Measured hashing performance (perf="1439.11 MB/s" log.pkg=syncthing)
syncthing-1 | 2026-09-11 10:51:17 INF Joined relay (uri=relay://166.88.160.157:22067 log.pkg=relay/client)
syncthing-1 | 2026-09-11 10:51:24 INF Detected NAT services (count=0 log.pkg=nat)
syncthing-1 | 2026-09-11 10:51:33 INF Detected NAT type (uri=quic://0.0.0.0:22000 type="Port restricted NAT" log.pkg=connections)
syncthing-1 | 2026-09-11 10:51:33 INF Resolved external address (uri=quic://0.0.0.0:22000 address=quic://74.235.117.99:30912 via=stun.miwifi.com:3478 log.pkg=connections)
Raw manifest
{
"schema_version": "1.0",
"verification_id": "syncthing-v2.1.5-20260911-001",
"app": "syncthing",
"app_version": "v2.1.5",
"release": {
"source_repo": "syncthing/syncthing",
"source_revision": "2ca95cf1498104113fdfde46df4107f2450a0f71",
"release_tag": "v2.1.5",
"upstream_tag": "v2.1.5",
"image_reference": "syncthing/syncthing:2.1.5"
},
"container": {
"image": "syncthing/syncthing:2.1.5",
"digest": "sha256:84dcf202b0890f795c4c3899d35a5ac7369bb8b72b5c270078c50247da4ddeef",
"manifest_digest": "sha256:397aa00b92b48d65540ea3ae3cbf271b87bdccbe07a0b7bd7d2debc3a7b29138",
"platform": "linux/amd64"
},
"platform": {
"platform_verification_id": "plat-us-east-1-x86_64-20260909-001",
"ami_id": "ami-025d99823a4caad37",
"base_ami_source": "public",
"source_ami_name": "ubuntu/images/hvm-ssd-gp3/ubuntu-noble-24.04-amd64-server-*",
"region": "us-east-1",
"architecture": "x86_64"
},
"config": {
"app_config_revision": "67bb960be09a3c4ce210e0397cd0fdc134cd08c3",
"compose_revision": "89bee7986dce9e974489260cd6ce6eb54ba5f851",
"tests_revision": "4136a9fc8de221b57a8878a17ae7ecd5de3f5cb1"
},
"verification": {
"application": "passed",
"platform": "referenced",
"tests": "passed"
},
"checks": {
"compose_started": true,
"container_healthy": true,
"health_check_passed": true,
"tests_passed": true,
"screenshots_generated": true,
"screenshots_uploaded": false,
"report_uploaded": false,
"verification_manifest_uploaded": false,
"required_platform_contract_valid": true
},
"artifacts": {
"screenshots": [
{
"scenario": "gui",
"file": "gui.png",
"url": "https://pub-7abe6acc470447c0a101cc20ce10ceee.r2.dev/screenshots/syncthing/v2.1.5/gui.png",
"caption": {
"en": "Web GUI",
"zh": "Web 管理界面"
}
}
],
"report_url": "",
"workflow_run_url": "https://github.com/CoreNovaLabs/CoreNovaLaunchVerify/actions/runs/34591144825"
},
"website": {
"app": "syncthing",
"app_version": "v2.1.5",
"verification_id": "syncthing-v2.1.5-20260911-001",
"verification_run_id": "34591144825",
"platform_verification_id": "plat-us-east-1-x86_64-20260909-001",
"ami_id": "ami-025d99823a4caad37",
"architecture": "x86_64",
"region": "us-east-1",
"display_name": {
"en": "Syncthing",
"zh": "Syncthing 文件同步"
},
"description": {
"en": "Continuous peer-to-peer file synchronization between devices",
"zh": "设备间点对点持续文件同步"
},
"category": "productivity",
"icon": "/icons/syncthing.svg",
"featured": true,
"tags": [
"sync",
"backup",
"p2p"
],
"features": [
{
"en": "Peer-to-peer sync, no cloud middleman",
"zh": "点对点同步,不经过云端"
},
{
"en": "Encrypted transport and versioned file history",
"zh": "加密传输与文件版本历史"
},
{
"en": "Runs on desktop, NAS, and servers with a web GUI",
"zh": "桌面、NAS 与服务器通吃,带 Web 管理界面"
}
],
"health": "passed",
"status": "pending",
"verified_at": "2026-09-11T10:51:56Z",
"report_url": "",
"workflow_run_url": "https://github.com/CoreNovaLabs/CoreNovaLaunchVerify/actions/runs/34591144825",
"screenshots_order": [
"gui"
],
"deploy": {
"documentation_url": "https://docs.syncthing.net",
"regions": [
"us-east-1"
],
"instance_type": "t3.small",
"data_volume_gb": 30,
"container_port": 8384,
"health_check_path": "/rest/noauth/health",
"docker_image": "syncthing/syncthing:2.1.5",
"extra_environment": [],
"post_deploy": {
"admin_path": "/",
"admin_setup": {
"en": "The web GUI is open at / for local use; before exposing it publicly, configure GUI access protection per the upstream docs (Settings > GUI). There are no preset accounts.",
"zh": "Web 管理界面在 / 开放(本地访问免认证);对外公开前请按上游文档在设置 > GUI 中完成访问保护配置。没有预置账号。"
},
"notes": [
{
"en": "Sync folders live on a retained volume (/var/syncthing). It keeps billing after stack deletion; snapshot it, then delete the volume when no longer needed.",
"zh": "同步文件夹保存在保留数据卷(/var/syncthing)中。删除栈后该卷仍会计费;请先创建快照,不再需要时再删除卷。"
},
{
"en": "Default container ports 22000/tcp+udp and 21027/udp are used for device sync (LAN discovery); the CFN security group opens 22000 for cross-device sync.",
"zh": "容器默认的 22000/tcp+udp 与 21027/udp 用于设备间同步(局域网发现);CFN 安全组已放行 22000 以支持跨设备同步。"
}
]
},
"cost_estimate": {
"monthly_usd": 23,
"note": {
"en": "Verified default in us-east-1: ~$15.2 t3.small + ~$4 for the 20 GB root and 30 GB data gp3 volumes + $3.65 public IPv4 per month. Transfer traffic is extra.",
"zh": "us-east-1 已验证默认配置:t3.small 约 $15.2/月 + 20GB 系统盘与 30GB 数据盘 gp3 约 $4/月 + 公网 IPv4 约 $3.65/月;同步流量另计。"
}
},
"data_path": "/var/syncthing"
},
"release": {
"type": "initial",
"previous_version": "",
"type_evidence": "rule1: no published versions recorded for this app"
},
"screenshots": [
{
"scenario": "gui",
"file": "gui.png",
"url": "https://pub-7abe6acc470447c0a101cc20ce10ceee.r2.dev/screenshots/syncthing/v2.1.5/gui.png",
"caption": {
"en": "Web GUI",
"zh": "Web 管理界面"
}
}
]
},
"verification_run_id": "34591144825",
"verified_at": "2026-09-11T10:51:56Z"
}