@crvouga/mockingbird-service-posthog 2.0.0 → 2.2.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 CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog — @crvouga/mockingbird-service-posthog
2
2
 
3
+ ## 2.2.0 (2026-10-05)
4
+
5
+ ### Features
6
+
7
+ - add scripted local API mock ([4a76a11](https://github.com/crvouga/mockingbird/commit/4a76a114e2efad45934e0a93cf29576fd418e15c))
8
+ - manage experiments and read flags ([7691bd4](https://github.com/crvouga/mockingbird/commit/7691bd4d0ded5a75318cc54613b9798be83ae087))
9
+
10
+ ### Fixes and improvements
11
+
12
+ - support embedded route parameters ([127cad9](https://github.com/crvouga/mockingbird/commit/127cad997ef106950c1b866070eea191ba54403f))
13
+ - preserve namespace URLs after main sync ([62a15ce](https://github.com/crvouga/mockingbird/commit/62a15ce9bd453069bde69e3a30c91efc01f8871b))
14
+
15
+ ## 2.1.0 (2026-10-04)
16
+
17
+ ### Features
18
+
19
+ - use shared forms for service actions ([af19eb9](https://github.com/crvouga/mockingbird/commit/af19eb9d4896d8418f5db850f20808a89291b949))
20
+ - replace UI with Ant Design ([6547b4e](https://github.com/crvouga/mockingbird/commit/6547b4ef1663fb597ab515cce06245c82010407a))
21
+
22
+ ### Fixes and improvements
23
+
24
+ - fill the embedded viewport ([c1a35a4](https://github.com/crvouga/mockingbird/commit/c1a35a4789389ee9cd06c286d09bd47c4d06c71e))
25
+ - make dialog cleanup immediate ([0c1a3c5](https://github.com/crvouga/mockingbird/commit/0c1a3c5b12584d50c19dcae595b951b8e5417b9c))
26
+
3
27
  ## 2.0.0 (2026-10-04)
4
28
 
5
29
  ### ⚠️ Breaking changes
@@ -18,10 +42,6 @@
18
42
  - parse ISO journal timestamps ([20b39a2](https://github.com/crvouga/mockingbird/commit/20b39a2c738e278533d610dfc91f1cb3ae9b3f1e))
19
43
  - harden shared controls ([7822614](https://github.com/crvouga/mockingbird/commit/7822614f6cba0387aeb60ba7320b0379aa1ef690))
20
44
 
21
- ### Dependencies
22
-
23
- - `@crvouga/mockingbird-service-sqlite`
24
-
25
45
  ## 1.8.0 (2026-10-01)
26
46
 
27
47
  ### Features
package/README.md CHANGED
@@ -77,7 +77,8 @@ await admin("/flags/mobile-smart-links?namespace=w1", undefined, "DELETE") // ab
77
77
  | `POST /s/` | Session recordings: counted (`GET /__admin/recordings`), never stored. |
78
78
  | `GET /static/recorder.js`, `/static/{ver}/recorder.js` | An inert script. |
79
79
  | `GET /api/surveys/?token=`, `/api/web_experiments/?token=` | `{surveys: []}`, `{experiments: []}`. |
80
- | `GET/POST /api/projects/{id}/feature_flags/`, `PATCH …/{flagId}/` | Bearer personal key required. List pages `{count, next, previous, results}` (`limit`/`offset`, what feature-flags-cli follows); flags carry `filters.groups` / `multivariate` / `payloads` derived from the flag model, and create/patch parse `filters` back (see below). `flagId` is the numeric id or the key. |
80
+ | `GET/POST /api/projects/{id}/feature_flags/`, `GET/PATCH …/{flagId}/` | Bearer personal key required. List pages `{count, next, previous, results}` (`limit`/`offset`, what feature-flags-cli follows); flags carry `filters.groups` / `multivariate` / `payloads` derived from the flag model; experiment flags retain their full variant configuration, and create/patch parse `filters` back (see below). `flagId` is the numeric id or the key. |
81
+ | `GET/POST /api/projects/{id}/experiments/`, `GET/PATCH …/{experimentId}/` | Personal-key management of project experiments: name, parameters, metrics, dates, archive state, and a live linked flag. New draft flags have control/test variants and are inactive; setting `start_date` activates them. Setting `end_date` or `archived` preserves flag activity. Lists are newest-first with terminating limit/offset links (including namespace prefixes). Draft legacy variant/rollout/payload parameters update the shared flag; running flag changes use the feature-flag API. |
81
82
  | `POST /api/projects/{id}/query/` | HogQL `{query: {kind: "HogQLQuery", query}}` → `{results, columns}` from canned answers (`PUT /__admin/settings {"queryResults": […]}`), `{results: []}` otherwise. |
82
83
 
83
84
  Every route answers with and without its trailing slash. Errors use PostHog's
@@ -135,14 +136,15 @@ PostHog SDKs cannot add headers. Choose a namespace by:
135
136
  `Authorization: Bearer` on the management API.
136
137
  - `x-mockingbird-namespace`, for raw clients.
137
138
 
138
- The management API's `next` page URL is built from the request without the `/__admin/ns/` prefix; page
139
- through it with a credential-mapped personal key instead.
139
+ The management API's `next` page URL preserves the configured admin prefix and namespace.
140
+ Send the personal key in the Authorization header on each page request.
140
141
 
141
142
  ### Deliberately not modelled
142
143
 
143
144
  - Percentage rollouts, cohorts, group (organisation) targeting and local evaluation
144
145
  (`/api/feature_flag/local_evaluation`): flags evaluate deterministically from explicit
145
146
  overrides and a default.
147
+ - Experiment statistics, exposure cohorts, metric execution, special launch/archive/ship endpoints, approval policies, advanced experiment filters, and `feature_flag` configuration writes through experiments. Management flags use the existing namespace-wide project alias model; experiment records additionally filter by project id.
146
148
  - Session-recording content, heatmaps, surveys and web experiments (the endpoints answer empty).
147
149
  - HogQL execution: queries answer canned results.
148
150
  - Person profiles: `$identify` / `$set` events are stored for assertions but do not feed
package/SUPPORT.md CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  Generated from `openapi.yaml`; do not edit by hand.
4
4
 
5
- - operations in spec: **16**
6
- - supported by the mock: **16**
7
- - parity enabled: **16**
5
+ - operations in spec: **21**
6
+ - supported by the mock: **21**
7
+ - parity enabled: **21**
8
8
 
9
9
  | operationId | route | mock | parity | notes |
10
10
  | --- | --- | --- | --- | --- |
@@ -22,5 +22,10 @@ Generated from `openapi.yaml`; do not edit by hand.
22
22
  | `ListWebExperiments` | `GET /api/web_experiments` | ✅ supported | ✅ | |
23
23
  | `ListFeatureFlags` | `GET /api/projects/{projectId}/feature_flags` | ✅ supported | ✅ | |
24
24
  | `CreateFeatureFlag` | `POST /api/projects/{projectId}/feature_flags` | ✅ supported | ⚠️ unsafe (opt-in) | |
25
+ | `GetFeatureFlag` | `GET /api/projects/{projectId}/feature_flags/{flagId}` | ✅ supported | ✅ | |
25
26
  | `UpdateFeatureFlag` | `PATCH /api/projects/{projectId}/feature_flags/{flagId}` | ✅ supported | ⚠️ unsafe (opt-in) | |
27
+ | `ListExperiments` | `GET /api/projects/{projectId}/experiments` | ✅ supported | ✅ | |
28
+ | `CreateExperiment` | `POST /api/projects/{projectId}/experiments` | ✅ supported | ⚠️ unsafe (opt-in) | |
29
+ | `GetExperiment` | `GET /api/projects/{projectId}/experiments/{experimentId}` | ✅ supported | ✅ | |
30
+ | `UpdateExperiment` | `PATCH /api/projects/{projectId}/experiments/{experimentId}` | ✅ supported | ⚠️ unsafe (opt-in) | |
26
31
  | `RunQuery` | `POST /api/projects/{projectId}/query` | ✅ supported | ✅ | |
@@ -5,7 +5,7 @@ import {
5
5
  parseDuration,
6
6
  resolveAdminPrefix,
7
7
  specsFromState
8
- } from "./chunk-NRFKITRM.js";
8
+ } from "./chunk-SOC56HS3.js";
9
9
 
10
10
  // ../../adapters/node/dist/cli.js
11
11
  import { readFile as readFile2 } from "node:fs/promises";
@@ -844,4 +844,4 @@ export {
844
844
  createServer2 as createServer,
845
845
  serveTarget
846
846
  };
847
- //# sourceMappingURL=chunk-FM7IAA7L.js.map
847
+ //# sourceMappingURL=chunk-DSIEW2HP.js.map