Skip to content

fix(file-system): expose entry creator - #74282

Merged
puemos merged 4 commits into
masterfrom
posthog-code/expose-file-system-creator
Jul 28, 2026
Merged

fix(file-system): expose entry creator#74282
puemos merged 4 commits into
masterfrom
posthog-code/expose-file-system-creator

Conversation

@puemos

@puemos puemos commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Problem

Desktop clients need the stable creator identity already stored on file-system entries to enforce personal ownership correctly.

Changes

  • Serialize the existing created_by relation with UserBasicSerializer.
  • Regenerate the core API type and cover desktop list responses.

How did you test this code?

  • uvx ruff check posthog/api/file_system/file_system.py posthog/api/file_system/test/test_file_system.py
  • uvx ruff format --check posthog/api/file_system/file_system.py posthog/api/file_system/test/test_file_system.py
  • OPT_OUT_CAPTURE=1 uv run --package hogli hogli build:openapi-types
  • The focused Django test was collected but could not run locally because Postgres is unavailable in this environment.

Automatic notifications

  • Publish to changelog?
  • Alert Sales and Marketing teams?

Docs update

No documentation change needed; this exposes an existing model field in the API response.

🤖 Agent context

Autonomy: Human-driven (agent-assisted)

Codex traced the desktop file-system contract and implemented the smallest serializer and regression-test change. No repo-provided skills were invoked.


Created with PostHog Code

Generated-By: PostHog Code
Task-Id: d8debcda-8a0a-4287-a5aa-ee0f5f6ce8d9
@github-actions

github-actions Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

🤖 CI report

⚠️ Bundle size — 🔺 +21.1 KiB (+0.0%)

Uncompressed size of every built .js bundle, compared against the base branch.

Total: 65.19 MiB · 🔺 +21.1 KiB (+0.0%)

File Size Δ vs base
posthog-app/_parent/products/data_catalog/frontend/DataCatalogScene.js 16.8 KiB 🔺 +16.8 KiB (new)
posthog-app/_parent/products/replay_vision/frontend/replay_scanners/ActionEditorScene.js 23.4 KiB 🔺 +1.1 KiB (+5.0%)
render-query/src/render-query/render-query.js 21.28 MiB 🔺 +1.0 KiB (+0.0%)

Posted automatically by build-bundle-size-report · uncompressed bytes from dist-report

Eager graph — within budget

How much code each root ships on the eager path — downloaded and parsed before the surface is interactive. Measured from the esbuild output chunks (post-tree-shake, static imports only); lazy import() / React.lazy chunks are not counted.

Root Eager (shipped) Δ vs base Budget
entry (logged-out pages, app bootstrap)
src/index.tsx
1.24 MiB · 22 files 🔺 +109 B (+0.0%) ███░░░░░░░ 27.6% of 4.51 MiB
authenticated shell (every logged-in page)
src/scenes/AuthenticatedShell.tsx
8.09 MiB · 3,014 files 🔺 +1.4 KiB (+0.0%) ████████░░ 83.3% of 9.71 MiB

🟢 node_modules/monaco-editor/ stays out of src/index.tsx
🟢 src/lib/components/ActivityLog/describers stays out of src/index.tsx
🟢 [object Object] stays out of src/index.tsx
🟢 [object Object] stays out of src/index.tsx
🟢 node_modules/monaco-editor/ stays out of src/scenes/AuthenticatedShell.tsx
🟢 src/lib/components/ActivityLog/describers stays out of src/scenes/AuthenticatedShell.tsx
🟢 [object Object] stays out of src/scenes/AuthenticatedShell.tsx
🟢 [object Object] stays out of src/scenes/AuthenticatedShell.tsx

