Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Mintlify documentation

## Working relationship
- You can push back on ideas-this can lead to better documentation. Cite sources and explain your reasoning when you do so
- ALWAYS ask for clarification rather than making assumptions
- NEVER lie, guess, or make up anything

## Project context
- Format: MDX files with YAML frontmatter
- Config: docs.json for navigation, theme, settings
- Components: Mintlify components

## Content strategy
- Document just enough for user success - not too much, not too little
- Prioritize accuracy and usability
- Make content evergreen when possible
- Search for existing content before adding anything new. Avoid duplication unless it is done for a strategic reason
- Check existing patterns for consistency
- Start by making the smallest reasonable changes

## docs.json

- Refer to the [docs.json schema](https://mintlify.com/docs.json) when building the docs.json file and site navigation

## Frontmatter requirements for pages
- title: Clear, descriptive page title
- description: Concise summary for SEO/navigation

## Writing standards
- Second-person voice ("you")
- Prerequisites at start of procedural content
- Test all code examples before publishing
- Match style and formatting of existing pages
- Include both basic and advanced use cases
- Language tags on all code blocks
- Alt text on all images
- Relative paths for internal links

## Git workflow
- NEVER use --no-verify when committing
- Ask how to handle uncommitted changes before starting
- Create a new branch when no clear branch exists for changes
- Commit frequently throughout development
- NEVER skip or disable pre-commit hooks

## Do not
- Skip frontmatter on any MDX file
- Use absolute URLs for internal links
- Include untested code examples
- Make assumptions - always ask for clarification
50 changes: 50 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Mintlify documentation

## Working relationship
- You can push back on ideas-this can lead to better documentation. Cite sources and explain your reasoning when you do so
- ALWAYS ask for clarification rather than making assumptions
- NEVER lie, guess, or make up anything

## Project context
- Format: MDX files with YAML frontmatter
- Config: docs.json for navigation, theme, settings
- Components: Mintlify components

## Content strategy
- Document just enough for user success - not too much, not too little
- Prioritize accuracy and usability
- Make content evergreen when possible
- Search for existing content before adding anything new. Avoid duplication unless it is done for a strategic reason
- Check existing patterns for consistency
- Start by making the smallest reasonable changes

## docs.json

- Refer to the [docs.json schema](https://mintlify.com/docs.json) when building the docs.json file and site navigation

## Frontmatter requirements for pages
- title: Clear, descriptive page title
- description: Concise summary for SEO/navigation

## Writing standards
- Second-person voice ("you")
- Prerequisites at start of procedural content
- Test all code examples before publishing
- Match style and formatting of existing pages
- Include both basic and advanced use cases
- Language tags on all code blocks
- Alt text on all images
- Relative paths for internal links

## Git workflow
- NEVER use --no-verify when committing
- Ask how to handle uncommitted changes before starting
- Create a new branch when no clear branch exists for changes
- Commit frequently throughout development
- NEVER skip or disable pre-commit hooks

## Do not
- Skip frontmatter on any MDX file
- Use absolute URLs for internal links
- Include untested code examples
- Make assumptions - always ask for clarification
89 changes: 60 additions & 29 deletions credible/dapp-incidents.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -26,60 +26,91 @@ This grouping ensures you receive meaningful alerts without being spammed by rep
This is our initial approach to incident grouping and may be refined based on user feedback.
</Note>

## Incidents View
## Project Incidents (Manager View)

Access incidents from the **Incidents** tab in the dApp navigation bar. This shows a limited view of all incidents across all networks:
<Check>Project incidents are visible only to the project manager and live inside the project dashboard.</Check>

- **Network**: Which network the incident occurred on
- **Timestamp**: When the transaction was dropped
- **Incident Reference ID**: Unique identifier for the incident
Non-owners see project events, not incidents.

<Frame caption="Incidents View">
<img src="/images/incidents_view.png" alt="Incidents View" />
### Access and Navigation

- Open a project and select the **Incidents** tab.
- Route: `/projects/{project_id}/incidents`

<Frame caption="Project view header with the Incidents tab selected (screenshot placeholder)">
<img src="/images/incidents_project.png" alt="Incidents Tab" />
</Frame>

<Note>
The Incidents tab is publicly accessible. Anyone can view this limited incident information.
</Note>

## Project Dashboard Incidents
### Incidents

The incidents list shows recent incidents for the project, ordered by most recent.

As a project owner, you can view detailed incidents for your projects in the project dashboard. See [Projects](/credible/dapp-projects) for information about accessing your project dashboard.
Each row includes:

<Frame caption="Incident in Project Dashboard Assertion View">
<img src="/images/incident_assertion_project.png" alt="Incident in Project Assertion Dashboard" />
- **Timestamp**
- **Contract Affected**
- **Assertion Triggered**
- **Invalid Transactions** count
- **Environment** (staging or production)

Click a row to open the incident detail view.

<Frame caption="Project incidents list view">
<img src="/images/incident_overview.png" alt="Incident Overview" />
</Frame>

View incidents in the **Recent Incidents** container on the project dashboard. Click on an incident to see:
### Incident Detail and Invalidating Transactions

The incident detail page summarizes the incident and lists invalidating transactions.
It includes:

- **Incident detail card** with date, contract affected, assertion triggered, assertion group, invalid transaction count, and environment
- **Critical warning banner** if any invalidating transaction landed on-chain
- **Invalid Transactions** list with expandable rows and action buttons

- **Transaction Object**: The full decoded transaction that was dropped (viewable as JSON)
- **Transaction Hash**: The hash of the dropped transaction
Each invalidating transaction includes:

<Frame caption="Detailed Incident View">
<img src="/images/detailed_incidents_view.png" alt="Detailed Incident View" />
- Transaction hash, to/from, value, calldata, and block number (if available)
- **Open Debug View** to inspect the trace
- **Copy Data as JSON** to export the transaction

<Frame caption="Incident detail with invalidating transactions">
<img src="/images/incident_tx_details.png" alt="Incident details" />
</Frame>

<Note>
Only project owners can view detailed incidents for their projects. Non-owners viewing a project see **events** (when contracts and assertions were added or removed), not incidents.
</Note>
### Debug Trace View

The debug trace view opens from an invalidating transaction.

### Real-Time Alerts
- Route: `/projects/{project_id}/trace/{incident_id}/{transaction_id}`
- **Transaction Attributes** panel with copy-all action
- **Execution Context** panel (block environment + previous transactions)
- **Transaction Trace** panel with status: pending, in progress, completed, failed, or skipped

When viewing your project dashboard as an authenticated project owner, incidents update in real time:
<Frame caption="Debug trace start">
<img src="/images/incident_trace.png" alt="Incident trace 1" />
</Frame>

- **Auto-Updating UI**: Components listing incidents automatically prepend newly received incidents to the list
- **Toast Notifications**: A notification appears in the upper right corner stating "an incident for this project was received"
- **Live Updates**: Real-time updates only occur when viewing that specific project as its authenticated manager
<Frame caption="Debug trace cont.">
<img src="/images/incident_trace_2.png" alt="Incident trace 1" />
</Frame>

**External Alerts**
### Real-Time Updates and Alerts

When a project manager is viewing the incidents list, new incidents stream into the list in real time.
You can also set up external alerts via webhooks:

- **Slack Integration**: Configure Slack webhooks to receive incident notifications in your Slack channels
- **Slack Integration**: Configure Slack webhooks to receive incident notifications
- **PagerDuty Integration**: Configure PagerDuty webhooks to receive incident notifications

See [Integrations](/credible/dapp-integrations) for setup instructions.

## Public Transparency Incidents

The Transparency dashboard includes a public incidents list with limited metadata for visibility.
Detailed transaction and trace views are only available to project managers.

## Use Cases

- Monitor when assertions prevent violations for your projects
Expand Down
2 changes: 1 addition & 1 deletion credible/dapp-projects.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ The project dashboard provides a unified view of your project's security:
- **Assertion Deployment**: Deploy or remove assertions for your project
- **Ready for Deployment**: Assertions submitted via `pcl` that need to be linked and deployed
- **Assertion Status**: Monitor execution status and any triggered violations. Status shows whether assertions are marked for enforcement/staging or enforced/staged
- **Recent Incidents**: View detailed incidents for your project (see [Incidents](/credible/dapp-incidents#project-dashboard-incidents))
- **Recent Incidents**: View detailed incidents for your project (see [Incidents](/credible/dapp-incidents#project-incidents-manager-view))
- **Project Settings**: Update project details and manage contracts

<Frame caption="Projct dashboard view for the project owner">
Expand Down
Binary file added images/incident_overview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/incident_trace.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/incident_trace_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/incident_tx_details.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/incidents_project.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.