Skip to content

Releases: somework/dsx

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 25 Jul 06:19

Changelog

  • c60fb0e docs(changelog): 0.1.2 — 403 без гранта это auth; санитайз тела сервера
  • f6c6215 docs(readme): полная форма тапа обязательна — Homebrew 6 требует доверия
  • fd0f413 feat(auth,docs): 403 без гранта — это auth и называет /design consent
  • 6890a57 fix(mcp): санитайзить тело сервера в ошибках — инвариант 7, все четыре ветки

Curated, caller-facing notes: CHANGELOG.md.
The list above is the raw commit history.

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 24 Jul 18:57

Changelog

  • 538188b docs(changelog): 0.1.1 — Homebrew tap и установка архива без ручной версии
  • e6e1508 feat(release): Homebrew tap для macOS; архив больше не требует вписывать версию
  • 97a3949 fix(release): каск-PR проверяется после релиза; govulncheck на теге; caveats
  • e03b307 fix(release): отказ по токену tap приходит раньше сборки; ветка PR названа явно

Curated, caller-facing notes: CHANGELOG.md.
The list above is the raw commit history.

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 24 Jul 17:57
9316447

Changelog

  • c45aca5 Preparation
  • b9dac50 chore(github): публикация оформлена — шаблоны, dependabot, релиз по тегу
  • 4aa5486 chore(live): id проектов переезжают в некоммитящийся .env
  • 88ae353 chore(live): у живого сьюта больше нет проекта по умолчанию
  • 824ea0f chore(reference): удалён второй источник правды, форма первого закреплена
  • cc6ad88 ci: actions закреплены на SHA, релизы получают provenance
  • 2be657c ci: govulncheck добавлен, staticcheck закреплён — пины противоположны намеренно
  • 9fc539e docs!: доки исполнены после миграции; три утверждения были ложью и до неё
  • f93bc97 docs(CLAUDE): два новых инварианта и то, чем они куплены
  • 3896f34 docs(CLAUDE): инвариант 15 — атомарная запись, и чем куплена каждая деталь
  • 95ad719 docs(claude): инвариант 22 фиксирует подсказку и её охрану
  • 775a70e docs(cmd): выправить doc-комментарии, отставшие от разъезда пакетов
  • 84994cc docs(contributing): main защищён — правила merge названы, а не подразумеваются
  • 7606e19 docs(files): у cp появилось описание; README перечисляет реальные ключи
  • bc78a4a docs(protocol): длинная строка нечитаема одним лейном и читаема другим — измерено
  • 5efebc7 docs(protocol): отсутствие окна у get_conversation доказано контролем, а не совпадением хэша
  • 4686911 docs(protocol): у get_conversation окна нет — 29 полей проверены, все игнорируются
  • 16f0f6b docs(readme): снято ещё одно ложное утверждение о том, что делает только fetch
  • a7cc292 docs(sync): dsx pin, README и CLAUDE.md — леджер под .dsx/, инвариант 17
  • 0dc263a docs(syncer): комментарий цитировал строку, которую сам же и переписал
  • 5724606 docs(syncer): ответы на два замечания ревью, одно из них на ложной посылке
  • ad2ade7 docs(syncer): снята переоценка в комментарии — глотание ошибки не единственное
  • fdb9cc0 docs(syncer): убрано ложное утверждение про diff в комментарии и CLAUDE.md
  • dc1ee97 feat(binary): открыт server→disk для файлов, которые read_file не отдаёт
  • 9316447 feat(ci,docs): поставляемые бинари запускаются перед выкладкой; установка без Go
  • 205c70b feat(cli)!: help --json отдаёт реестр вместо человеческой прозы
  • 80ae20d feat(cli)!: project, ds и plan становятся существительными; support-js уезжает к проекту
  • 0d76581 feat(cli)!: двухтокенная адресация noun+verb; conv переведён первым
  • 1350330 feat(cli): dsx -C — глобальный, до глагола, как у git
  • 072858c feat(cli): dsx projects печатает колонки id/name
  • bd02fa6 feat(cli): put предупреждает о леджере рядом
  • b1e42b3 feat(cli): tree и cat читают привязку каталога
  • eca408a feat(cli): мёртвая плоская форма называет замену, а не только dsx help
  • a354cf2 feat(cli): показать флаги команды по -h и перестать врать в usageFooter
  • 64fa6ad feat(cmd): ответ инструмента проходит через одно место и по умолчанию читаем
  • 8079bb4 feat(cmd): три необёрнутых инструмента, и починен справочник, из-за которого их не замечали
  • 0839a96 feat(conv): --json отдаёт разбираемый документ вместо строки в {"text":…}
  • 178d08d feat(conv): обрезанное тело спасается до целых элементов, а не до всего, что распарсилось
  • 711471d feat(conv): обрезанный транскрипт отвечает строкой, а не четвертью мегабайта
  • 02e27de feat(files)!: files становится существительным; preview переезжает под него
  • f2691de feat(mcp): уведомление о повторе на stderr
  • c348146 feat(members)!: member становится существительным; sharing уезжает к проекту
  • 0b2539e feat(reply): измеренные ответы инструментов рисуются для человека
  • 2fb83ad feat(sync)!: pull -n и push -n возвращают 3 при конфликтах — как настоящий запуск
  • a5551a9 feat(sync)!: status отвечает с диска, без единого запроса к серверу
  • a3d0672 feat(sync)!: sync-глаголы не берут аргументов вовсе
  • eaf0b9d feat(sync)!: только clone и pin называют проект; остальные читают его из леджера
  • 38739df feat(sync): clone — первый pull, названный своим именем
  • 6b1aa94 feat(sync): dsx diff — same/local-only/remote-only/differs, без хексов в контексте
  • d7af87b feat(sync): dsx fetch — узнать серверные байты, не трогая дерево
  • b55703e feat(sync): dsx push --force-with-lease; cmdSync разделён на cmdPull и cmdPush
  • edb36d3 feat(sync): dsx unpin — выход из привязки, которая ещё ничего не синкала
  • cd1bf33 feat(sync): fetch записывает весь листинг сервера, не только доказанное
  • 87ace80 feat(sync): глаголы находят корень снизу — dsx pull работает из подкаталога
  • 142b976 feat(sync): движок --force-with-lease — перезапись только того, что не двигалось
  • 5548ee4 feat(syncer): FindRoot — поиск леджера вверх по дереву, как git ищет .git
  • c6eb5aa feat(syncer): pull записывает снимок листинга, который и так держал в руках
  • 510ebc3 feat(syncer): stale proof — доказательство устарело, а не "не проверяли"
  • dc93939 feat(syncer): доказанное совпадение байт — Verified, не Conflicts
  • fe1c718 feat(syncer): конфликт называет способ посмотреть
  • c0442ad feat(syncer): счётчик передачи на stderr
  • 84327ef feat(syncer): фундамент бейзлайна fetch — отдельный файл, отдельный тип
  • 37ccdbd feat: cross-platform auth, exit codes, .dsxignore, doctor
  • 34dbc1a feat: dsx — прямой клиент Claude Design MCP
  • 04f2fde fix(cli)!: флаг перед глаголом больше не глотает команду с exit 0
  • dbca5a9 fix(cli): completion раздаёт флаги по команде, а не один список всем
  • 90aba7f fix(cli): «UUID вместо каталога» перестаёт советовать вред
  • 7839ff3 fix(cli): отчёт на пути ошибки перестаёт выглядеть успехом
  • 06c127f fix(cli): сухой прогон больше не создаёт каталог
  • 4418d80 fix(cli): убрать мёртвый код, разблокировать staticcheck
  • ec01dfe fix(cmd): хвостовой лишний аргумент — usage-ошибка, не тихий exit 0
  • 9de1308 fix(completion): fish проверяет позицию, а не вхождение слова
  • 49f3fa0 fix(completion): глагол без аргументов не предлагает файлы
  • 564e68e fix(dsxerr): назвать отказы файловой системы и протокола своими именами
  • 04d8cfb fix(files)!: снят мёртвый --render, и закрыта причина, по которой он таким стал
  • cd7d663 fix(files): tree и cat находят ledger, поднимаясь вверх, как sync-глаголы
  • 2339478 fix(live): судья fetch отстал от preview-лейна и падал раньше, чем судил
  • eabbd30 fix(mcp): ужесточить сборку оконного read_file
  • 4b4446d fix(members): add называет ту ошибку, которую нашёл, а не соседнюю
  • 5dcf9f9 fix(push): status после push кричал «server moved ahead» на то, что push и записал
  • 0cc7f20 fix(reply): состязательный разбор — 15 находок, каждая с мутацией
  • e1c36df fix(sync): clone отказывает каталогу с чужим .dsx
  • 3233aab fix(sync): отказ без леджера больше не обещает память, которой нет
  • 0cc4b58 fix(syncer)!: LoadState отказывается от повреждённого леджера
  • 565c0fa fix(syncer)!: endpoint в леджере — охранник, а не мёртвое поле
  • df3e1fd fix(syncer)!: push перестал воскрешать удалённое и конфликтовать вечно
  • 739bd9a fix(syncer)!: леджер переезжает в .dsx/state.json, без миграции
  • 3ccf599 fix(syncer)!: отчёт — запись прогона, а не снимок плана
  • 54840cf fix(syncer): .dsx — builtin-игнор ещё до переезда леджера
  • 4854416 fix(syncer): аренда покрывает и удаление — --force-with-lease --prune больше не стирает...
Read more