Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Rule V2 Tasks Artifacts
padosoft/askmydocs-mcp-pack
cursor
tenant-scoping
authorization
task-queue
payload-encryption
artifact-security
idempotency

Rule: v2 Tasks and artifacts are tenant/principal scoped

Install
php artisan boost:add-skill padosoft/askmydocs-mcp-pack

Save this content to: .cursor/rules/rule-v2-tasks-artifacts.md

# Rule: v2 Tasks and artifacts are tenant/principal scoped

- Never query `mcp_tasks` or `mcp_artifacts` by UUID alone on a user path. Match tenant and actor/principal again on every operation.
- Create the task row before queue dispatch. Preserve the atomic status graph and lock version checks.
- Encrypt task request, input, result and error payloads. `requestState` is authenticated, expiry-bound and single-use when configured.
- Artifact paths are generated server-side, immutable and private. Never use the submitted filename as a storage path.
- Verify artifact SHA-256 on read, reject executable MIME/content, emit attachments with `nosniff`, and keep signed URLs short-lived.
- Pruning and recovery commands must remain idempotent and safe to schedule concurrently.

Rule: v2 Tasks and artifacts are tenant/principal scoped

  • Never query mcp_tasks or mcp_artifacts by UUID alone on a user path. Match tenant and actor/principal again on every operation.
  • Create the task row before queue dispatch. Preserve the atomic status graph and lock version checks.
  • Encrypt task request, input, result and error payloads. requestState is authenticated, expiry-bound and single-use when configured.
  • Artifact paths are generated server-side, immutable and private. Never use the submitted filename as a storage path.
  • Verify artifact SHA-256 on read, reject executable MIME/content, emit attachments with nosniff, and keep signed URLs short-lived.
  • Pruning and recovery commands must remain idempotent and safe to schedule concurrently.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo