Commit Graph

443 Commits

Author SHA1 Message Date
Alexey 73b40d386a
Merge pull request #121 from vladon/git-action-for-build-n-test-every-pr
Add GitHub Actions workflow for build and test on every PR
2026-02-17 21:03:52 +03:00
Igor d122cbfe5a Skip IPv6 connections when IPv6 is unavailable on host
Detect IPv6 availability at startup using UDP probe. When IPv6 is not
available: override prefer_ipv6 to false, skip IPv6 DC pings, pass empty
ME v6 proxy map, skip IPv6 coverage checks in health monitor, and skip
IPv6 fallback in upstream health checks. This eliminates useless
connection attempts with timeouts on IPv6-less hosts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 20:46:56 +03:00
Vladislav Yaroslavlev 3206ce50bb
add manual workflow run 2026-02-17 18:17:14 +03:00
Vladislav Yaroslavlev bdccb866fe
git action for build binaries 2026-02-17 17:59:59 +03:00
Vladislav Yaroslavlev 9b5b382593
dont fail on loop error 2026-02-17 17:00:17 +03:00
Vladislav Yaroslavlev 9886c9a8e7
use -W warnings for clippy 2026-02-17 16:41:38 +03:00
Vladislav Yaroslavlev cb3d32cc89
comment -D warnings for clippy 2026-02-17 16:35:03 +03:00
Vladislav Yaroslavlev 010eb5270f
add git action to build and test every PR 2026-02-17 16:17:30 +03:00
Alexey e33092530d
Merge pull request #117 from vladon/update-cargo-lock
chore: update Cargo.lock with latest dependencies
2026-02-17 15:19:19 +03:00
Igor 8268714a4c Add CLAUDE.md with reference to AGENTS_SYSTEM_PROMT.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 14:27:48 +03:00
Igor 279d60693b Merge commit '43990c9' 2026-02-17 14:27:45 +03:00
Alexey e7d649b57f
Merge pull request #116 from An0nX/patch-1
feat: production system prompt — scope control, structured output, decision process
2026-02-17 14:17:28 +03:00
Vladislav Yaroslavlev 5f3d089003
chore: update Cargo.lock with latest dependencies
- Add h2 0.4.13 dependency
- Add httpdate 1.0.3 dependency
- Update hyper to include h2 and httpdate features
- Update tokio-util with additional futures and hashbrown dependencies
2026-02-17 12:49:02 +03:00
An0nX 4322509657
feat: rewrite system prompt with scope control, response format, and decision process
Rewrite the system prompt for production Rust codebase assistance.

Key changes:
- Add Priority Resolution (Section 0) implementing "Boy Scout Rule" with
  explicit scope control: coordinated style fixes are always in scope,
  architectural changes require explicit approval
- Add role definition as senior Rust systems engineer with strict code
  review responsibilities
- Rewrite negative constraints ("DO NOT") as positive instructions
  throughout all sections for better model adherence
- Add structured decision process for complex changes (Section 8):
  clarify → assess → propose → implement → verify
- Add context awareness rules (Section 9) for partial code handling
- Add mandatory response format (Section 10) with two-section structure:
  Reasoning (Russian) and Changes (English code)
- Add language policy: code/comments/commits in English,
  reasoning in Russian
- Add out-of-scope observations reporting mechanism — model reports
  issues it finds but is not allowed to fix
- Add splitting protocol for responses exceeding output limits
- Add file size thresholds for full-file vs contextual-diff responses
  (200 lines boundary)
- Preserve permission for todo!() and unimplemented!() as idiomatic
  Rust markers
- Preserve all existing rules: file size limits, formatting preservation,
  warning/dead-code protection, architectural integrity, git discipline
