vasyansk
|
788f1db80e
|
feat(store): goose-миграции схемы + seed default tenant, тест на testcontainers
|
2026-07-03 13:56:21 +07:00 |
|
vasyansk
|
3b7ed8434b
|
feat(registry): резолвинг провайдера по имени
|
2026-07-03 13:41:56 +07:00 |
|
vasyansk
|
7c82bafaaa
|
feat(crypto): AES-256-GCM шифрование секретов учёток
|
2026-07-03 13:41:52 +07:00 |
|
vasyansk
|
fc10451340
|
feat(config): загрузка env-конфига (DSN, ENC-ключ, listen)
|
2026-07-03 13:35:47 +07:00 |
|
vasyansk
|
50aec973ff
|
docs: план реализации Фазы 1B (persistence + REST API)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-03 13:31:36 +07:00 |
|
vasyansk
|
3d6e3110b3
|
docs: детализация дизайна Фазы 1B (persistence + REST API)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-03 13:25:49 +07:00 |
|
vasyansk
|
c0c8e3188d
|
merge backlog: worktree-agent-aca0d858dec169a39
|
2026-07-03 13:16:27 +07:00 |
|
vasyansk
|
b62f7d58cd
|
merge backlog: worktree-agent-a0d4f6f75e1f8f7cd
|
2026-07-03 13:16:27 +07:00 |
|
vasyansk
|
6b515622e3
|
merge backlog: worktree-agent-a2c71dd931a5bf2a0
|
2026-07-03 13:16:26 +07:00 |
|
vasyansk
|
70f9bc6793
|
harden(selectel): защита пагинации от неподвижного offset, тест New, документирование disabled
|
2026-07-03 13:13:24 +07:00 |
|
vasyansk
|
c42d242a3b
|
feat(diff): prune-guard Updates()/Prunes() + фиксация семантики dedup
|
2026-07-03 13:12:10 +07:00 |
|
vasyansk
|
1505997b19
|
refactor(model): slices.Sort/Equal вместо ручного цикла
|
2026-07-03 13:11:18 +07:00 |
|
vasyansk
|
9de5d4712c
|
merge: Фаза 1A — доменное ядро + провайдер Selectel
- internal/model: нейтральная модель Record (нормализация MX/SRV/TXT, Key, Equal)
- internal/diff: диф-движок шаблон↔зона, ReadOnly для NS/SOA, Actionable
- internal/provider: интерфейс Provider + Credentials/Zone
- internal/provider/selectel: Selectel DNS API v2 (ListZones/GetRecords/ApplyChanges)
Финальный ревью: READY TO MERGE. 23/23 тестов.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-03 13:02:30 +07:00 |
|
vasyansk
|
cb2f826dc2
|
test(diff): пустой шаблон — массовый Delete управляемых, NS остаётся ReadOnly
|
2026-07-03 12:57:36 +07:00 |
|
vasyansk
|
86338f846a
|
fix(selectel): nil-guard в ApplyChanges + тесты пагинации rrset и nil-diff
|
2026-07-03 12:57:30 +07:00 |
|
vasyansk
|
b50972f38d
|
fix(model): TXT сравнивается байт-точно (без схлопывания пробелов)
|
2026-07-03 12:57:24 +07:00 |
|
vasyansk
|
9b38f081f4
|
test(selectel): покрытие id-not-found, токена на мутациях, пагинации и HTTP-ошибок
|
2026-07-03 12:48:59 +07:00 |
|
vasyansk
|
c0f5748817
|
feat(selectel): реализация Provider — ListZones, GetRecords, ApplyChanges
|
2026-07-03 12:41:31 +07:00 |
|
vasyansk
|
9f209c8931
|
feat(provider): интерфейс Provider, Credentials, Zone
|
2026-07-03 12:36:18 +07:00 |
|
vasyansk
|
bd4f8c5a8c
|
feat(diff): диф-движок шаблон↔зона с Actionable и ReadOnly для NS/SOA
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-03 12:32:33 +07:00 |
|
vasyansk
|
304632b8cf
|
test(model): покрытие SRV, неполных MX/SRV значений и изоляция теста приоритета MX
|
2026-07-03 12:27:39 +07:00 |
|
vasyansk
|
dd91c93bda
|
feat(model): нейтральная модель Record с нормализацией и Equal
|
2026-07-03 12:22:38 +07:00 |
|
vasyansk
|
c738d05241
|
docs: план реализации Фазы 1A (ядро + Selectel)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-03 12:16:03 +07:00 |
|
vasyansk
|
74b8a01dc8
|
docs: зафиксированы решения (Selectel API-ключ, JSONB-шаблоны)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-03 12:09:18 +07:00 |
|
vasyansk
|
db62c8c0c7
|
docs: дизайн DNS Autoresolver (Фаза 1 — ядро)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-03 12:07:13 +07:00 |
|