Automatic behaviors and safeguards
What GVenta Kanban Board does without being asked: slugs, project bootstrapping, lane and status sync, epic cascade, and the integrity rules that protect data.
Documented from GVenta Kanban Board version 2.1.15.
A lot of GVenta Kanban Board’s behavior happens without any visible action on your part. This page documents those automatic behaviors and the integrity rules the application enforces on every write, whether it comes from the interface or the API.
Automatic data maintenance
Slug generation
Project URL slugs are derived from the project name, both when a project is created and when it is renamed.
Project bootstrapping
Creating a project, whether through the web form or the API, enrolls the creator as Owner and provisions the four default swim lanes: Backlog, In Progress, Review and Done. Both paths share one code path, so they cannot drift.
Lane and status synchronization
Changing a story’s status, via the edit form, the API or a bulk move, automatically resolves and assigns the matching lane, preferring the project’s default lane for that status type. Conversely, dragging a card to a new lane re-derives the story’s canonical status from that lane’s status type. The board and the status field are structurally incapable of disagreeing.
Board positioning
Every lane move and reorder rewrites card positions, so the ordering you set survives reloads.
Visit logging
Opening any project board writes a record to a project access log. This is the sole input to the Quick Links algorithm on the Dashboard and Projects pages (the two most-frequented projects plus the three most recent, deduplicated). It is entirely passive; there is nothing to configure.
Epic cascade
Moving an epic to a different project moves all of its child stories with it, automatically.
Unread mentions
Your unread mentions are queried on every page load, so the header bell is always current.
What happens when you save a story
Two things happen automatically when you save the edit form:
- If the status changed, the story is moved to the matching lane on the board.
- If the assignee changed, an assignment notification email is sent to the new assignee, subject to their notification preferences.
All submitted values are validated against the configured type, status and priority sets. Anything unrecognized falls back to a safe default rather than being written through. Updates through the API additionally compute a field-level change set, write it to the activity log, and fire the assignment and update notifications.
What happens when you post a comment
Posting a comment parses @mentions, marks the comment read for you, subscribes you as a watcher, writes an activity-log entry and emails eligible watchers. The full chain is on Comments and mentions.
Why it matters: You never have to remember to move the card after changing a status, or to follow a story after commenting on it. The application keeps itself consistent.
Integrity and safety rules
These rules are enforced on every write path, in the interface and in the API alike.
Circular dependency prevention
Adding a dependency runs a graph walk first and refuses any link that would create a cycle. A story can never end up depending, directly or indirectly, on itself.
Assignment validation
A story can only be assigned to someone who is actually assignable to that project. The API enforces this and returns a validation error; the interface never offers ineligible users in the first place.
Vocabulary validation
Submitted types, statuses and priorities are checked against the configured sets on every write path.
Lane deletion guard
A lane that still contains stories cannot be deleted. The request is refused with a message naming the exact number of stories that must be moved first.
Owner protection
Project owners cannot be removed or demoted through the members screen.
Self-deactivation guard
Administrators cannot deactivate their own account.
Soft deletion throughout
Nothing is really lost:
| What | What actually happens |
|---|---|
| Project deleted | Deactivated, not removed |
| Project archived | Hidden from lists, favorites, quick links and the Dashboard, with all data intact and a Restore action |
| User deleted | Deactivated; all history stays intact |
| Comment deleted | Soft-deleted, leaving a “[Comment deleted]” placeholder so replies stay coherent |
| Attachment deleted | Flagged as deleted |
Hard deletion of a comment, together with its descendants and their attachments, is an explicit administrator-only opt-in through the API.
Immutable activity log
Membership changes, archiving and restoring, user administration, story updates, comments, attachment uploads and file-type policy changes all write activity-log entries recording who did what and when.
Related pages
- Core concepts
- The project board
- File handling and security — the safeguards specific to uploads.