-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: update Cardinal documentation with latest features #820
base: main
Are you sure you want to change the base?
Conversation
- Add plugin system documentation - Add world stages documentation - Update component and query docs - Update navigation structure Adds comprehensive documentation for: - Plugin system architecture and usage - World stage lifecycle management - Component validation and defaults - Query groups and EVM integration Co-Authored-By: Scott Sunarto <me@smsunarto.com>
Co-Authored-By: Scott Sunarto <me@smsunarto.com>
Co-Authored-By: Scott Sunarto <me@smsunarto.com>
Your org has enabled the Graphite merge queue for merging into mainAdd the label “graphite/merge” to the PR and Graphite will automatically add it to the merge queue when it’s ready to merge. You must have a Graphite account and log in to Graphite in order to use the merge queue. Sign up using this link. |
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
func monitorStages(world *cardinal.World) { | ||
for { | ||
select { | ||
case <-world.NotifyOnStage(worldstage.Starting): | ||
handleStarting(world) | ||
case <-world.NotifyOnStage(worldstage.Running): | ||
handleRunning(world) | ||
case <-world.NotifyOnStage(worldstage.ShuttingDown): | ||
handleShutdown(world) | ||
return | ||
} | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Creating notification channels inside the select
statement can lead to missed notifications since the channels are recreated on each loop iteration. To ensure reliable stage monitoring, create the notification channels once before entering the select
:
startingCh := world.NotifyOnStage(worldstage.Starting)
runningCh := world.NotifyOnStage(worldstage.Running)
shutdownCh := world.NotifyOnStage(worldstage.ShutDown)
for {
select {
case <-startingCh:
// ...
}
}
Spotted by Graphite Reviewer
Is this helpful? React 👍 or 👎 to let us know.
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
⚙️ Control Options:
Add "(aside)" to your comment to have me ignore it. |
Co-Authored-By: Scott Sunarto <me@smsunarto.com>
Preview InstructionsTo preview these changes locally, checkout this branch and run:
|
Co-Authored-By: Scott Sunarto <me@smsunarto.com>
Co-Authored-By: Scott Sunarto <me@smsunarto.com>
Preview InstructionsTo preview these changes locally, checkout this branch and run:
|
Updates documentation to reflect current Cardinal implementation.
Changes include:
Link to Devin run: https://app.devin.ai/sessions/96881ecd4cda4a2fb42d38d70a306de1