hippo-memory 1.2.1 → 1.3.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.
Files changed (108) hide show
  1. package/README.md +17 -0
  2. package/dist/cli.js +10 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/connectors/github/backfill.d.ts +48 -0
  5. package/dist/connectors/github/backfill.d.ts.map +1 -0
  6. package/dist/connectors/github/backfill.js +272 -0
  7. package/dist/connectors/github/backfill.js.map +1 -0
  8. package/dist/connectors/github/cli-impl.d.ts +24 -0
  9. package/dist/connectors/github/cli-impl.d.ts.map +1 -0
  10. package/dist/connectors/github/cli-impl.js +192 -0
  11. package/dist/connectors/github/cli-impl.js.map +1 -0
  12. package/dist/connectors/github/deletion.d.ts +43 -0
  13. package/dist/connectors/github/deletion.d.ts.map +1 -0
  14. package/dist/connectors/github/deletion.js +83 -0
  15. package/dist/connectors/github/deletion.js.map +1 -0
  16. package/dist/connectors/github/dlq.d.ts +108 -0
  17. package/dist/connectors/github/dlq.d.ts.map +1 -0
  18. package/dist/connectors/github/dlq.js +182 -0
  19. package/dist/connectors/github/dlq.js.map +1 -0
  20. package/dist/connectors/github/idempotency.d.ts +19 -0
  21. package/dist/connectors/github/idempotency.d.ts.map +1 -0
  22. package/dist/connectors/github/idempotency.js +25 -0
  23. package/dist/connectors/github/idempotency.js.map +1 -0
  24. package/dist/connectors/github/ingest.d.ts +67 -0
  25. package/dist/connectors/github/ingest.d.ts.map +1 -0
  26. package/dist/connectors/github/ingest.js +138 -0
  27. package/dist/connectors/github/ingest.js.map +1 -0
  28. package/dist/connectors/github/octokit-client.d.ts +36 -0
  29. package/dist/connectors/github/octokit-client.d.ts.map +1 -0
  30. package/dist/connectors/github/octokit-client.js +65 -0
  31. package/dist/connectors/github/octokit-client.js.map +1 -0
  32. package/dist/connectors/github/ratelimit.d.ts +20 -0
  33. package/dist/connectors/github/ratelimit.d.ts.map +1 -0
  34. package/dist/connectors/github/ratelimit.js +31 -0
  35. package/dist/connectors/github/ratelimit.js.map +1 -0
  36. package/dist/connectors/github/scope.d.ts +8 -0
  37. package/dist/connectors/github/scope.d.ts.map +1 -0
  38. package/dist/connectors/github/scope.js +13 -0
  39. package/dist/connectors/github/scope.js.map +1 -0
  40. package/dist/connectors/github/signature.d.ts +47 -0
  41. package/dist/connectors/github/signature.d.ts.map +1 -0
  42. package/dist/connectors/github/signature.js +58 -0
  43. package/dist/connectors/github/signature.js.map +1 -0
  44. package/dist/connectors/github/tenant-routing.d.ts +33 -0
  45. package/dist/connectors/github/tenant-routing.d.ts.map +1 -0
  46. package/dist/connectors/github/tenant-routing.js +61 -0
  47. package/dist/connectors/github/tenant-routing.js.map +1 -0
  48. package/dist/connectors/github/transform.d.ts +7 -0
  49. package/dist/connectors/github/transform.d.ts.map +1 -0
  50. package/dist/connectors/github/transform.js +103 -0
  51. package/dist/connectors/github/transform.js.map +1 -0
  52. package/dist/connectors/github/types.d.ts +87 -0
  53. package/dist/connectors/github/types.d.ts.map +1 -0
  54. package/dist/connectors/github/types.js +94 -0
  55. package/dist/connectors/github/types.js.map +1 -0
  56. package/dist/db.d.ts.map +1 -1
  57. package/dist/db.js +94 -1
  58. package/dist/db.js.map +1 -1
  59. package/dist/mcp/server.d.ts.map +1 -1
  60. package/dist/mcp/server.js +5 -4
  61. package/dist/mcp/server.js.map +1 -1
  62. package/dist/server.d.ts.map +1 -1
  63. package/dist/server.js +313 -2
  64. package/dist/server.js.map +1 -1
  65. package/dist/src/cli.js +10 -0
  66. package/dist/src/cli.js.map +1 -1
  67. package/dist/src/connectors/github/backfill.js +272 -0
  68. package/dist/src/connectors/github/backfill.js.map +1 -0
  69. package/dist/src/connectors/github/cli-impl.js +192 -0
  70. package/dist/src/connectors/github/cli-impl.js.map +1 -0
  71. package/dist/src/connectors/github/deletion.js +83 -0
  72. package/dist/src/connectors/github/deletion.js.map +1 -0
  73. package/dist/src/connectors/github/dlq.js +182 -0
  74. package/dist/src/connectors/github/dlq.js.map +1 -0
  75. package/dist/src/connectors/github/idempotency.js +25 -0
  76. package/dist/src/connectors/github/idempotency.js.map +1 -0
  77. package/dist/src/connectors/github/ingest.js +138 -0
  78. package/dist/src/connectors/github/ingest.js.map +1 -0
  79. package/dist/src/connectors/github/octokit-client.js +65 -0
  80. package/dist/src/connectors/github/octokit-client.js.map +1 -0
  81. package/dist/src/connectors/github/ratelimit.js +31 -0
  82. package/dist/src/connectors/github/ratelimit.js.map +1 -0
  83. package/dist/src/connectors/github/scope.js +13 -0
  84. package/dist/src/connectors/github/scope.js.map +1 -0
  85. package/dist/src/connectors/github/signature.js +58 -0
  86. package/dist/src/connectors/github/signature.js.map +1 -0
  87. package/dist/src/connectors/github/tenant-routing.js +61 -0
  88. package/dist/src/connectors/github/tenant-routing.js.map +1 -0
  89. package/dist/src/connectors/github/transform.js +103 -0
  90. package/dist/src/connectors/github/transform.js.map +1 -0
  91. package/dist/src/connectors/github/types.js +94 -0
  92. package/dist/src/connectors/github/types.js.map +1 -0
  93. package/dist/src/db.js +94 -1
  94. package/dist/src/db.js.map +1 -1
  95. package/dist/src/mcp/server.js +5 -4
  96. package/dist/src/mcp/server.js.map +1 -1
  97. package/dist/src/server.js +313 -2
  98. package/dist/src/server.js.map +1 -1
  99. package/dist/src/version.js +35 -0
  100. package/dist/src/version.js.map +1 -0
  101. package/dist/version.d.ts +25 -0
  102. package/dist/version.d.ts.map +1 -0
  103. package/dist/version.js +35 -0
  104. package/dist/version.js.map +1 -0
  105. package/extensions/openclaw-plugin/openclaw.plugin.json +1 -1
  106. package/extensions/openclaw-plugin/package.json +1 -1
  107. package/openclaw.plugin.json +1 -1
  108. package/package.json +1 -1