2026-02-17 12:42:03 +03:00
Alexey 43990c9dc9
Merge pull request #113 from telemt/me-fixes
Me fixes
2026-02-17 04:26:20 +03:00
Alexey c03db683a5
Improved perf for ME
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-17 04:16:16 +03:00
Alexey 168fd59187
Fixed critical ME Problems 2026-02-17 03:40:39 +03:00
Alexey 8bd02d8099
Merge pull request #111 from VeryBigSad/feat/metrics-endpoint
Add Prometheus /metrics HTTP endpoint
2026-02-17 01:39:29 +03:00
Mikhail a1db082ec0
Add Prometheus /metrics HTTP endpoint
Wire up unused metrics_port/metrics_whitelist config into working
HTTP server exposing proxy stats in Prometheus text format.
2026-02-17 01:24:49 +03:00
Alexey 9b9c11e7ab
Merge pull request #110 from telemt/neurosl0pe
Create AGENTS_SYSTEM_PROMT.md
2026-02-16 23:41:59 +03:00
Alexey 274b9d5e94
Update AGENTS_SYSTEM_PROMT.md 2026-02-16 23:34:52 +03:00
Alexey d888df6382
Update AGENTS.md 2026-02-16 23:33:09 +03:00
Alexey 011b9a3cbf
Create AGENTS_SYSTEM_PROMT.md 2026-02-16 23:30:46 +03:00
Alexey d67a587f3d
Merge pull request #106 from vladon/docs/update-announce-readme
docs: update README with new 'announce' parameter
2026-02-16 22:33:25 +03:00
Vladislav Yaroslavlev 478fc5dd89
docs: update README with new 'announce' parameter
Replace deprecated 'announce_ip' example with new 'announce' parameter
that supports both hostnames and IP addresses.
2026-02-16 18:51:21 +03:00
Alexey a0e7210dff
Merge pull request #100 from vladon/feature/announce-hostname
feat: extend announce_ip to accept hostnames
2026-02-16 17:36:22 +03:00
vladon 16b5dc56f0 feat: extend announce_ip to accept hostnames
Add new 'announce' field to ListenerConfig that accepts both IP addresses
and hostnames for proxy link generation. The old 'announce_ip' field is
deprecated but still supported via automatic migration.

Changes:
- Add 'announce: Option<String>' field to ListenerConfig
- Add migration logic: announce_ip → announce if announce not set
- Update main.rs to use announce field for link generation
- Support both hostnames (e.g., 'proxy.example.com') and IPs

Backward compatible: existing configs using announce_ip continue to work.
2026-02-16 17:26:46 +03:00
vladon 303a6896bf AGENTS.md 2026-02-16 16:59:29 +03:00
Alexey 9e84528801
Update main.rs 2026-02-16 15:48:22 +03:00
Alexey 685c228190
Update main.rs 2026-02-16 15:16:26 +03:00
Alexey febe4d1ac0
Merge pull request #98 from telemt/me-ping
ME Ping in log
2026-02-16 12:25:25 +03:00
Alexey e4f90cd7c1
ME Ping in log 2026-02-16 12:10:59 +03:00
Alexey 3013291ea0
Merge pull request #97 from AndreyAkifev/main
Fix ME relay HOL and reduce per-frame flush overhead
2026-02-16 10:29:40 +03:00
Alexey 5d1dce7989
Merge pull request #95 from Katze-942/main-fix
Fix: public_host/public_port + unix socket
2026-02-16 10:28:35 +03:00
AndreyAkifev 864f7fa9a5
Merge branch 'telemt:main' into main 2026-02-16 08:51:26 +03:00
Andrey Akifev e54fb3fffc
Reduce per-frame flush overhead 2026-02-16 12:49:49 +07:00
Andrey Akifev dddf9f30dc
Fix HOL 2026-02-16 12:49:16 +07:00
Жора Змейкин 3091b5168f
Fix: public_host/public_port + unix socket 2026-02-16 04:22:26 +03:00
Alexey ddc91c2d66
Merge pull request #93 from sou1jacker/main
Fix "Read-only file system" and "Permission denied" errors for proxy-secret cache
2026-02-16 02:49:25 +03:00
Артур 8072a97f7e
Modify docker-compose for tmpfs
Updated volume path for config.toml and added tmpfs configuration.
2026-02-16 02:03:11 +03:00
Alexey 558155ffaa
Merge pull request #92 from An0nX/patch-1
Refactor dc.py: OOP architecture, strict typing, dataclass model
2026-02-16 00:49:39 +03:00
An0nX ed329c2075
refactor: rewrite dc.py with OOP, strict typing, and dataclass model
- Replace procedural logic with TelegramDCChecker class
- Introduce frozen DCServer dataclass with slots for DC option parsing
- Add full type hints
- Add docstrings to all classes and methods
- Use itertools.groupby for DC grouping instead of manual dict building
- Use pathlib.Path for file output
2026-02-16 00:38:13 +03:00
Alexey 305c088bb7
Grabbing unknown dc into unknown-dc.txt 2026-02-15 23:59:53 +03:00
Alexey debdbfd73c
Ping for [dc_overrides]
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-15 23:46:49 +03:00
Alexey 904c17c1b3
DC=203 by default + IP Autodetect by STUN
Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
2026-02-15 23:30:21 +03:00
artemws 4a80bc8988 Refactor connectivity logging for upstream results 2026-02-15 22:33:25 +03:00
Alexey f9c41ab703
Update rust.yml 2026-02-15 19:32:29 +03:00
Alexey 2112ba22f1
Update rust.yml 2026-02-15 19:31:23 +03:00
Alexey fbe9277f86
Update README.md 2026-02-15 18:12:37 +03:00
Alexey d1348e809f
Update README.md 2026-02-15 18:09:54 +03:00