Skip to content

v0.6.3

Choose a tag to compare

@github-actions github-actions released this 15 Jul 07:16
· 20 commits to master since this release
b8a805d

Five fixes: two Windows bugs (editor launch, non-UTF-8 locales), lint false positives
inside code fences, OpenAI GPT-5/o-series HTTP 400s, and missing compile lineage on
stub/legacy paths. Thanks to @VibeSan7 (#91, #92, #93) and @junghoon-vans (#88) for
the reports.

Fixed

  • Stub and legacy compiles now record compile lineage (#98). Articles born from a stub
    compile (maintain --fix) or compile --legacy were published without a lineage
    frontmatter block, so synto trace article reported "No lineage recorded" for them.
    Both paths now thread the compile-run id like the default concept path, and legacy
    runs are tracked in compile_runs too.

  • Review e (edit) works on Windows and never kills the session (#92). The action
    hardcoded a vi fallback, which doesn't exist on Windows, and the resulting
    FileNotFoundError unwound the whole synto review run. It now uses Click's
    cross-platform editor launcher (notepad fallback on Windows) and a launch failure
    prints a hint and returns to the review menu.

  • Lint no longer flags or rewrites content inside code fences and inline code (#93).
    JSON like ["apps/*", "packages/*"] in a fenced block was reported as a malformed
    link (with a corrupting [[...]] suggestion), and --fix could rewrite embed-like
    tokens inside fences. All malformed-link/embed/LaTeX/citation scanners now mask code
    regions first, like the wikilink rewriters always did.

  • Generated files are now written as UTF-8 regardless of the Windows locale (#91).
    On non-UTF-8 codepages (e.g. cp1251), synto init wrote the vault config with the
    system encoding, and the em dash in generated comments then crashed every command
    with UnicodeDecodeError. All file writes/reads and git output now pin UTF-8, a
    vault already broken this way gets an actionable error instead of a traceback, and
    a lint rule plus a guard test keep unpinned I/O from coming back.

  • OpenAI GPT-5/o-series models no longer fail with HTTP 400 (#88). Those models
    reject max_tokens (requiring max_completion_tokens) and non-default temperature;
    compile jobs failed per article. The client now learns both quirks from the provider's
    own 400 response, retries with the fix, and remembers it for the rest of the run —
    no model-name list, so Azure deployments, fine-tunes, and future model families work
    automatically.

Full Changelog: v0.6.2...v0.6.3