@@ -3,6 +3,7 @@ import { createHash } from 'node:crypto';
3
3
  import { writePidfile, removePidfile } from './server-detect.js';
4
4
  import { resolveTenantId } from './tenant.js';
5
5
  import { openHippoDb, closeHippoDb } from './db.js';
6
+ import { PACKAGE_VERSION } from './version.js';
6
7
  import { validateApiKey } from './auth.js';
7
8
  import { remember, recall, forget, promote, supersede, archiveRaw, authCreate, authList, authRevoke, auditList, } from './api.js';
8
9
  import { handleMcpRequest } from './mcp/server.js';
@@ -12,6 +13,13 @@ import { ingestMessage } from './connectors/slack/ingest.js';
12
13
  import { handleMessageDeleted } from './connectors/slack/deletion.js';
13
14
  import { writeToDlq } from './connectors/slack/dlq.js';
14
15
  import { resolveTenantForTeam } from './connectors/slack/tenant-routing.js';
16
+ import { verifyGitHubSignature } from './connectors/github/signature.js';
17
+ import { isGitHubWebhookEnvelope, isGitHubIssueEvent, isGitHubIssueCommentEvent, isGitHubPullRequestEvent, isGitHubPullRequestReviewCommentEvent, } from './connectors/github/types.js';
18
+ import { ingestEvent as ingestGitHubEvent } from './connectors/github/ingest.js';
19
+ import { handleCommentDeleted as handleGitHubCommentDeleted } from './connectors/github/deletion.js';
20
+ import { writeToDlq as writeToGitHubDlq } from './connectors/github/dlq.js';
21
+ import { resolveTenantForGitHub } from './connectors/github/tenant-routing.js';
22
+ import { computeIdempotencyKey as computeGitHubIdempotencyKey } from './connectors/github/signature.js';
15
23
  // Review patch #2: explicit allow-list for unauthenticated /v1/* routes.
16
24
  // New unauth routes MUST be added here AND get a corresponding entry in
17
25
  // tests/server-bearer-lockdown.test.ts. Do not gate auth elsewhere by
@@ -21,7 +29,10 @@ import { resolveTenantForTeam } from './connectors/slack/tenant-routing.js';
21
29
  // `buildContextWithAuth` / `requireAuth`. Adding a route here without
22
30
  // adding the corresponding `isPublicRoute` short-circuit in a handler is
23
31
  // a no-op (auth still applies), so the failure mode is fail-closed.
24
- const PUBLIC_ROUTES = new Set(['POST /v1/connectors/slack/events']);
32
+ const PUBLIC_ROUTES = new Set([
33
+ 'POST /v1/connectors/slack/events',
34
+ 'POST /v1/connectors/github/events',
35
+ ]);
25
36
  function isPublicRoute(method, path) {
26
37
  return PUBLIC_ROUTES.has(`${method} ${path}`);
27
38
  }
@@ -48,7 +59,8 @@ const VALID_KINDS = new Set([
48
59
  // HTTP /health response uses this; reading package.json synchronously here
49
60
  // would couple the daemon to its on-disk install path, which we want to
50
61
  // avoid for tests that mkdtemp a hippoRoot.
51
- const VERSION = '0.39.0';
62
+ // v1.3.1: source from src/version.ts so /health no longer reports stale 0.39.0.
63
+ const VERSION = PACKAGE_VERSION;
52
64
  // 1 MB body cap. The CLI never sends payloads near this; anything bigger is
53
65
  // almost certainly a misconfigured client or a deliberate memory-blowup attempt.
54
66
  const MAX_BODY_BYTES = 1024 * 1024;
@@ -686,6 +698,305 @@ async function handleRequest(req, res, opts, startedAt) {
686
698
  sendJson(res, 200, { ok: true, status: 'dlq' });
687
699
  return;
688
700
  }
701
+ // ── POST /v1/connectors/github/events ──
702
+ //
703
+ // GitHub webhook receiver. Mirrors the Slack route shape but with
704
+ // GitHub-specific idioms:
705
+ // 1. HMAC SHA-256 over the raw body (X-Hub-Signature-256), no timestamp.
706
+ // 2. Event type discriminated by the X-GitHub-Event header (not body.type).
707
+ // 3. X-GitHub-Delivery is required audit metadata (NOT the dedupe seam — see
708
+ // computeIdempotencyKey, which folds the signed body into the key so a
709
+ // replayed body with a fresh delivery UUID still dedupes).
710
+ // 4. Tenant resolved by installation.id → github_installations, then by
711
+ // repository.full_name → github_repositories (PAT-mode multi-tenant).
712
+ // 5. ALWAYS ACK 200 on signed envelopes (DLQ included). 401 only on bad
713
+ // signature; 404 only when GITHUB_WEBHOOK_SECRET is unset (don't expose
714
+ // the route's existence on builds where it's gated off).
715
+ if (method === 'POST' && path === '/v1/connectors/github/events') {
716
+ if (!isPublicRoute(method, path)) {
717
+ throw new HttpError(401, 'auth required');
718
+ }
719
+ const rawBody = await readBody(req);
720
+ const secret = process.env.GITHUB_WEBHOOK_SECRET;
721
+ if (!secret) {
722
+ res.writeHead(404, JSON_HEADERS);
723
+ res.end(JSON.stringify({ error: 'not found' }));
724
+ return;
725
+ }
726
+ const previousSecret = process.env.GITHUB_WEBHOOK_SECRET_PREVIOUS;
727
+ const sigHdr = req.headers['x-hub-signature-256'];
728
+ const eventHdr = req.headers['x-github-event'];
729
+ const deliveryHdr = req.headers['x-github-delivery'];
730
+ const sigStr = typeof sigHdr === 'string' ? sigHdr : null;
731
+ const eventName = typeof eventHdr === 'string' ? eventHdr : null;
732
+ const deliveryId = typeof deliveryHdr === 'string' ? deliveryHdr : null;
733
+ if (sigStr === null ||
734
+ !verifyGitHubSignature({
735
+ rawBody,
736
+ signature: sigStr,
737
+ webhookSecret: secret,
738
+ previousSecret,
739
+ })) {
740
+ throw new HttpError(401, 'invalid GitHub signature');
741
+ }
742
+ // Signature OK from here on. Everything else is ACK-200; bad envelopes go
743
+ // to the DLQ and a human can replay later.
744
+ // Cheap regex extraction of installation_id / repo for DLQ rows that fail
745
+ // to JSON.parse — gives operators something to triage.
746
+ const installationFromRaw = (() => {
747
+ const m = rawBody.match(/"installation"\s*:\s*\{[^}]*"id"\s*:\s*(\d+)/);
748
+ return m ? m[1] : null;
749
+ })();
750
+ const repoFromRaw = (() => {
751
+ const m = rawBody.match(/"full_name"\s*:\s*"([^"]+)"/);
752
+ return m ? m[1] : null;
753
+ })();
754
+ if (deliveryId === null) {
755
+ // Body was signed but caller omitted the audit header. Park.
756
+ const db = openHippoDb(opts.hippoRoot);
757
+ try {
758
+ writeToGitHubDlq(db, {
759
+ tenantId: process.env.HIPPO_TENANT ?? 'default',
760
+ rawPayload: rawBody,
761
+ error: 'missing X-GitHub-Delivery header',
762
+ bucket: 'parse_error',
763
+ eventName,
764
+ deliveryId: null,
765
+ signature: sigStr,
766
+ installationId: installationFromRaw,
767
+ repoFullName: repoFromRaw,
768
+ });
769
+ }
770
+ finally {
771
+ closeHippoDb(db);
772
+ }
773
+ sendJson(res, 200, { ok: true, status: 'dlq' });
774
+ return;
775
+ }
776
+ // Ping fires once at hook creation. Don't ingest, don't DLQ — just pong.
777
+ if (eventName === 'ping') {
778
+ sendJson(res, 200, { pong: true });
779
+ return;
780
+ }
781
+ const ALLOWED_EVENTS = new Set([
782
+ 'issues',
783
+ 'issue_comment',
784
+ 'pull_request',
785
+ 'pull_request_review_comment',
786
+ ]);
787
+ if (eventName === null || !ALLOWED_EVENTS.has(eventName)) {
788
+ const db = openHippoDb(opts.hippoRoot);
789
+ try {
790
+ writeToGitHubDlq(db, {
791
+ tenantId: process.env.HIPPO_TENANT ?? 'default',
792
+ rawPayload: rawBody,
793
+ error: `unhandled event: ${eventName ?? '(missing X-GitHub-Event)'}`,
794
+ bucket: 'unhandled',
795
+ eventName,
796
+ deliveryId,
797
+ signature: sigStr,
798
+ installationId: installationFromRaw,
799
+ repoFullName: repoFromRaw,
800
+ });
801
+ }
802
+ finally {
803
+ closeHippoDb(db);
804
+ }
805
+ sendJson(res, 200, { ok: true, status: 'dlq' });
806
+ return;
807
+ }
808
+ let body;
809
+ try {
810
+ body = JSON.parse(rawBody);
811
+ }
812
+ catch {
813
+ const db = openHippoDb(opts.hippoRoot);
814
+ try {
815
+ writeToGitHubDlq(db, {
816
+ tenantId: process.env.HIPPO_TENANT ?? 'default',
817
+ rawPayload: rawBody,
818
+ error: 'invalid JSON',
819
+ bucket: 'parse_error',
820
+ eventName,
821
+ deliveryId,
822
+ signature: sigStr,
823
+ installationId: installationFromRaw,
824
+ repoFullName: repoFromRaw,
825
+ });
826
+ }
827
+ finally {
828
+ closeHippoDb(db);
829
+ }
830
+ sendJson(res, 200, { ok: true, status: 'dlq' });
831
+ return;
832
+ }
833
+ if (!isGitHubWebhookEnvelope(body)) {
834
+ const db = openHippoDb(opts.hippoRoot);
835
+ try {
836
+ writeToGitHubDlq(db, {
837
+ tenantId: process.env.HIPPO_TENANT ?? 'default',
838
+ rawPayload: rawBody,
839
+ error: 'not a GitHub webhook envelope',
840
+ bucket: 'parse_error',
841
+ eventName,
842
+ deliveryId,
843
+ signature: sigStr,
844
+ installationId: installationFromRaw,
845
+ repoFullName: repoFromRaw,
846
+ });
847
+ }
848
+ finally {
849
+ closeHippoDb(db);
850
+ }
851
+ sendJson(res, 200, { ok: true, status: 'dlq' });
852
+ return;
853
+ }
854
+ const installationId = body.installation?.id != null ? String(body.installation.id) : null;
855
+ const repoFullName = body.repository?.full_name ?? null;
856
+ // Tenant resolution. Fail closed on multi-tenant installs with unknown
857
+ // routing — same policy as Slack.
858
+ let resolvedTenant;
859
+ {
860
+ const db = openHippoDb(opts.hippoRoot);
861
+ try {
862
+ resolvedTenant = resolveTenantForGitHub(db, {
863
+ installationId,
864
+ repoFullName,
865
+ });
866
+ }
867
+ finally {
868
+ closeHippoDb(db);
869
+ }
870
+ }
871
+ if (resolvedTenant === null) {
872
+ const db = openHippoDb(opts.hippoRoot);
873
+ try {
874
+ writeToGitHubDlq(db, {
875
+ tenantId: null,
876
+ rawPayload: rawBody,
877
+ error: `unroutable: installation_id=${installationId ?? '(none)'} repo=${repoFullName ?? '(none)'}`,
878
+ bucket: 'unroutable',
879
+ eventName,
880
+ deliveryId,
881
+ signature: sigStr,
882
+ installationId,
883
+ repoFullName,
884
+ });
885
+ }
886
+ finally {
887
+ closeHippoDb(db);
888
+ }
889
+ sendJson(res, 200, { ok: true, status: 'dlq' });
890
+ return;
891
+ }
892
+ const ctx = {
893
+ hippoRoot: opts.hippoRoot,
894
+ tenantId: resolvedTenant,
895
+ actor: 'connector:github',
896
+ };
897
+ // Dispatch by event header. Type guards cross-check the body shape against
898
+ // the header so a payload of one event type cannot satisfy another's guard.
899
+ if (eventName === 'issues' && isGitHubIssueEvent(body, 'issues')) {
900
+ if (body.action === 'deleted') {
901
+ // GitHub does fire issues.deleted (admin-initiated). Don't archive — V1
902
+ // policy is to log and let an operator decide. Archive could lose the
903
+ // memory if the issue is being moved between accounts.
904
+ const db = openHippoDb(opts.hippoRoot);
905
+ try {
906
+ writeToGitHubDlq(db, {
907
+ tenantId: resolvedTenant,
908
+ rawPayload: rawBody,
909
+ error: 'issues.deleted requires manual review',
910
+ bucket: 'unhandled',
911
+ eventName,
912
+ deliveryId,
913
+ signature: sigStr,
914
+ installationId,
915
+ repoFullName,
916
+ });
917
+ }
918
+ finally {
919
+ closeHippoDb(db);
920
+ }
921
+ sendJson(res, 200, { ok: true, status: 'dlq' });
922
+ return;
923
+ }
924
+ const ingestInput = { eventName: 'issues', payload: body };
925
+ const r = ingestGitHubEvent(ctx, { event: ingestInput, rawBody, deliveryId });
926
+ sendJson(res, 200, { ok: true, status: r.status, memoryId: r.memoryId });
927
+ return;
928
+ }
929
+ if (eventName === 'issue_comment' && isGitHubIssueCommentEvent(body, 'issue_comment')) {
930
+ if (body.action === 'deleted') {
931
+ const repo = body.repository?.full_name ?? '';
932
+ const artifactRef = `github://${repo}/issue/${body.issue.number}/comment/${body.comment.id}`;
933
+ const idempotencyKey = computeGitHubIdempotencyKey(eventName, rawBody);
934
+ const r = handleGitHubCommentDeleted(ctx, {
935
+ artifactRef,
936
+ idempotencyKey,
937
+ deliveryId,
938
+ eventName,
939
+ });
940
+ sendJson(res, 200, { ok: true, status: r.status, archivedCount: r.archivedCount });
941
+ return;
942
+ }
943
+ const ingestInput = { eventName: 'issue_comment', payload: body };
944
+ const r = ingestGitHubEvent(ctx, { event: ingestInput, rawBody, deliveryId });
945
+ sendJson(res, 200, { ok: true, status: r.status, memoryId: r.memoryId });
946
+ return;
947
+ }
948
+ if (eventName === 'pull_request' && isGitHubPullRequestEvent(body, 'pull_request')) {
949
+ const ingestInput = { eventName: 'pull_request', payload: body };
950
+ const r = ingestGitHubEvent(ctx, { event: ingestInput, rawBody, deliveryId });
951
+ sendJson(res, 200, { ok: true, status: r.status, memoryId: r.memoryId });
952
+ return;
953
+ }
954
+ if (eventName === 'pull_request_review_comment' &&
955
+ isGitHubPullRequestReviewCommentEvent(body, 'pull_request_review_comment')) {
956
+ if (body.action === 'deleted') {
957
+ const repo = body.repository?.full_name ?? '';
958
+ const artifactRef = `github://${repo}/pull/${body.pull_request.number}/review_comment/${body.comment.id}`;
959
+ const idempotencyKey = computeGitHubIdempotencyKey(eventName, rawBody);
960
+ const r = handleGitHubCommentDeleted(ctx, {
961
+ artifactRef,
962
+ idempotencyKey,
963
+ deliveryId,
964
+ eventName,
965
+ });
966
+ sendJson(res, 200, { ok: true, status: r.status, archivedCount: r.archivedCount });
967
+ return;
968
+ }
969
+ const ingestInput = {
970
+ eventName: 'pull_request_review_comment',
971
+ payload: body,
972
+ };
973
+ const r = ingestGitHubEvent(ctx, { event: ingestInput, rawBody, deliveryId });
974
+ sendJson(res, 200, { ok: true, status: r.status, memoryId: r.memoryId });
975
+ return;
976
+ }
977
+ // Header allow-listed but body shape didn't satisfy the matching guard.
978
+ {
979
+ const db = openHippoDb(opts.hippoRoot);
980
+ try {
981
+ writeToGitHubDlq(db, {
982
+ tenantId: resolvedTenant,
983
+ rawPayload: rawBody,
984
+ error: `body shape did not match X-GitHub-Event=${eventName}`,
985
+ bucket: 'parse_error',
986
+ eventName,
987
+ deliveryId,
988
+ signature: sigStr,
989
+ installationId,
990
+ repoFullName,
991
+ });
992
+ }
993
+ finally {
994
+ closeHippoDb(db);
995
+ }
996
+ sendJson(res, 200, { ok: true, status: 'dlq' });
997
+ return;
998
+ }
999
+ }
689
1000
  // ── MCP-over-HTTP/SSE transport (Task 11) ──
690
1001
  //
691
1002
  // Two routes implement an MCP HTTP transport alongside the stdio one. Both
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Single source of truth for the hippo-memory binary's package version.
3
+ *
4
+ * Bumped manually on every release alongside the four package manifests
5
+ * (package.json, openclaw.plugin.json, extensions/openclaw-plugin/package.json,
6
+ * extensions/openclaw-plugin/openclaw.plugin.json) and the lockfile.
7
+ *
8
+ * Used by:
9
+ * - src/db.ts rollback-safety guard (refuses to open a DB stamped with
10
+ * min_compatible_binary newer than this).
11
+ * - src/server.ts HTTP /health.
12
+ * - src/mcp/server.ts MCP serverInfo.
13
+ *
14
+ * Why not read package.json at runtime: the npm-published bundle ships
15
+ * compiled `dist/` files that may not have package.json on a relative path
16
+ * an ESM `import` can resolve cleanly, and a hardcoded constant survives
17
+ * any packager that drops .json files.
18
+ */
19
+ export const PACKAGE_VERSION = '1.3.1';
20
+ // (already 1.3.1 — kept this comment as a reminder: bump on every release.)
21
+ /**
22
+ * Compare two semver strings. Returns positive if a > b, 0 if equal, negative
23
+ * if a < b. Pre-release tags are not handled — releases use plain x.y.z.
24
+ */
25
+ export function compareSemver(a, b) {
26
+ const parse = (v) => v.split('.').map((n) => Number(n) || 0);
27
+ const [a1, a2, a3] = parse(a);
28
+ const [b1, b2, b3] = parse(b);
29
+ if (a1 !== b1)
30
+ return (a1 ?? 0) - (b1 ?? 0);
31
+ if (a2 !== b2)
32
+ return (a2 ?? 0) - (b2 ?? 0);
33
+ return (a3 ?? 0) - (b3 ?? 0);
34
+ }
35
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC;AACvC,4EAA4E;AAE5E;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS;IAChD,MAAM,KAAK,GAAG,CAAC,CAAS,EAAY,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/E,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5C,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Single source of truth for the hippo-memory binary's package version.
3
+ *
4
+ * Bumped manually on every release alongside the four package manifests
5
+ * (package.json, openclaw.plugin.json, extensions/openclaw-plugin/package.json,
6
+ * extensions/openclaw-plugin/openclaw.plugin.json) and the lockfile.
7
+ *
8
+ * Used by:
9
+ * - src/db.ts rollback-safety guard (refuses to open a DB stamped with
10
+ * min_compatible_binary newer than this).
11
+ * - src/server.ts HTTP /health.
12
+ * - src/mcp/server.ts MCP serverInfo.
13
+ *
14
+ * Why not read package.json at runtime: the npm-published bundle ships
15
+ * compiled `dist/` files that may not have package.json on a relative path
16
+ * an ESM `import` can resolve cleanly, and a hardcoded constant survives
17
+ * any packager that drops .json files.
18
+ */
19
+ export declare const PACKAGE_VERSION = "1.3.1";
20
+ /**
21
+ * Compare two semver strings. Returns positive if a > b, 0 if equal, negative
22
+ * if a < b. Pre-release tags are not handled — releases use plain x.y.z.
23
+ */
24
+ export declare function compareSemver(a: string, b: string): number;
25
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,UAAU,CAAC;AAGvC;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAO1D"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Single source of truth for the hippo-memory binary's package version.
3
+ *
4
+ * Bumped manually on every release alongside the four package manifests
5
+ * (package.json, openclaw.plugin.json, extensions/openclaw-plugin/package.json,
6
+ * extensions/openclaw-plugin/openclaw.plugin.json) and the lockfile.
7
+ *
8
+ * Used by:
9
+ * - src/db.ts rollback-safety guard (refuses to open a DB stamped with
10
+ * min_compatible_binary newer than this).
11
+ * - src/server.ts HTTP /health.
12
+ * - src/mcp/server.ts MCP serverInfo.
13
+ *
14
+ * Why not read package.json at runtime: the npm-published bundle ships
15
+ * compiled `dist/` files that may not have package.json on a relative path
16
+ * an ESM `import` can resolve cleanly, and a hardcoded constant survives
17
+ * any packager that drops .json files.
18
+ */
19
+ export const PACKAGE_VERSION = '1.3.1';
20
+ // (already 1.3.1 — kept this comment as a reminder: bump on every release.)
21
+ /**
22
+ * Compare two semver strings. Returns positive if a > b, 0 if equal, negative
23
+ * if a < b. Pre-release tags are not handled — releases use plain x.y.z.
24
+ */
25
+ export function compareSemver(a, b) {
26
+ const parse = (v) => v.split('.').map((n) => Number(n) || 0);
27
+ const [a1, a2, a3] = parse(a);
28
+ const [b1, b2, b3] = parse(b);
29
+ if (a1 !== b1)
30
+ return (a1 ?? 0) - (b1 ?? 0);
31
+ if (a2 !== b2)
32
+ return (a2 ?? 0) - (b2 ?? 0);
33
+ return (a3 ?? 0) - (b3 ?? 0);
34
+ }
35
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC;AACvC,4EAA4E;AAE5E;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS;IAChD,MAAM,KAAK,GAAG,CAAC,CAAS,EAAY,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/E,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5C,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AAC/B,CAAC"}
@@ -2,7 +2,7 @@
2
2
  "id": "hippo-memory",
3
3
  "name": "Hippo Memory",
4
4
  "description": "Biologically-inspired memory for AI agents. Decay by default, retrieval strengthening, sleep consolidation.",
5
- "version": "1.2.1",
5
+ "version": "1.3.1",
6
6
 
7
7
  "configSchema": {
8
8
  "type": "object",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hippo-memory",
3
- "version": "1.2.1",
3
+ "version": "1.3.1",
4
4
  "description": "Hippo Memory plugin for OpenClaw - biologically-inspired agent memory",
5
5
  "main": "index.ts",
6
6
  "openclaw": {
@@ -2,7 +2,7 @@
2
2
  "id": "hippo-memory",
3
3
  "name": "Hippo Memory",
4
4
  "description": "Biologically-inspired memory for AI agents. Decay by default, retrieval strengthening, sleep consolidation.",
5
- "version": "1.2.1",
5
+ "version": "1.3.1",
6
6
  "configSchema": {
7
7
  "type": "object",
8
8
  "additionalProperties": false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hippo-memory",
3
- "version": "1.2.1",
3
+ "version": "1.3.1",
4
4
  "description": "Biologically-inspired memory system for AI agents. Decay by default, strength through use.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",