@anodb/core 0.7.1 → 0.10.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.
Files changed (57) hide show
  1. package/PROTOCOL.md +30 -7
  2. package/README.md +82 -40
  3. package/dist/anodb.d.ts +1 -27
  4. package/dist/anodb.js +2 -151
  5. package/dist/anodb.js.map +1 -1
  6. package/dist/blob.d.ts +3 -3
  7. package/dist/blob.js +1 -1
  8. package/dist/blob.js.map +1 -1
  9. package/dist/cli/init.js +5 -2
  10. package/dist/cli/init.js.map +1 -1
  11. package/dist/cli/main.js +0 -0
  12. package/dist/crypto.d.ts +2 -2
  13. package/dist/crypto.js +2 -2
  14. package/dist/crypto.js.map +1 -1
  15. package/dist/db.d.ts +9 -10
  16. package/dist/db.js +28 -33
  17. package/dist/db.js.map +1 -1
  18. package/dist/defaults.d.ts +3 -2
  19. package/dist/defaults.js +7 -5
  20. package/dist/defaults.js.map +1 -1
  21. package/dist/drivers/browser.d.ts +2 -1
  22. package/dist/drivers/browser.js +4 -1
  23. package/dist/drivers/browser.js.map +1 -1
  24. package/dist/index.d.ts +4 -7
  25. package/dist/index.js +2 -3
  26. package/dist/index.js.map +1 -1
  27. package/dist/kysely.d.ts +10 -5
  28. package/dist/kysely.js +3 -2
  29. package/dist/kysely.js.map +1 -1
  30. package/dist/links.d.ts +8 -0
  31. package/dist/links.js +16 -0
  32. package/dist/links.js.map +1 -0
  33. package/dist/policy.d.ts +16 -0
  34. package/dist/policy.js +29 -0
  35. package/dist/policy.js.map +1 -0
  36. package/dist/react.d.ts +3 -2
  37. package/dist/react.js +3 -1
  38. package/dist/react.js.map +1 -1
  39. package/dist/result-types.d.ts +13 -0
  40. package/dist/result-types.js +157 -0
  41. package/dist/result-types.js.map +1 -0
  42. package/dist/schema.d.ts +19 -2
  43. package/dist/schema.js +36 -5
  44. package/dist/schema.js.map +1 -1
  45. package/dist/sharing.d.ts +18 -23
  46. package/dist/sharing.js +56 -99
  47. package/dist/sharing.js.map +1 -1
  48. package/dist/store.d.ts +8 -30
  49. package/dist/store.js +35 -86
  50. package/dist/store.js.map +1 -1
  51. package/dist/types.d.ts +6 -0
  52. package/dist/ui.d.ts +131 -0
  53. package/dist/ui.js +361 -0
  54. package/dist/ui.js.map +1 -0
  55. package/docs/DECISIONS.md +5 -0
  56. package/docs/DESIGN.md +4 -18
  57. package/package.json +3 -2
package/dist/cli/init.js CHANGED
@@ -346,6 +346,7 @@ import { openDB } from './db${ts ? '' : '.js'}'
346
346
  // Wrap your app: <DBProvider><App /></DBProvider>. Then in any component:
347
347
  // const todos = useQuery((db) => db.selectFrom('todo').selectAll(), [])
348
348
  // await db.insertInto('todo').values({ title: 'Milk', done: false }).execute() // const db = useAnoDB()
