You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Support external material locators
Allow annotated material references and approved connector schemes while preserving notes through pull, review, and export. Keep external access host-managed and report archive portability accurately.
Co-authored-by: Goose <opensource@block.xyz>
Ai-assisted: true
* Name external locator provider, cover mixed arrays, de-duplicate scheme docs
Address review gaps on the external material locator work:
- Export audit names the provider (mcp/figma/github) instead of a flat
"connection-dependent" label, at the markdown layer only; the export
JSON access contract is unchanged. Adds externalLocatorScheme() as the
single source for scheme extraction.
- Add end-to-end coverage for a single node carrying a bare local path, a
bare https: URL, and an annotated mcp: declaration together through pull,
and widen export --strict to span mcp:/figma:/github:.
- Collapse the verbatim scheme list from six doc surfaces to one canonical
enumeration in references/schema.md; other docs defer to it. The code
allowlist remains the source of truth.
Co-authored-by: Chai Landau <chai@block.xyz>
Signed-off-by: Chai Landau <chai@block.xyz>
* Note externalLocatorScheme and provider-named audit in changeset
The changeset described the two original public helpers but not
externalLocatorScheme(), the third /core export added while naming the
export audit provider. Extend the entry to cover both.
Co-authored-by: Chai Landau <chai@block.xyz>
Signed-off-by: Chai Landau <chai@block.xyz>
---------
Signed-off-by: Chai Landau <chai@block.xyz>
Co-authored-by: Goose <opensource@block.xyz>
Co-authored-by: npub1ph5a5cnj7f3rlw4054e0etpcvd9afzm8ly7gh6zh5nszg2wewmwsxcukkk <0de9da6272f2623fbaafa572fcac38634bd48b67f93c8be857a4e02429d976dd@buzz.block.builderlab.xyz>
Co-authored-by: Chai Landau <chai@block.xyz>
Accept `https:`, `mcp:`, `figma:`, and `github:` external material locators and annotated `{ locator, note }` declarations. This widens public material arrays from `string[]` to `GhostMaterial[]`; TypeScript consumers of `/core` and `/embed` can use `materialLocator()` or `normalizeMaterial()` to read either shape, and `externalLocatorScheme()` to read an external locator's scheme. Pull JSON now includes optional `note`, export audit JSON includes optional `access`, the export audit names the external provider (for example `mcp`, `figma`, or `github`), and external-material omission messages use the new locator terminology.
Copy file name to clipboardExpand all lines: docs/purposes.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,7 +38,7 @@ into folders is a browsing convenience only.
38
38
|`manifest.yml`| Schema version and package id; the package's anchor. |
39
39
|`glossary.md`| The author's dictionary: every term with defined meaning in the corpus. ghost ships no fixed vocabulary. |
40
40
| Prose nodes (`<kind>.<slug>.md`, `<slug>.md`) | Durable brand guidance; each body answers why (the stance), with what (the materials), or how it is assembled (the patterns). Altitude lives in prose; narrower guidance names its condition. |
41
-
| Node frontmatter |`description` (retrieval payload) and optional `materials` (repo-relative paths/globs or HTTPS URLs for concrete materials the prose governs). |
41
+
| Node frontmatter |`description` (retrieval payload) and optional `materials` (repo-relative paths/globs or supported external locators, with optional retrieval notes; see the schema reference for the supported schemes). |
42
42
|`checks/`| Optional review assertions binding to nodes with `references`. Never a node source and never generation input. |
43
43
44
44
One resolution mechanism, read-only:
@@ -87,7 +87,8 @@ Two rules keep the reservation honest:
87
87
88
88
3.**Guidance smuggled into `materials`.** A material locator list that starts
89
89
carrying roles, rules, or semantic metadata becomes a second schema.
90
-
*Fix: keep `materials` as strings only; write meaning in the node body.*
90
+
*Fix: allow a short retrieval note when a locator is opaque, but keep roles,
91
+
rules, and meaning in the node body.*
91
92
92
93
4.**Checks becoming generation input.** Checks are feedback assertions. If they
93
94
appear in `gather`, the model starts writing to the test and the review
0 commit comments