Hacker News Digest

Тег: #yaml

Постов: 2

POML: Prompt Orchestration Markup Language (github.com)

POML — язык разметки Prompt Orchestration Markup от Microsoft.
Проект в открытом доступе на GitHub: microsoft/poml.

  • Назначение: структурировать, версионировать и переиспользовать промпты для LLM.
  • Формат: YAML-подобный, читаемый человеком и парсером.
  • Возможности:
    – параметризованные шаблоны,
    – условные ветвления,
    – импорт фрагментов,
    – метаданные (автор, версия, модель).
  • CLI: poml build → компиляция в чистый текст, poml test → прогон с примерами.
  • CI/CD: экшены GitHub для валидации и деплоя промптов.
  • Интеграции: Python SDK, VS Code-расширение, экспорт в OpenAI, Azure, Bedrock.

by avestura • 10 августа 2025 г. в 06:26 • 85 points

ОригиналHN

#poml#yaml#xml#dsl#python#vscode#openai#azure#bedrock#github

Комментарии (36)

  • POML — это XML-подобный DSL от Microsoft Research для «view-слоя» промптов, но выглядит как «JSX, только хуже» и заставляет писать код в строках.
  • Участники сравнивают его с YAML-промптами GitHub, BAML (TypeScript-подобные схемы), Jinja и обычным XML, споря о необходимости новой библиотеки.
  • Критика: один контрибьютор при $3T-спонсоре, нет SDK для .NET/C#, лишний tooling, «IP squatting», циклы в XML выглядят как костыль.
  • Ирония: из-за потребности в точности неформальные LLM-промпты всё структурнее, как юридические документы.

Cursed Knowledge (immich.app) 🔥 Горячее

  • Zitadel: JS-движок не поддерживает именованные группы в regex.
  • Entra: PKCE есть, но не указан в OpenID-доке → клиенты думают, что нет.
  • EXIF: размеры в метаданных могут не совпадать с реальными.
  • YAML: пробелы ведут себя неочевидно.
  • Windows: скрытые файлы нельзя открыть флагом "w"; опция SMB hide dot files усложняет жизнь.
  • Git: автопреобразование LF ↔ CRLF ломает bash-скрипты.
  • Cloudflare Workers: fetch по умолчанию использует http, даже если указан https.
  • Android/iOS: без разрешения на геолокацию GPS-данные могут тихо удаляться из фото.
  • PostgreSQL NOTIFY: работает в транзакции → WAL растёт каждые 5 с при использовании socket.io-адаптера.
  • npm-скрипты: каждый запрос к реестру → плохой health-check.
  • JS-«пакетный» спамер: добавляет 50 лишних зависимостей «для обратной совместимости».
  • bcrypt: учитывает только первые 72 байта пароля.
  • JS Date: годы и дни считаются с 1, месяцы — с 0.
  • ESM ↔ CJS: до Node 20.8 смешанный импорт мог вызвать segfault.
  • PostgreSQL: максимум 65 535 параметров — большие bulk-insert ломаются.
  • Clipboard API и др. работают только в HTTPS/localhost.
  • TypeORM: .remove() удаляет поле id из переданного объекта.

by bqmjjx0kac • 07 августа 2025 г. в 23:34 • 411 points

ОригиналHN

#javascript#yaml#windows#git#cloudflare-workers#android#ios#postgresql#npm

Комментарии (131)

  • Пользователи восторженно приняли идею «cursed knowledge» — каталога кошмарных нюансов, сопровождаемого коммитом-фиксом.
  • Обсуждали PostgreSQL-лимит в 65 k placeholder’ов, причины появления 50 лишних npm-пакетов, скрытые потоки NTFS/ADS и «призрачные» файлы macOS.
  • Упомянули, что bcrypt обрезает пароль до 72 байт, Cloudflare Workers могут игнорировать https, EXIF-даты в Immich — постоянная головная боль.
  • Поделились личным опытом: неразрывные пробелы, case-insensitive имена в macOS, Java-классы в Oracle, «магия» YAML-парсеров.
  • Кто-то предложил превратить подборку в репозиторий-«Awesome Cursed», другие подчеркнули пользу такого «терапевтического» лога ошибок.