Skip to content

Arkitect 2.4.1

Choose a tag to compare

@github-actions github-actions released this 20 Oct 23:29
· 19 commits to main since this release
888a99a

Fixed

  • A Draw.io icon node whose search the resolver is unsure of now draws a labelled box, listed under icons.missing with its reason and up to four alternatives, instead of the leading guess: java drew the JavaScript file mark, tempo Temporal and nat gateway Amazon API Gateway, and 38 rows of the icon answer key drew a mark the key rejects. This changes what existing specs draw: a node named by a weak, prefix-only, close or generic match is a box until its spec names the id; one product's same-title variants still draw their leader and are listed under icons.ambiguous. report --draft lists such a node as unsure, drawn as a labelled box, no longer not found. Pattern 10 names its two AgentCore marks by exact id. The build, the build report's namesAProduct and validate share one verdict, unattended() in find-icon.mjs (#432).
  • Draw.io's namesAProduct and validate's product warning no longer recommend an on-demand mark, which ships no bytes, so the icon node they handed over drew the same plain box and the warning could never clear: Tableau and Power BI among them. A plain box named for a bundled product is listed and warned as before (#434).
  • Draw.io validate and analyze now report a missing input concisely instead of printing a Node stack trace (#436).
  • Both icon searches answer an exact id or ref as that entry, as the builders already drew it, instead of searching it as text: drawio icon databases/postgresql answered "weak match" with Amazon RDS first, drawio icon data-platforms/tableau "No pack has it", and excalidraw icon icons:41, the item named "java", offered the Icons8 logo. Draw.io's compact answer is confident: true with that id, or its on-demand note; Excalidraw's draws that ref, or names why it is a placeholder (#443).
  • One shared-pack mark has one id in both engines: Draw.io reads Excalidraw's drawio:<pack>/<slug>, and Excalidraw reads Draw.io's <pack>/<slug> when it is exactly a catalog id, so a spec printed by one engine builds in the other with its marks. This changes what existing specs draw: a node naming either spelling now draws that mark where it drew a labelled box or a placeholder; shared-icon-packs.spec.json built with Draw.io draws 4 of 4 icons, not 1. A Draw.io node naming an Excalidraw library ref (<library>:<n>) is listed under icons.missing as one, without alternatives. Each references/editing.md names the switch (#440).
  • arkitect report --draft replays the spec as the build that drew it does. It reads a spec with a leading byte order mark, as Windows PowerShell writes one, where it refused one the builders accept as not valid JSON (#430). It replays the build report in the style the build loads from the same store, where it used the house style and listed a kind the person's applied style adds under unknownKinds, drawn as flow; the line above those entries now says which style it replayed, an applied style the build ignores is named, and the new --defaults replays the house style, as build --defaults draws. draftReport() takes that style and still defaults to the house style (#429). Each Draw.io icon line names its node, as Excalidraw's do: node `api`: `aws/aws-lambda`, aws pack where it printed the query, so two nodes on one query read as two; the build's icons.missing, ambiguous, needsFetch and lifecycle entries gain that node field, and an ambiguous line no longer ends in a bare alternatives (#409).
  • A rebuild over a diagram someone added to names every added shape and keeps its backup, as #376 promised, in two cases it missed. Draw.io compares a cell with the rebuilt cells of its own page, where an id on another page passed it as kept, so a cell added to one page went with nothing said when another page used its id; a page the rebuild no longer draws names its cells too (#425). Excalidraw excuses an unstamped element only where the rebuild draws chrome of its type, the title or legend of a scene built before chrome was stamped, where any drawn shape did, so a shape added at the top-left of one went with nothing said. In both, retention then deleted the only backup holding it. Nothing a build draws changes (#426).