mirror of
https://github.com/LorenEteval/Furious.git
synced 2026-09-22 23:08:08 +03:00
2.2 KiB
2.2 KiB
Hysteria 1 guidance
Inherit the root, package, and common backend guides; consult Plugins for capability contracts. This scope exists to preserve Hysteria 1's legacy flat schema and lifecycle without importing assumptions from Hysteria 2.
- Hysteria 1 is the legacy flat client schema and
hysteria://share-link backend. Do not import Hysteria 2 nested documents, obfuscation, statistics, realm, or native-TUN semantics merely because the upstream names are related. - Preserve tolerated legacy types, upstream field names, absent defaults, and unknown combo values. Loading and an untouched editor/URI/mapping round trip are observational; explicit user edits may normalize only the represented field.
- Subscription import is allowed only through supported Hysteria 1 protocol handlers. Subscription identity and test
metadata stay in
ServerProfile, and validation diagnostics never disclose passwords or complete links. - Runtime and download-test preparation use independent configuration copies. This backend uses application tun2socks when global TUN requires it and owns the MMDB/ACL inputs used by its routing launch; it does not gain native TUN by falling through another backend’s policy.
- Treat tolerated legacy values as input compatibility, not as permission to rewrite the persisted document during inspection. Runtime validation may reject what observational editor loading must still preserve.
- Routing ACL/MMDB launch inputs remain distinct from the stored connection JSON. A prepared runtime advertises its local HTTP readiness endpoint separately from child liveness. The built-in factory has no statistics provider; shared UI must handle that absence instead of treating it as a failed connection.
- Verify legacy/current URI and mapping compatibility, unknown/tolerated values, stored-copy isolation, MMDB/ACL
absence or malformed paths, asynchronous readiness and rollback, core-exit translation, application-TUN policy,
and repeated editor/runtime cleanup. Use
tests/test_hysteria1_protocol.py,tests/test_backend_editor_contract.py, andtests/test_connection_startup_async.py. Revise this guide with intentional schema evolution instead of freezing tolerated historical input into a universal backend rule.