liquidware-ninjaSecond brain & toolkit
Personal project. Research and learning only. Not for production. No warranty.Not for production
  • Built on my own time for research and learning. Not affiliated with, endorsed by or supported by my employer, Liquidware or Microsoft.
  • Bring your own Liquidware licenses. Don't run any of it in production or against tenants and subscriptions that matter. Test in a dedicated lab first.
  • Provided "as is", without warranty of any kind, under each repository's license. You use it at your own risk and own the Azure charges it incurs.
  • Contributions and forks are welcome and encouraged on public repos. See Contribute.

0012. Family format: the upstream asks file's path set in kb.toml

Context and Problem Statement

The shared scripts read a KB's upstream asks (upstream.yaml, gaps and asks for a vendor) from a fixed folder named after one vendor, and the template doesn't ship its schema. A KB about another vendor can't use the data file without changing the shared scripts, which the format forbids. This KB keeps its asks as a Markdown table (liquidware/upstream.md) for now. Should the path move into kb.toml?

Considered Options

  • An optional upstream path in kb.toml, read by kblib.py, with upstream.schema.json and the generated table shipped in the template
  • Keep the fixed path and let other KBs use Markdown

Decision Outcome

Chosen option: "A path in kb.toml", because kb.toml already holds every per-KB setting, and the upstream asks are part of the family's shared layout.

Consequences

  • Good, because every KB can track vendor asks as data with the same schema and checks.
  • Bad, because it's a change to the shared scripts and template, adopted by PR in every KB.

More Information

A family format change, raised with 2ndbrain, which owns the format (2ndbrain). Once adopted, this KB moves its table to liquidware/upstream.yaml.

Two more per-KB values sit in the shared scripts today and could move to kb.toml in the same change: the code languages the prior-art check searches (Python and TypeScript; this KB would want Bicep and PowerShell), and the examples in the known-errors schema's descriptions.

Linked from 2 pages