@wtfalch/reporting 0.5.0 → 0.5.1
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/README.md +28 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -3,9 +3,12 @@
|
|
|
3
3
|
The estate's operational event log and the housekeeping tick behind it: a
|
|
4
4
|
writer that never fails a request, a claim protocol that needs no scheduler,
|
|
5
5
|
and the readers an operator opens. Per-app Postgres, a host-supplied logger,
|
|
6
|
-
a framework-neutral core and a Next entry. The design and its decisions
|
|
7
|
-
`docs/plans/reporting.md` and `docs/plans/reporting/core.md` in
|
|
8
|
-
`wtfalch/app-template
|
|
6
|
+
a framework-neutral core and a Next entry. The design and its decisions were
|
|
7
|
+
originally `docs/plans/reporting.md` and `docs/plans/reporting/core.md` in
|
|
8
|
+
`wtfalch/app-template`, which was archived 2026-09-24 and replaced by
|
|
9
|
+
`foundry`; those docs are a historical record only. The design history for
|
|
10
|
+
everything past 0.2.0 lives in this repo's own `docs/plans/errors.md` and
|
|
11
|
+
`CHANGELOG.md`.
|
|
9
12
|
|
|
10
13
|
Three records make up reporting on the estate. This package holds the
|
|
11
14
|
**events** (what the system did: jobs, drains, alerts, an integration saying
|
|
@@ -15,6 +18,10 @@ row is transactional and its actor is unforgeable; an event row is best
|
|
|
15
18
|
effort. The two share column names so a reader can walk between them, and
|
|
16
19
|
nothing else.
|
|
17
20
|
|
|
21
|
+
## Status
|
|
22
|
+
|
|
23
|
+
Published: yes, v0.5.1, 2026-09-28
|
|
24
|
+
|
|
18
25
|
## Install
|
|
19
26
|
|
|
20
27
|
```sh
|
|
@@ -136,6 +143,24 @@ every row regardless.
|
|
|
136
143
|
|
|
137
144
|
## Analytics (0.2.0)
|
|
138
145
|
|
|
146
|
+
**Topology, today:** this package is a library, not a host. `createReporting({
|
|
147
|
+
db, ... })` binds to whichever Postgres the calling app already has, and
|
|
148
|
+
every table below lives in that one app's own database. `tenantId` scopes a
|
|
149
|
+
read to one organisation *within* that single app's database — it does not
|
|
150
|
+
let a console outside that app read anything. There is no cross-app or
|
|
151
|
+
cross-company read: one company's own Boule sees only the rows its own
|
|
152
|
+
process wrote.
|
|
153
|
+
|
|
154
|
+
**Topology, target (settled 2026-09-28, planned after launch):** one shared
|
|
155
|
+
reporting collector, org-scoped like `@wtfalch/files` and `@wtfalch/ai` —
|
|
156
|
+
every app's `reporting` calls point at that one shared store instead of a
|
|
157
|
+
database of its own, row-level scoping keeps one company's rows out of
|
|
158
|
+
another's reads, Archon reads totals across every company, and each
|
|
159
|
+
company's own Boule reads only its own organisation's slice. Not built yet:
|
|
160
|
+
today's shape is the per-app library described above, and the shared-host
|
|
161
|
+
change (or a lighter "point every app's `reporting` at one app's database"
|
|
162
|
+
approach) is an open architecture question for whoever picks it up next.
|
|
163
|
+
|
|
139
164
|
Three tables and two writers. `reporting_analytics` holds raw rows for a
|
|
140
165
|
window (`analytics.retention_days`, default 90); `reporting_analytics_daily`
|
|
141
166
|
and `reporting_analytics_weekly` hold counts with no identifier in any column
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wtfalch/reporting",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"description": "The estate's operational event log and housekeeping tick: a writer that never fails a request, a claim protocol that needs no scheduler, and the readers an operator opens. Per-app Postgres, host-supplied logger, framework-neutral core with a Next entry.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|