Largest files eagerly shipped from src/index.tsx
Size File
126.8 KiB ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js
24.6 KiB ../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js
6.3 KiB ../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js
4.5 KiB ../node_modules/.pnpm/@jspm+core@2.1.0/node_modules/@jspm/core/nodelibs/browser/process.js
3.9 KiB ../node_modules/.pnpm/scheduler@0.23.2/node_modules/scheduler/cjs/scheduler.production.min.js
1.4 KiB ../node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js
1.3 KiB src/RootErrorBoundary.tsx
912 B ../node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js
789 B src/scenes/ChunkLoadErrorBoundary.tsx
762 B src/index.tsx
Largest files eagerly shipped from src/scenes/AuthenticatedShell.tsx
Size File
281.6 KiB ../node_modules/.pnpm/posthog-js@1.407.5/node_modules/posthog-js/dist/rrweb.js
267.7 KiB ../node_modules/.pnpm/@posthog+icons@0.38.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js
235.5 KiB src/taxonomy/core-filter-definitions-by-group.json
226.5 KiB ../node_modules/.pnpm/posthog-js@1.407.5/node_modules/posthog-js/dist/module.js
154.3 KiB ../node_modules/.pnpm/re2js@0.4.1/node_modules/re2js/build/index.esm.js
126.8 KiB ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js
105.2 KiB src/lib/api.ts
94.0 KiB ../packages/quill/packages/quill/dist/index.js
93.3 KiB ../node_modules/.pnpm/prosemirror-view@1.40.1/node_modules/prosemirror-view/dist/index.js
90.6 KiB ../node_modules/.pnpm/@tiptap+core@3.20.6_@tiptap+pm@3.20.6/node_modules/@tiptap/core/dist/index.js

Posted automatically by check-eager-graph · sizes are eager output bytes (shipped, post-tree-shake) from the esbuild metafile · part of #32479

Toolbar bundle — eager 2.18 MiB within budget

What the toolbar ships to customer pages, measured from the esbuild output (minified, post-tree-shake). The eager set is the entry plus everything statically imported from it — fetched before any feature runs; deferred chunks load lazily. The eager guardrail is 5.72 MiB. Each output file must also stay below 10 MB, where CloudFront stops compressing it. The module boundary is enforced separately by check-toolbar-graph.

Metric Size Δ vs base Budget
Eager (shipped)
entry + static imports
2.18 MiB · 17 files 🔺 +179 B (+0.0%) ████░░░░░░ 38.2% of 5.72 MiB
Deferred (lazy) 2.07 MiB · 33 files no change n/a — loads on demand
Loader dist/toolbar.js 1.1 KiB no change █░░░░░░░░░ 5.8% of 19.5 KiB
Largest eagerly-shipped chunks
Size File
716.9 KiB dist/toolbar/toolbar-app-5ZPNOWI2.css
546.0 KiB dist/toolbar/chunk-chunk-RYIMUIPJ.js
484.3 KiB dist/toolbar/chunk-chunk-H6BYZJQ3.js
133.6 KiB dist/toolbar/chunk-chunk-XBQFUAE7.js
131.8 KiB dist/toolbar/chunk-chunk-T5KY5WYR.js
71.0 KiB dist/toolbar/toolbar-app-CDD54Z26.js
69.0 KiB dist/toolbar/chunk-chunk-27JL52RE.js
35.6 KiB dist/toolbar/chunk-chunk-Q3YINSLU.js
20.9 KiB dist/toolbar/chunk-chunk-4HWCX3DX.js
12.2 KiB dist/toolbar/chunk-chunk-PIK3PADE.js

Posted automatically by check-toolbar-size · sizes are toolbar output bytes (shipped, post-tree-shake) from the esbuild metafile

Dist folder size — 🔺 +2.61 MiB (+0.2%)

Total size of the built frontend/dist folder (all assets), compared against the base branch.

Total: 1363.05 MiB · 🔺 +2.61 MiB (+0.2%)

Playwright — all passed

All tests passed.

View test results →

puemos added 2 commits July 28, 2026 20:19
Generated-By: PostHog Code
Task-Id: 87703b17-38b6-4fda-a2ec-211230104311
Generated-By: PostHog Code
Task-Id: 87703b17-38b6-4fda-a2ec-211230104311
@puemos
puemos marked this pull request as ready for review July 28, 2026 19:10
@github-actions

github-actions Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

🦔 Hogbox preview · ❌ build failed

The preview didn't come up for commit 25daf8a. See the build log for the failing step. It'll retry on the next push.

Previews are optional and never block merging. A failure here is often a hogland or tailnet hiccup rather than anything in your PR, so the check stays green and this comment is the status.

@puemos
puemos merged commit ece86e0 into master Jul 28, 2026
337 of 345 checks passed
@puemos
puemos deleted the posthog-code/expose-file-system-creator branch July 28, 2026 19:52
@deployment-status-posthog

deployment-status-posthog Bot commented Jul 28, 2026

Copy link
Copy Markdown

Deploy status

Environment Status Deployed At Workflow
dev ✅ Deployed 2026-07-28 20:25 UTC Run
prod-us ✅ Deployed 2026-07-28 20:41 UTC Run
prod-eu ✅ Deployed 2026-07-28 20:42 UTC Run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants