Skip to content

UN-4480 [DOCS] Platform audit README: cloud clone, Agentic Studio adapters and onboarding are now recorded - #2368

Open
ritwik-g wants to merge 4 commits into
mainfrom
docs/UN-4480-audit-readme-cloud-paths
Open

ritwik-g wants to merge 4 commits into
mainfrom
docs/UN-4480-audit-readme-cloud-paths

Conversation

@ritwik-g

Copy link
Copy Markdown
Contributor

What

  • backend/platform_audit/README.md, "What is not recorded": Prompt Studio clone, the Agentic Studio connector views and frictionless onboarding now record resource.created/resource.deleted, so the README no longer lists them as unrecorded. Agentic Studio projects and lookups still record only their sharing, and the README says so.

Why

  • Zipstack/unstract-cloud#1880 (UN-4480) adds those events.

How

  • Docs only.

Can this PR break any existing features? If yes, please list possible items. If no, please explain why.

  • No. Text only.

Related Issues or PRs

Notes on Testing

  • None needed.

🤖 Generated with Claude Code

Clone, the Agentic Studio connector views and frictionless onboarding record
resource.created/deleted (Zipstack/unstract-cloud#1880). Agentic Studio
projects and lookups still record only their sharing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@ritwik-g ritwik-g left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Standardized PR Review — INITIAL

Verdict — APPROVE WITH NITS
Mode: LITE — single-pass, 19/19 lenses, one reader, no subagents. Eligible: 1 files / 13 lines, no disqualifiers.

Summary — Critical: 0 · High: 0 · Medium: 1 · Low: 0 · Lenses run: 19/19 (N/A lenses listed in the checklist).

Claims checked against Zipstack/unstract-cloud#1880 (worktree at 3b0a552df): clone records resource.created with summary=f"clone of {tool_instance.tool_name}" inside the clone transaction (pluggable_apps/clone_v2/helpers/prompt_studio_clone_helper.py:367-372); the Agentic Studio connector view records create (pluggable_apps/agentic_studio_v1/views/connectors.py:171) and delete (:282) of adapters; onboarding records the default adapters (pluggable_apps/platform_admin/onboarding_service.py:169) and the sample project (:438) with request=None, which record_platform_event resolves to the system actor (backend/platform_audit/recorder.py:80-81). All three hold. Cloud origin/main has no platform_audit reference, so the README's cloud claims are true only once #1880 merges, which the PR body already makes the merge condition.

Findings

Finding #1 is posted inline.

Lens checklist

  1. Spec & intent — Clean
  2. Architectural fit & precedent — N/A — documentation only; no code or pattern introduced
  3. Correctness & edge cases — Clean
  4. Security — N/A — prose only, no handler, input or secret touched
  5. Data integrity & migrations — N/A — no schema, data or transaction change
  6. Concurrency — N/A — no code
  7. API & contract compatibility — N/A — no wire format changed; the README describes the existing event contract
  8. Reliability & resilience — N/A — no code
  9. Performance & cost — N/A — no code
  10. Observability — N/A — no logs, metrics or traces changed
  11. Operational safety — N/A — no rollout surface; the merge-order dependency on #1880 is stated in the PR body
  12. LLM/agent-specific — N/A — no model calls, prompts or agents
  13. Testing — N/A — documentation only; nothing to exercise
  14. Dependencies & build — N/A — no dependency or build change
  15. Code quality — N/A — markdown only; no formatter or lint hook is pinned for markdown, and ruff does not apply
  16. Doc & comment accuracy — See findings #1
  17. Cross-document rule consistency — Clean
  18. On-prem deployment experience — N/A — no Helm, on-prem values, settings or customer docs touched; the README is internal developer docs
  19. Scaling & workload lifecycle — N/A — no worker, autoscaling or lifecycle config touched

Sweep notes:

  • Lens 17: git log <merge-base>..origin/main exited 0 with an empty range, so the branch is current and the branch sweep covers the merge result. I grepped the repo for prompt-studio/clone, clone of, frictionless, resource.created, agentic_project and lookup. The only restatements are in the same README (:226, :233-235), and both still agree.
  • boundary-sweep: not triggered, because the diff adds no outbound client, endpoint, log line or error path.
  • rule-storage-check: 0 to verify, 3 dismissed. charset (an external MIME parameter) and metadata= and organization= (API and kwarg names in the README) are documentation placeholders that no plugin script should implement. None of them is in the changed hunk.
  • Clean-case pass: the onboarding path records only creates, which fits "come from" (no delete is claimed). The clone event is written on commit inside the transaction, so a clone that rolls back records nothing, and the README claims nothing that conflicts.

Open questions for the author

  • None.

Assumptions made

  • #1880 merges as reviewed (3b0a552df). If its emitters change before merge, this paragraph must be re-checked.

Comment thread backend/platform_audit/README.md Outdated
…nges

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@ritwik-g ritwik-g left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Standardized PR Review — FOLLOWUP (round 2)

Verdict — APPROVE
Mode: LITE — single-pass, 19/19 lenses, one reader, no subagents. Eligible: 1 files / 14 lines, no disqualifiers.

Summary — Critical: 0 · High: 0 · Medium: 0 · Low: 0 · Lenses run: 19/19 (N/A lenses listed in the checklist).

Prior context fetched — followup-fetch.sh exited 0 (6 of 6). Since-boundary: ed2107029 (round 1, review 5614327566). Head reviewed: 78ad50dc6.

Scope change — NO. The delta since ed2107029 is one sentence in backend/platform_audit/README.md:277-278, at the round-1 finding site; no new files, surfaces or tests.

Prior findings status

  • #4348455680 [Medium] "only their sharing is" omits co-owner events for agentic_project and lookup → RESOLVED — backend/platform_audit/README.md:277-278 now reads "only their sharing and co-owner changes are" (commit 78ad50dc6). Verified: on unstract-cloud origin/main (d0ce9627b), AgenticProjectViewSet (backend/pluggable_apps/agentic_studio_v1/views/projects.py:58-59) and LookupDefinitionViewSet (backend/pluggable_apps/lookups/views/definition.py:64-65) mix in OwnerManagementMixin and ResourceShareManagementMixin. On OSS origin/main (4139b4e91), backend/permissions/membership_views.py:48-49 and :73-74 record RESOURCE_CO_OWNER_ADDED and RESOURCE_CO_OWNER_REMOVED. The create/delete half still holds: unstract-cloud#1880 (3b0a552df) adds no emitter for either kind.

New findings — none.

Lens checklist

  1. Spec & intent — Clean
  2. Architectural fit & precedent — N/A — documentation only
  3. Correctness & edge cases — Clean
  4. Security — N/A — prose only; no handler, input or secret
  5. Data integrity & migrations — N/A — no schema or data change
  6. Concurrency — N/A — no code
  7. API & contract compatibility — N/A — no wire format change; the README describes existing events
  8. Reliability & resilience — N/A — no code
  9. Performance & cost — N/A — no code
  10. Observability — N/A — no logs, metrics or traces changed
  11. Operational safety — N/A — no rollout surface
  12. LLM/agent-specific — N/A — no model, prompt or agent path
  13. Testing — N/A — documentation only
  14. Dependencies & build — N/A — no dependency or build change
  15. Code quality — N/A — markdown only; no pinned markdown linter
  16. Doc & comment accuracy — Clean
  17. Cross-document rule consistency — Clean
  18. On-prem deployment experience — N/A — internal developer README; no chart, values or customer doc
  19. Scaling & workload lifecycle — N/A — no worker, autoscaling or lifecycle config

Sweep notes:

  • Lens 17: the branch is current with origin/main (git log ed2107029..origin/main is empty). The other restatement, README.md:233-235 ("agentic_project and lookup, whose sharing is recorded through the same endpoints"), says nothing exclusive, so it does not contradict the new sentence.
  • boundary-sweep: not triggered. The diff adds no outbound client, endpoint, log line or error path.
  • rule-storage-check: 0 to verify, 3 dismissed (external tool or documentation placeholder): charset, metadata= and organization= are on unchanged README lines.
  • Clean-case pass: the new clause claims only what is recorded (sharing and co-owner add/remove). Both are emitted by the shared OSS mixins the two cloud viewsets inherit, so no kind is claimed that the code does not record.

Open questions / assumptions

  • The assumption from round 1 still applies: the README's cloud claims hold once unstract-cloud#1880 merges as reviewed (3b0a552df).

@ritwik-g
ritwik-g marked this pull request as ready for review October 22, 2026 12:48
@greptile-apps

greptile-apps Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

via Greptile

RetriggerView in GreptileConfidence Score: 5/5

[Low impact] This documentation-only PR appears safe to merge after the companion cloud PR.

Summary

Updates backend/platform_audit/README.md to describe the audit events added by the companion cloud PR.

  • The audit README shows which cloud paths record resource changes.

Reviews (3) · Last reviewed commit: "Merge branch 'main' into docs/UN-4480-au..." · Reviewed by Greptile

@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown
Contributor

Unstract test results

Per-group results

Status Group Tier Passed Failed Errors Skipped Duration (s)
⚪ e2e-agent-kv e2e 0 0 0 1 0.1
✅ e2e-api-deployment e2e 3 0 0 0 17.3
✅ e2e-coowners e2e 1 0 0 0 1.3
✅ e2e-etl e2e 1 0 0 0 16.1
✅ e2e-login e2e 2 0 0 0 1.2
✅ e2e-prompt-studio e2e 1 0 0 0 9.0
✅ e2e-smoke e2e 2 0 0 0 1.0
✅ e2e-workflow e2e 1 0 0 0 16.0
✅ frontend unit 629 0 0 0 19.4
✅ integration-backend integration 1420 0 0 26 52.9
✅ integration-connectors integration 1 0 0 7 6.6
✅ integration-workers integration 181 0 0 1 36.1
❌ ui e2e 0 1 0 0 0.0
✅ unit-agent-kv-schema unit 143 0 0 0 1.9
✅ unit-backend unit 2035 0 0 1 62.5
✅ unit-connectors unit 82 0 0 0 12.4
✅ unit-core unit 281 0 0 0 3.4
✅ unit-filesystem unit 1 0 0 0 4.7
✅ unit-platform-service unit 18 0 0 0 3.0
✅ unit-rig unit 120 0 0 0 4.8
✅ unit-runner unit 12 0 0 0 3.2
✅ unit-sdk1 unit 878 0 0 0 43.8
✅ unit-tool-sidecar unit 8 0 0 0 1.9
✅ unit-workers unit 1534 0 0 2 134.2
TOTAL 7354 1 0 38 452.5

Critical paths

⚠️ Critical paths not yet covered

  • workflow-execution-fan-out — Multi-file workflow execution fans out to file-processing workers and rejoins. (declared coverage: no groups declared)
✅ Covered critical paths
  • auth-login — covered by e2e-login
  • adapter-register-llm — covered by integration-backend
  • workflow-author — covered by integration-backend
  • co-owner-manage — covered by integration-backend, e2e-coowners
  • workflow-create-execute — covered by e2e-workflow
  • api-deployment-provision — covered by integration-backend
  • api-deployment-auth — covered by integration-backend
  • api-deployment-run — covered by e2e-api-deployment
  • mcp-server-auth — covered by integration-backend
  • mcp-platform-auth — covered by integration-backend
  • platform-key-whoami — covered by integration-backend
  • prompt-studio-author — covered by integration-backend
  • prompt-studio-fetch-response — covered by e2e-prompt-studio
  • connector-register-test — covered by integration-backend
  • pipeline-etl-execute — covered by e2e-etl
  • usage-aggregate-read — covered by integration-backend
  • usage-token-tracking — covered by e2e-api-deployment
  • callback-result-delivery — covered by e2e-api-deployment

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.

1 participant