Verification Report · syncthing v2.1.6

NOT PUBLISHED   syncthing-v2.1.6-20261006-001   verified_at 2026-10-06T12:22:19Z

Immutable inputs

App versionv2.1.6 ← release tag v2.1.6 · source 4461a1ce354d
Image (exact tag)syncthing/syncthing:2.1.6
Image digest (linux/amd64)sha256:92e9a8bf559062b955ab45c7a60bc33d0b97ebdb1e5e86959b40714b482f740a
Index digestsha256:4d0281bdcb4ed9baf503d251d0544ddd856f49fce3f114056257ae172b7fb670
Pulled assyncthing/syncthing:2.1.6@sha256:92e9a8bf559062b955ab45c7a60bc33d0b97ebdb1e5e86959b40714b482f740a via registry-1.docker.io
Platform contractami-0045d7fc2ad003464 · us-east-1/x86_64 · source=public (plat-us-east-1-x86_64-20261001-001)
Config revisionsapp dcdd0afd2e16 · compose f589ee584297
Release typebug_fix — rule3: patch-only bump v2.1.5 -> (2, 1, 6)

Publish gate

CheckFieldResult
Compose startedchecks.compose_startedPassed
Container healthychecks.container_healthyPassed
Health check passedchecks.health_check_passedPassed
Application testschecks.tests_passedPassed
Screenshots capturedchecks.screenshots_generatedPassed
Screenshots publishedchecks.screenshots_uploadedFailed
Report publishedchecks.report_uploadedFailed
Manifest publishedchecks.verification_manifest_uploadedFailed
Platform contract validchecks.required_platform_contract_validPassed

Evidence

Health probeHTTP 200 — ready
Version assertionTrue actual v2.1.6 — 匹配(exact):kind=exec_command 取到 'v2.1.6',期望 'v2.1.6'
Testspytest 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.40s
Container staterunning
Duration60.6s(2026-10-06T12:21:18Z → 2026-10-06T12:22:18Z)

Screenshots

gui
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.40s

Container logs (tail)

--- compose up ---
 syncthing Pulling 
 syncthing Pulled 
 Network cn-syncthing-d520a90a1c33_default  Creating
 Network cn-syncthing-d520a90a1c33_default  Created
 Container cn-syncthing-d520a90a1c33-syncthing-1  Creating
 Container cn-syncthing-d520a90a1c33-syncthing-1  Created
 Container cn-syncthing-d520a90a1c33-syncthing-1  Starting
 Container cn-syncthing-d520a90a1c33-syncthing-1  Started

