@aeptus/aexeo-emdash 0.1.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +121 -1
- package/dist/adapter.d.ts +12 -0
- package/dist/adapter.d.ts.map +1 -1
- package/dist/admin/Facts.d.ts +3 -0
- package/dist/admin/Facts.d.ts.map +1 -0
- package/dist/admin/Findings.d.ts +3 -0
- package/dist/admin/Findings.d.ts.map +1 -0
- package/dist/admin.d.ts +7 -0
- package/dist/admin.d.ts.map +1 -0
- package/dist/admin.js +492 -0
- package/dist/configured.d.ts.map +1 -1
- package/dist/configured.js +456 -21
- package/dist/data-route.d.ts +49 -0
- package/dist/data-route.d.ts.map +1 -0
- package/dist/facts-route.d.ts +7 -0
- package/dist/facts-route.d.ts.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -2
- package/dist/plugin.d.ts +13 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/sandbox-entry.js +47 -8
- package/dist/sandbox.d.ts.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/wasm-init.d.ts +3 -1
- package/dist/wasm-init.d.ts.map +1 -1
- package/package.json +16 -4
- package/wasm/aexeo_emdash_bridge.d.ts +16 -1
- package/wasm/aexeo_emdash_bridge.js +1 -1
- package/wasm/aexeo_emdash_bridge_bg.d.ts +12 -3
- package/wasm/aexeo_emdash_bridge_bg.js +65 -2
- package/wasm/aexeo_emdash_bridge_bg.wasm +0 -0
- package/wasm/aexeo_emdash_bridge_bg.wasm.d.ts +13 -11
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,124 @@ and the project follows [Semantic Versioning](https://semver.org/).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.3.0] - 2026-05-01
|
|
10
|
+
|
|
11
|
+
Adds an LLM-assisted authoring flow for the truth manifest
|
|
12
|
+
(`facts.json`) — a structured assertion of who the organization is,
|
|
13
|
+
what the products are, and the terminology to use/avoid. AI
|
|
14
|
+
assistants and search crawlers read it for citation grounding;
|
|
15
|
+
authoring it well is a content task, not engineering, but the
|
|
16
|
+
manifest's failure mode (a published manifest with hallucinated
|
|
17
|
+
content) is high-impact.
|
|
18
|
+
|
|
19
|
+
The plugin frames the question, validates the answer, and persists
|
|
20
|
+
the result. The editor's LLM generates. The split is enforced by
|
|
21
|
+
the prompt template, which mandates an interview phase before
|
|
22
|
+
producing JSON: the LLM must ask up to 4 prioritized questions
|
|
23
|
+
(terminology > identity > product/org split > descriptors) so the
|
|
24
|
+
failure mode shifts from confident hallucination to honest gaps.
|
|
25
|
+
|
|
26
|
+
**Compatibility:** verified against emdash `0.7.0` and `0.8.0`.
|
|
27
|
+
|
|
28
|
+
### Added
|
|
29
|
+
|
|
30
|
+
- **`/facts` admin page.** New entry in the plugin's adminPages.
|
|
31
|
+
Three-section UI: status of stored manifest, generate-prompt
|
|
32
|
+
(copy to clipboard for pasting into the editor's LLM), and
|
|
33
|
+
paste-and-validate (textarea with Validate + Save buttons; Save
|
|
34
|
+
is gated on a clean validation).
|
|
35
|
+
- **Manifest-aware truth scoring.** `scoreIntelligence` now accepts
|
|
36
|
+
an optional manifest argument; the plugin reads it from KV
|
|
37
|
+
(`facts:current`) before scoring and badges the dashboard widget's
|
|
38
|
+
truth stat with the actual signal source — `Truth (manifest+schema)`,
|
|
39
|
+
`Truth (schema only)`, etc. Closes the prior UX-honesty gap where
|
|
40
|
+
the truth score was computed in schema-only mode without telling
|
|
41
|
+
the editor.
|
|
42
|
+
- **`FACTS001` / `FACTS003` findings** on /findings. Surface
|
|
43
|
+
"no manifest authored yet" and "manifest disagrees with on-page
|
|
44
|
+
schema.org" so editors discover the authoring flow through their
|
|
45
|
+
existing surface. Cached under `meta:facts-findings` and
|
|
46
|
+
refreshed on Refresh + on Save, so the data path reads at zero
|
|
47
|
+
WASM cost.
|
|
48
|
+
- **Bridge surface:** `generateFactsPrompt(documents)` and
|
|
49
|
+
`validateFactsManifest(manifest, documents)` WASM exports.
|
|
50
|
+
`scoreIntelligence` gained an optional `manifest_json` parameter.
|
|
51
|
+
|
|
52
|
+
### Changed
|
|
53
|
+
|
|
54
|
+
- `wasm/aexeo_emdash_bridge_bg.d.ts` is now tracked in git
|
|
55
|
+
(gitignored everything else in `wasm/`). wasm-bindgen 0.2.118
|
|
56
|
+
doesn't emit a `_bg.d.ts` for the bundler target, so this file
|
|
57
|
+
is hand-maintained. The build script snapshots its contents
|
|
58
|
+
before each wasm-bindgen run and restores it (saving the new
|
|
59
|
+
emit under `.wasm-bindgen` for inspection) if a future toolchain
|
|
60
|
+
version begins emitting one — loud warning rather than silent
|
|
61
|
+
regression.
|
|
62
|
+
|
|
63
|
+
### Notes for hosts upgrading from 0.2.x
|
|
64
|
+
|
|
65
|
+
- A new sidebar entry "Truth manifest" appears under the plugin's
|
|
66
|
+
admin pages. No action required to enable.
|
|
67
|
+
- The dashboard widget's truth-score label now reads
|
|
68
|
+
`Truth (schema only)` until a manifest is authored. Same number,
|
|
69
|
+
more honest framing — no behavioral change.
|
|
70
|
+
- A new sitewide finding (`FACTS001`) appears on /findings until a
|
|
71
|
+
manifest is saved. Severity: warning. Authoring via the new
|
|
72
|
+
/facts page dismisses it.
|
|
73
|
+
|
|
74
|
+
## [0.2.0] - 2026-04-28
|
|
75
|
+
|
|
76
|
+
Adds the long-asked clickable routes on the findings page. Block
|
|
77
|
+
Kit can't render external links in any element type, so /findings
|
|
78
|
+
now ships as a React component registered via the plugin's
|
|
79
|
+
`adminEntry`. /document and the dashboard widget continue to use
|
|
80
|
+
Block Kit (no link needs there).
|
|
81
|
+
|
|
82
|
+
**Compatibility:** verified against emdash `0.7.0` and `0.8.0`.
|
|
83
|
+
|
|
84
|
+
### Added
|
|
85
|
+
|
|
86
|
+
- **Clickable routes on /findings.** Each row's route links to the
|
|
87
|
+
emdash edit URL for that document
|
|
88
|
+
(`/_emdash/admin/content/<collection>/<id>`). Published documents
|
|
89
|
+
also get a "live ↗" link to the public URL
|
|
90
|
+
(`<emdash:site_url><route>`). Drafts surface their status
|
|
91
|
+
(`draft`, `scheduled`, etc.) inline so editorial state is visible
|
|
92
|
+
at a glance.
|
|
93
|
+
- **`adminEntry` field** on the configured-mode plugin descriptor.
|
|
94
|
+
Points at `@aeptus/aexeo-emdash/admin`, which exports `pages`
|
|
95
|
+
registering the `<Findings/>` React component for `/findings`.
|
|
96
|
+
emdash's `usePluginPage` hook picks this up and renders the
|
|
97
|
+
React component in place of the Block Kit fallback.
|
|
98
|
+
- **Two new HTTP routes** the React component consumes:
|
|
99
|
+
- `POST /_emdash/api/plugins/aexeo-seogeo/data` — read current
|
|
100
|
+
findings + per-route metadata + computed URLs (no
|
|
101
|
+
re-evaluation).
|
|
102
|
+
- `POST /_emdash/api/plugins/aexeo-seogeo/refresh` — sweep the
|
|
103
|
+
configured collections, write findings to KV, return the same
|
|
104
|
+
payload as `/data` plus a refresh summary.
|
|
105
|
+
Both routes return JSON in the shape exported as `FindingsPayload`
|
|
106
|
+
from `dist/data-route.d.ts`. The shape is the wire contract
|
|
107
|
+
between plugin and admin component and is intentionally
|
|
108
|
+
additive — fields will be appended in future versions, never
|
|
109
|
+
renamed or removed.
|
|
110
|
+
- `react` declared as an optional peer dependency
|
|
111
|
+
(`^18.0.0 || ^19.0.0`). Optional because plugins that don't use
|
|
112
|
+
the React findings page (e.g. ones that override `adminEntry`)
|
|
113
|
+
don't need it; emdash hosts that DO render adminEntry components
|
|
114
|
+
always have React installed already.
|
|
115
|
+
|
|
116
|
+
### Changed
|
|
117
|
+
|
|
118
|
+
- `documentKey(route)` KV entries now store
|
|
119
|
+
`{ document, meta: { id, collection, status, slug, title } }`
|
|
120
|
+
instead of the bare `EmdashDocument`. The new metadata is what
|
|
121
|
+
the React component reads to construct edit / public URLs without
|
|
122
|
+
an extra DB round-trip per row. Pre-0.2.0 entries are
|
|
123
|
+
backwards-compatible — `readAllStoredDocuments` synthesizes a
|
|
124
|
+
minimal meta blob for legacy entries so a single corrupted-shape
|
|
125
|
+
row doesn't break the page.
|
|
126
|
+
|
|
9
127
|
## [0.1.2] - 2026-04-28
|
|
10
128
|
|
|
11
129
|
Functional patch. Three bugs flagged by the aeptus web team after
|
|
@@ -100,7 +218,9 @@ First public release.
|
|
|
100
218
|
`astro.config.mjs` for the WASM import to resolve to a
|
|
101
219
|
precompiled `WebAssembly.Module`. Not optional.
|
|
102
220
|
|
|
103
|
-
[Unreleased]: https://github.com/schiste/Aexeo/compare/aexeo-emdash-v0.
|
|
221
|
+
[Unreleased]: https://github.com/schiste/Aexeo/compare/aexeo-emdash-v0.3.0...HEAD
|
|
222
|
+
[0.3.0]: https://github.com/schiste/Aexeo/compare/aexeo-emdash-v0.2.0...aexeo-emdash-v0.3.0
|
|
223
|
+
[0.2.0]: https://github.com/schiste/Aexeo/compare/aexeo-emdash-v0.1.2...aexeo-emdash-v0.2.0
|
|
104
224
|
[0.1.2]: https://github.com/schiste/Aexeo/compare/aexeo-emdash-v0.1.1...aexeo-emdash-v0.1.2
|
|
105
225
|
[0.1.1]: https://github.com/schiste/Aexeo/compare/aexeo-emdash-v0.1.0...aexeo-emdash-v0.1.1
|
|
106
226
|
[0.1.0]: https://github.com/schiste/Aexeo/releases/tag/aexeo-emdash-v0.1.0
|
package/dist/adapter.d.ts
CHANGED
|
@@ -12,5 +12,17 @@ export interface EmdashContentItem {
|
|
|
12
12
|
canonical?: string | null;
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
|
+
export interface EmdashContentMeta {
|
|
16
|
+
id: string;
|
|
17
|
+
collection: string;
|
|
18
|
+
slug: string | null;
|
|
19
|
+
status: string;
|
|
20
|
+
title: string;
|
|
21
|
+
}
|
|
22
|
+
export interface AdaptedContent {
|
|
23
|
+
document: EmdashDocument;
|
|
24
|
+
meta: EmdashContentMeta;
|
|
25
|
+
}
|
|
15
26
|
export declare function contentItemToEmdashDocument(content: EmdashContentItem): EmdashDocument;
|
|
27
|
+
export declare function adaptContentItem(content: EmdashContentItem): AdaptedContent;
|
|
16
28
|
//# sourceMappingURL=adapter.d.ts.map
|
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,YAAY,CAAC;AAmBpE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE;QACJ,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,CAAC;CACH;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,iBAAiB,GACzB,cAAc,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,YAAY,CAAC;AAmBpE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE;QACJ,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,CAAC;CACH;AAOD,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IAIf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,iBAAiB,GACzB,cAAc,CAEhB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAkC3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Facts.d.ts","sourceRoot":"","sources":["../../src/admin/Facts.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAsC/B,wBAAgB,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAyLzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Findings.d.ts","sourceRoot":"","sources":["../../src/admin/Findings.tsx"],"names":[],"mappings":"AA2BA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,wBAAgB,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CA2L5C"}
|
package/dist/admin.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../src/admin.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,eAAO,MAAM,KAAK;;;CAMjB,CAAC"}
|