349
+ // Ready-made sharing UI: <PairDevice />, <DeviceList />, <AddMember space={id} />, <Invitations />, <Members space={id} />
349
350
  export function DBProvider({ children, fallback = null }${ts ? ': { children: ReactNode; fallback?: ReactNode }' : ''}) {
350
351
  const [db, setDb] = useState${ts ? '<Awaited<ReturnType<typeof openDB>> | null>' : ''}(null)
351
352
  const [error, setError] = useState${ts ? '<Error | null>' : ''}(null)
@@ -354,7 +355,7 @@ export function DBProvider({ children, fallback = null }${ts ? ': { children: Re
354
355
  }, [])
355
356
  if (error) {
356
357
  const code = (error${ts ? ' as { code?: string }' : ''}).code
357
- return <p>{code === 'tab-locked' ? 'This app is already open in another tab.' : \`Could not open the database: \${error.message}\`}</p>
358
+ return <p>{code === 'tab-locked' ? error.message : \`Could not open the database: \${error.message}\`}</p>
358
359
  }
359
360
  if (!db) return fallback
360
361
  return <AnoDBProvider db={db}>{children}</AnoDBProvider>
@@ -364,8 +365,10 @@ export function DBProvider({ children, fallback = null }${ts ? ': { children: Re
364
365
  export function schemaTemplate() {
365
366
  return `import { defineSchema } from '@anodb/core'
366
367
 
367
- // Each table automatically gets: id, space, createdAt, updatedAt.
368
+ // Each table automatically gets: id, space, createdAt, updatedAt, createdBy, updatedBy.
368
369
  // Column types: 'text' | 'integer' | 'real' | 'boolean' | 'json'
370
+ // Rows go to your personal space by default (encrypted, only your devices).
371
+ // Share with db.createSpace() + invitations. Only the creator may edit a row: owned({ ... }).
369
372
  export const schema = defineSchema({
370
373
  todo: { title: 'text', done: 'boolean' },
371
374
  })
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
package/dist/cli/main.js CHANGED
File without changes
package/dist/crypto.d.ts CHANGED
@@ -15,9 +15,9 @@ export declare function randomBytes(n: number): Uint8Array;
15
15
  export declare function randomHex(bytes: number): string;
16
16
  /** Tag of a space stream for one key epoch. Only holders of the key can compute it. */
17
17
  export declare function spaceTag(epochKey: Uint8Array): string;
18
- /** Tag of a device inbox (key delivery, invites, pairing). */
18
+ /** Tag of a device inbox (key delivery, invitations, pairing). */
19
19
  export declare function inboxTag(devicePubkey: string): string;
20
- /** Tag and symmetric key derived from an invite link / pairing secret. */
20
+ /** Tag and symmetric key derived from a pairing secret. */
21
21
  export declare function secretTag(secret: string): string;
22
22
  export declare function secretKeyFor(secret: string): Uint8Array;
23
23
  export declare function keyId(epochKey: Uint8Array): string;
package/dist/crypto.js CHANGED
@@ -62,11 +62,11 @@ const h32 = (s) => bytesToHex(sha256(utf8ToBytes(s))).slice(0, 32);
62
62
  export function spaceTag(epochKey) {
63
63
  return h32(`anodb/v2/space/${bytesToHex(epochKey)}`);
64
64
  }
65
- /** Tag of a device inbox (key delivery, invites, pairing). */
65
+ /** Tag of a device inbox (key delivery, invitations, pairing). */
66
66
  export function inboxTag(devicePubkey) {
67
67
  return h32(`anodb/v2/inbox/${devicePubkey}`);
68
68
  }
69
- /** Tag and symmetric key derived from an invite link / pairing secret. */
69
+ /** Tag and symmetric key derived from a pairing secret. */
70
70
  export function secretTag(secret) {
71
71
  return h32(`anodb/v2/secret-tag/${secret}`);
72
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
package/dist/db.d.ts CHANGED
@@ -2,11 +2,11 @@ import { type Compilable, type Kysely } from 'kysely';
2
2
  import { BlobStore } from './blob.js';
3
3
  import { type CapturedCell } from './capture.js';
4
4
  import { Clock } from './hlc.js';
5
+ import { type Role } from './membership.js';
5
6
  import type { KeyStore } from './keystore/types.js';
6
7
  import { type KyselyDatabase, type SqlExecutor } from './kysely.js';
7
- import { type StreamPayload } from './protocol.js';
8
+ import { type Change, type StreamPayload } from './protocol.js';
8
9
  import type { P2POptions } from './p2p.js';
9
- import { PublicData } from './public.js';
10
10
  import { type RelayPoolOptions } from './relay-pool.js';
11
11
  import { type Signer } from './signer.js';
12
12
  import { Store } from './store.js';
@@ -35,7 +35,6 @@ export interface AnoDBOptions<S extends SchemaDefinition> {
35
35
  /** `'wrap'` (default): envelopes are signed by throwaway keys. `'none'`: signed by the device key. */
36
36
  metadataProtection?: 'wrap' | 'none';
37
37
  relays?: readonly string[];
38
- discoveryRelays?: readonly string[];
39
38
  /** A write leaves the outbox after this many relays accepted it. Default: min(2, relays.length). */
40
39
  minAcks?: number;
41
40
  retryIntervalMs?: number;
@@ -111,8 +110,6 @@ export declare class AnoDBCore<S extends SchemaDefinition> {
111
110
  readonly pubkey: string;
112
111
  readonly npub: string;
113
112
  readonly devicePubkey: string;
114
- /** Public Nostr data (profiles, notes, relay lists). */
115
- readonly nostr: PublicData;
116
113
  /** Encrypted files on Blossom servers; store the returned reference in a `json` column. */
117
114
  readonly blobs: BlobStore;
118
115
  protected readonly store: Store;
@@ -134,7 +131,7 @@ export declare class AnoDBCore<S extends SchemaDefinition> {
134
131
  _init(): Promise<void>;
135
132
  /** Extension point for subclasses. */
136
133
  protected afterInit(): Promise<void>;
137
- /** Switch the default (personal) space; rebuilds projections and their capture triggers. */
134
+ /** Switch the personal space (the default for inserts); rebuilds projections and their capture triggers. */
138
135
  protected setPersonal(space: string): void;
139
136
  get selectFrom(): Kysely<KyselyDatabase<S>>['selectFrom'];
140
137
  get insertInto(): Kysely<KyselyDatabase<S>>['insertInto'];
@@ -155,13 +152,11 @@ export declare class AnoDBCore<S extends SchemaDefinition> {
155
152
  protected reopenGate(): void;
156
153
  /** Validate captured cells and commit them as signed, encrypted messages. */
157
154
  protected commitCaptured(cells: CapturedCell[]): Promise<void>;
158
- /** Writes to public tables become signed standard Nostr events (implemented by AnoDB). */
159
- protected commitPublic(_cells: CapturedCell[]): Promise<void>;
160
155
  /** Hook (v0.3: automatic snapshots / key rotation). */
161
156
  protected afterLocalWrite(_spaces: string[]): void;
162
157
  /** Throws unless this device may write to `space`. */
163
158
  protected assertCanWrite(space: string): void;
164
- /** Id of this identity's personal space (default for inserts). */
159
+ /** Id of this identity's personal space: the default for inserts, readable only by your own devices. */
165
160
  get personalSpace(): string;
166
161
  spaces(): SpaceInfo[];
167
162
  protected loadKeys(): Promise<void>;
@@ -200,10 +195,14 @@ export declare class AnoDBCore<S extends SchemaDefinition> {
200
195
  protected ingest(source: string, outer: NostrEvent): IngestResult;
201
196
  /** Hook after a new remote message was stored (v0.3: membership handling). */
202
197
  protected afterRemoteMessage(_space: string, _identity: string, _device: string, _p: StreamPayload): void;
203
- /** Envelope for a tag that is not a space key (inbox, invite secrets). Implemented in v0.3. */
198
+ /** Envelope for a tag that is not a space key (inbox, pairing secret). Implemented in v0.3. */
204
199
  protected ingestOther(_tag: string, _outer: NostrEvent): IngestResult;
205
200
  /** Apply a newly stored, signature-valid message. Returns changed tables. Runs inside a transaction. */
206
201
  protected onMessage(space: string, identity: string, device: string, p: StreamPayload): Set<string>;
202
+ /** The changes of one signed message that pass the row-level rule (see policy.ts). */
203
+ protected allowedChanges(space: string, identity: string, changes: readonly Change[]): Change[];
204
+ /** Role of an identity in a space (v0.2: the creator is the only member). */
205
+ protected roleOf(space: string, identity: string): Role | undefined;
207
206
  protected invalidateMembership(space: string): void;
208
207
  /** v0.2: only the space creator (owner) may write. Generalised to roles in v0.3. */
209
208
  protected isAuthorizedWriter(space: string, identity: string, _device: string, _seq: number): boolean;
package/dist/db.js CHANGED
@@ -9,9 +9,9 @@ import { spaceIdFor } from './membership.js';
9
9
  import { browserKeyStore } from './keystore/browser.js';
10
10
  import { envKeyStore } from './keystore/env.js';
11
11
  import { createKysely } from './kysely.js';
12
+ import { resultConverter } from './result-types.js';
12
13
  import { MESSAGE_KIND, TAG, WRAP_KIND, byteLength, parseStreamPayload, splitChanges } from './protocol.js';
13
- import { PublicData } from './public.js';
14
- import { presetOf } from './public-tables.js';
14
+ import { changeAllowed, policyMessage } from './policy.js';
15
15
  import { RelayPool } from './relay-pool.js';
16
16
  import { SYS_CREATED, SYS_DELETED, validateSchema } from './schema.js';
17
17
  import { localSigner } from './signer.js';
@@ -112,8 +112,6 @@ export class AnoDBCore {
112
112
  pubkey;
113
113
  npub;
114
114
  devicePubkey;
115
- /** Public Nostr data (profiles, notes, relay lists). */
116
- nostr;
117
115
  /** Encrypted files on Blossom servers; store the returned reference in a `json` column. */
118
116
  blobs;
119
117
  store;
@@ -164,20 +162,12 @@ export class AnoDBCore {
164
162
  retryIntervalMs: i.opts.retryIntervalMs ?? 30_000,
165
163
  })
166
164
  : null;
167
- this.kysely = createKysely(this.executor());
165
+ this.kysely = createKysely(this.executor(), this.schema);
168
166
  this.blobs = new BlobStore({
169
167
  deviceSk: i.deviceSk,
170
168
  servers: i.opts.blobServers ?? DEFAULT_BLOB_SERVERS,
171
169
  ...(i.opts.fetch ? { fetch: i.opts.fetch } : {}),
172
170
  });
173
- this.nostr = new PublicData({
174
- store: this.store,
175
- signer: () => this.requireIdentitySigner(),
176
- pool,
177
- discoveryRelays: i.opts.discoveryRelays,
178
- now: this.now,
179
- enqueue: (event) => this.enqueuePlain(event),
180
- });
181
171
  }
182
172
  /** @internal */
183
173
  async _init() {
@@ -193,10 +183,10 @@ export class AnoDBCore {
193
183
  }
194
184
  /** Extension point for subclasses. */
195
185
  async afterInit() { }
196
- /** Switch the default (personal) space; rebuilds projections and their capture triggers. */
186
+ /** Switch the personal space (the default for inserts); rebuilds projections and their capture triggers. */
197
187
  setPersonal(space) {
198
188
  this.personal = space;
199
- this.store.applySchema(this.schema, space);
189
+ this.store.applySchema(this.schema, space, this.pubkey);
200
190
  installCapture(this.store.driver, this.schema);
201
191
  }
202
192
  // ---- SQL-like API (Kysely) ------------------------------------------------
@@ -230,12 +220,15 @@ export class AnoDBCore {
230
220
  /** Re-runs `query` whenever a table it mentions changes (locally or from sync). */
231
221
  subscribe(query, cb, onError) {
232
222
  const compiled = compileQuery(query);
223
+ // Kysely queries keep typed results (booleans, JSON) even though they re-run as raw SQL here.
224
+ const node = compiled.query;
225
+ const convert = node ? resultConverter(this.schema, node) : null;
233
226
  const tables = new Set(Object.keys(this.schema).filter((t) => compiled.sql.includes(`"${t}"`) || new RegExp(`\\b${t}\\b`).test(compiled.sql)));
234
227
  let alive = true;
235
228
  const run = () => {
236
229
  this.kysely
237
230
  .executeQuery(CompiledQuery.raw(compiled.sql, [...compiled.parameters]))
238
- .then((r) => alive && cb(r.rows))
231
+ .then((r) => alive && cb(convert ? r.rows.map((row) => convert(row)) : r.rows))
239
232
  .catch((e) => onError?.(e));
240
233
  };
241
234
  const listener = (changed) => {
@@ -306,15 +299,10 @@ export class AnoDBCore {
306
299
  const touched = new Set();
307
300
  const nowMs = this.now();
308
301
  const writable = new Set();
309
- const publicCells = [];
310
302
  for (const c of cells) {
311
303
  const def = this.schema[c.table];
312
304
  if (!def)
313
305
  continue;
314
- if (presetOf(def)) {
315
- publicCells.push(c);
316
- continue;
317
- }
318
306
  if (!ID_RE.test(c.rowId))
319
307
  throw new Error(`anoDB: invalid row id "${c.rowId}" (1–128 chars of A-Z a-z 0-9 _ -)`);
320
308
  if (!writable.has(c.space)) {
@@ -331,13 +319,17 @@ export class AnoDBCore {
331
319
  let list = bySpace.get(c.space);
332
320
  if (!list)
333
321
  bySpace.set(c.space, (list = []));
334
- list.push([c.table, c.rowId, c.column, value, this.clock.tick()]);
322
+ const change = [c.table, c.rowId, c.column, value, this.clock.tick()];
323
+ // Same row-level rule every other device applies: refuse here instead of sending a change they would drop.
324
+ if (!changeAllowed(this.schema, change, this.pubkey, this.roleOf(c.space, this.pubkey)))
325
+ throw new AnoDBError('unauthorized', policyMessage(change));
326
+ list.push(change);
335
327
  touched.add(c.table);
336
328
  }
337
329
  await this.gate.idle();
338
330
  this.store.transaction(() => {
339
331
  for (const [space, changes] of bySpace) {
340
- this.store.applyChanges(space, changes);
332
+ this.store.applyChanges(space, changes, this.pubkey);
341
333
  for (const batch of splitChanges(changes))
342
334
  this.sendToSpace(space, 'ch', { c: batch });
343
335
  }
@@ -345,14 +337,8 @@ export class AnoDBCore {
345
337
  });
346
338
  this.notify(touched, 'local');
347
339
  this.afterLocalWrite([...bySpace.keys()]);
348
- if (publicCells.length > 0)
349
- await this.commitPublic(publicCells);
350
340
  void this.sync?.flush();
351
341
  }
352
- /** Writes to public tables become signed standard Nostr events (implemented by AnoDB). */
353
- async commitPublic(_cells) {
354
- throw new Error('anoDB: public tables are not supported by this build');
355
- }
356
342
  /** Hook (v0.3: automatic snapshots / key rotation). */
357
343
  afterLocalWrite(_spaces) { }
358
344
  /** Throws unless this device may write to `space`. */
@@ -365,7 +351,7 @@ export class AnoDBCore {
365
351
  }
366
352
  }
367
353
  // ---- spaces & keys ----------------------------------------------------------
368
- /** Id of this identity's personal space (default for inserts). */
354
+ /** Id of this identity's personal space: the default for inserts, readable only by your own devices. */
369
355
  get personalSpace() {
370
356
  return this.personal;
371
357
  }
@@ -572,7 +558,7 @@ export class AnoDBCore {
572
558
  }
573
559
  /** Hook after a new remote message was stored (v0.3: membership handling). */
574
560
  afterRemoteMessage(_space, _identity, _device, _p) { }
575
- /** Envelope for a tag that is not a space key (inbox, invite secrets). Implemented in v0.3. */
561
+ /** Envelope for a tag that is not a space key (inbox, pairing secret). Implemented in v0.3. */
576
562
  ingestOther(_tag, _outer) {
577
563
  return 'invalid';
578
564
  }
@@ -593,7 +579,16 @@ export class AnoDBCore {
593
579
  if (maxHlc)
594
580
  this.clock.receive(maxHlc);
595
581
  this.store.setMeta('hlc', this.clock.current());
596
- return this.store.applyChanges(space, p.c);
582
+ return this.store.applyChanges(space, this.allowedChanges(space, identity, p.c), identity);
583
+ }
584
+ /** The changes of one signed message that pass the row-level rule (see policy.ts). */
585
+ allowedChanges(space, identity, changes) {
586
+ const role = this.roleOf(space, identity);
587
+ return changes.filter((c) => changeAllowed(this.schema, c, identity, role));
588
+ }
589
+ /** Role of an identity in a space (v0.2: the creator is the only member). */
590
+ roleOf(space, identity) {
591
+ return this.isAuthorizedWriter(space, identity, '', Number.MAX_SAFE_INTEGER) ? 'owner' : undefined;
597
592
  }
598
593
  #ownerCache = new Map();
599
594
  invalidateMembership(space) {
@@ -619,7 +614,7 @@ export class AnoDBCore {
619
614
  if (!this.isAuthorizedWriter(space, m.identity, m.device, m.seq))
620
615
  continue;
621
616
  const p = JSON.parse(m.payload);
622
- for (const t of this.store.applyChanges(space, p.c))
617
+ for (const t of this.store.applyChanges(space, this.allowedChanges(space, m.identity, p.c), m.identity))
623
618
  touched.add(t);
624
619
  }
625
620
  return touched;
package/dist/db.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * Default relays. Must accept regular events of unknown kinds.
3
- * Checked 2026-11-09 with `npm run smoke:public` (nos.lol and nostr.mom did not store kind 7303).
4
- * Revalidate before each release.
3
+ * Checked 2026-11-15 with `npm run smoke:public`: relay.damus.io was down (HTTP 521) and
4
+ * offchain.pub refuses pubkeys outside its web of trust (every throwaway envelope key), so both
5
+ * were dropped; nos.lol and nostr.mom store kind 7303 again. Revalidate before each release.
5
6
  */
6
7
  export declare const DEFAULT_RELAYS: readonly string[];
7
8
  /** Relays commonly indexing kind 0 / 10002 for discovery (NIP-65 outbox model). */
package/dist/defaults.js CHANGED
@@ -1,16 +1,18 @@
1
1
  /**
2
2
  * Default relays. Must accept regular events of unknown kinds.
3
- * Checked 2026-11-09 with `npm run smoke:public` (nos.lol and nostr.mom did not store kind 7303).
4
- * Revalidate before each release.
3
+ * Checked 2026-11-15 with `npm run smoke:public`: relay.damus.io was down (HTTP 521) and
4
+ * offchain.pub refuses pubkeys outside its web of trust (every throwaway envelope key), so both
5
+ * were dropped; nos.lol and nostr.mom store kind 7303 again. Revalidate before each release.
5
6
  */
6
7
  export const DEFAULT_RELAYS = [
7
- 'wss://relay.damus.io',
8
8
  'wss://relay.primal.net',
9
9
  'wss://relay.nostr.net',
10
- 'wss://offchain.pub',
10
+ 'wss://relay.snort.social',
11
+ 'wss://nos.lol',
12
+ 'wss://nostr.mom',
11
13
  ];
12
14
  /** Relays commonly indexing kind 0 / 10002 for discovery (NIP-65 outbox model). */
13
- export const DEFAULT_DISCOVERY_RELAYS = ['wss://purplepag.es', 'wss://relay.damus.io'];
15
+ export const DEFAULT_DISCOVERY_RELAYS = ['wss://purplepag.es', 'wss://relay.primal.net'];
14
16
  /** Seconds subtracted from sync cursors to tolerate clock skew and late relay arrival. */
15
17
  export const CURSOR_SKEW_SEC = 600;
16
18
  /** Outbox events older than this are re-signed with a fresh created_at before resending. */