--- container logs ---
syncthing-1  | 2026-10-06 12:21:26 INF syncthing v2.1.6 "Hafnium Hornet" (go1.27.1 linux-amd64) docker@github.syncthing.net 2026-10-05 04:03:55 UTC [noupgrade] (log.pkg=main)
syncthing-1  | 2026-10-06 12:21:26 INF Generating key and certificate (cn=syncthing log.pkg=syncthing)
syncthing-1  | 2026-10-06 12:21:26 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-10-06 12:21:26 INF Archiving a copy of old config file format (path=/var/syncthing/config/config.xml.v0 log.pkg=syncthing)
syncthing-1  | 2026-10-06 12:21:26 INF Calculated our device ID (device=FELQAZM-GMMLLLM-DBH37YE-N2UVBVA-VI2YCJ6-7AQRH2F-HINB5LW-ORODMQ5 log.pkg=syncthing)
syncthing-1  | 2026-10-06 12:21:26 INF Overall rate limit in use (send="is unlimited" recv="is unlimited" log.pkg=connections)
syncthing-1  | 2026-10-06 12:21:26 INF Using discovery mechanism (identity="global discovery server https://discovery-lookup.syncthing.net/v2/?noannounce" log.pkg=discover)
syncthing-1  | 2026-10-06 12:21:26 INF Using discovery mechanism (identity="global discovery server https://discovery-announce-v4.syncthing.net/v2/?nolookup" log.pkg=discover)
syncthing-1  | 2026-10-06 12:21:26 INF Using discovery mechanism (identity="global discovery server https://discovery-announce-v6.syncthing.net/v2/?nolookup" log.pkg=discover)
syncthing-1  | 2026-10-06 12:21:26 INF Using discovery mechanism (identity="IPv4 local broadcast discovery on port 21027" log.pkg=discover)
syncthing-1  | 2026-10-06 12:21:26 INF Relay listener starting (id=dynamic+https://relays.syncthing.net/endpoint log.pkg=connections)
syncthing-1  | 2026-10-06 12:21:26 INF Using discovery mechanism (identity="IPv6 local multicast discovery on address [ff12::8384]:21027" log.pkg=discover)
syncthing-1  | 2026-10-06 12:21:26 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-10-06 12:21:26 INF TCP listener starting (address="[::]:22000" log.pkg=connections)
syncthing-1  | 2026-10-06 12:21:26 INF QUIC listener starting (address="[::]:22000" log.pkg=connections)
syncthing-1  | 2026-10-06 12:21:26 INF Creating new HTTPS certificate (log.pkg=api)
syncthing-1  | 2026-10-06 12:21:26 INF GUI and API listening (address="[::]:8384" log.pkg=api)
syncthing-1  | 2026-10-06 12:21:26 INF Access the GUI via the following URL: http://127.0.0.1:8384/ (log.pkg=api)
syncthing-1  | 2026-10-06 12:21:26 INF Loaded configuration (name=6e48708b0d54 log.pkg=syncthing)
syncthing-1  | 2026-10-06 12:21:27 INF Measured hashing performance (perf="1340.35 MB/s" log.pkg=syncthing)
syncthing-1  | 2026-10-06 12:21:41 INF Joined relay (uri=relay://209.205.228.77:22067 log.pkg=relay/client)
syncthing-1  | 2026-10-06 12:21:46 INF Detected NAT services (count=0 log.pkg=nat)
syncthing-1  | 2026-10-06 12:22:15 INF Detected NAT type (uri=quic://0.0.0.0:22000 type="Port restricted NAT" log.pkg=connections)
syncthing-1  | 2026-10-06 12:22:15 INF Resolved external address (uri=quic://0.0.0.0:22000 address=quic://172.183.94.130:49160 via=stun.voipbuster.com:3478 log.pkg=connections)

Raw manifest

{
  "schema_version": "1.0",
  "verification_id": "syncthing-v2.1.6-20261006-001",
  "app": "syncthing",
  "app_version": "v2.1.6",
  "release": {
    "source_repo": "syncthing/syncthing",
    "source_revision": "4461a1ce354d3990660966ad70176e00246adb61",
    "release_tag": "v2.1.6",
    "upstream_tag": "v2.1.6",
    "image_reference": "syncthing/syncthing:2.1.6"
  },
  "container": {
    "image": "syncthing/syncthing:2.1.6",
    "digest": "sha256:92e9a8bf559062b955ab45c7a60bc33d0b97ebdb1e5e86959b40714b482f740a",
    "manifest_digest": "sha256:4d0281bdcb4ed9baf503d251d0544ddd856f49fce3f114056257ae172b7fb670",
    "platform": "linux/amd64"
  },
  "platform": {
    "platform_verification_id": "plat-us-east-1-x86_64-20261001-001",
    "ami_id": "ami-0045d7fc2ad003464",
    "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": "dcdd0afd2e161ebf000b280d36b11eae88ecc877",
    "compose_revision": "f589ee5842975aff6bec4177ab751b2fc6651f92",
    "tests_revision": "4136a9fc8de221b57a8878a17ae7ecd5de3f5cb1",
    "template_revision": "c9350db2baff041f7af1051e500f8db9da8c749a"
  },
  "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/candidates/syncthing/37462565387/1/syncthing-v2.1.6-20261006-001/screenshots/gui.png",
        "caption": {
          "en": "Web GUI",
          "zh": "Web 管理界面"
        }
      }
    ],
    "report_url": "",
    "workflow_run_url": "https://github.com/CoreNovaLabs/CoreNovaLaunch/actions/runs/37462565387"
  },
  "website": {
    "app": "syncthing",
    "app_version": "v2.1.6",
    "verification_id": "syncthing-v2.1.6-20261006-001",
    "verification_run_id": "37462565387",
    "platform_verification_id": "plat-us-east-1-x86_64-20261001-001",
    "ami_id": "ami-0045d7fc2ad003464",
    "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-10-06T12:22:19Z",
    "report_url": "",
    "workflow_run_url": "https://github.com/CoreNovaLabs/CoreNovaLaunch/actions/runs/37462565387",
    "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.6",
      "extra_environment": [],
      "template": {
        "url": "https://corenovalaunch-templates.s3.us-east-1.amazonaws.com/corenova-one-click.template.yaml",
        "revision": "c9350db2baff041f7af1051e500f8db9da8c749a"
      },
      "post_deploy": {
        "admin_path": "/",
        "admin_setup": {
          "en": "The template restricts the GUI to localhost by default. Use SSM port forwarding to configure GUI access protection in Settings > GUI before widening AllowedWebCidr, and enable HTTPS for direct remote access. There are no preset accounts.",
          "zh": "模板默认仅允许本机访问 GUI。通过 SSM 端口转发进入设置 > GUI 完成访问保护后,再扩大 AllowedWebCidr;远程直连还需启用 HTTPS。没有预置账号。"
        },
        "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": "Direct device sync is opt-in: set ExtraTcpPort=22000, ExtraUdpPort=22000 and ExtraPortIngressCidr to the peer range. This publishes both Docker ports and adds matching security-group rules. GUI port 8384 stays loopback-only. UDP 21027 LAN discovery is not exposed; configure peer addresses or use upstream discovery/relay.",
            "zh": "设备直连同步需显式设置 ExtraTcpPort=22000、ExtraUdpPort=22000,并将 ExtraPortIngressCidr 设为对端网段;模板同时发布 Docker 端口并添加对应安全组规则。GUI 的 8384 仍仅绑定本机。不会暴露 UDP 21027 局域网发现,请配置对端地址或使用上游发现/中继。"
          }
        ]
      },
      "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",
      "hold": {
        "reason": {
          "en": "Deployment paused: transfer ports and protected management access are not configured.",
          "zh": "暂停部署:尚未配置传输端口和管理界面访问保护。"
        }
      },
      "production_contract": {
        "checks": [
          "admin_auth",
          "data_dir_write"
        ]
      }
    },
    "release": {
      "type": "bug_fix",
      "previous_version": "v2.1.5",
      "type_evidence": "rule3: patch-only bump v2.1.5 -> (2, 1, 6)"
    },
    "screenshots": [
      {
        "scenario": "gui",
        "file": "gui.png",
        "url": "https://pub-7abe6acc470447c0a101cc20ce10ceee.r2.dev/candidates/syncthing/37462565387/1/syncthing-v2.1.6-20261006-001/screenshots/gui.png",
        "caption": {
          "en": "Web GUI",
          "zh": "Web 管理界面"
        }
      }
    ]
  },
  "verification_run_id": "37462565387",
  "verified_at": "2026-10-06T12:22:19Z"
}