When a repository is connected, FISYCO reviews every pull request against your design system. It leaves one comment with notes and posts a "FISYCO design system" check on the commit. This page explains what it looks at, how to read the notes and how to make the check blocking.
Before you start
- A repository is connected to the project. See Connect a repository.
- The design system in code is set up for the project: open the project and find Design system in code under From code.
- On GitHub, the FISYCO app needs permission to write checks. If you installed it before checks were added, GitHub asks you to approve the new permission.
What it checks
On every push to a pull request on GitHub, a merge request on GitLab or a pull request on Bitbucket, FISYCO reads the changed .tsx and .jsx files. It looks for:
Only changed files are read, so a pull request isn't blamed for code it didn't touch.
The comment and the check
- One comment per pull request. FISYCO updates it on every push instead of adding new ones. When the notes are resolved, the comment says so.
- One check on the latest commit. Without notes it passes. With notes it's neutral by default: a suggestion, not a failure.
- GitLab and Bitbucket show the result as a commit status or a report with the same name. GitLab has no neutral status, so notes show as failed there.
Make the check blocking
- Open Design system in code → Settings.
- In Pull request check, turn on Block merging while design system notes remain. Only workspace admins can change it.
- In your repository's branch protection rules, mark "FISYCO design system" as a required check.
The setting makes the check fail while notes remain. It only stops a merge once the branch protection rule requires it.
We suggest starting with the default. Watch which notes people fix and which they ignore, tune your team's rules, and turn on blocking when the notes are trusted.
Team rules
In the same settings you can add rules the review enforces:
- Components agents must not use: one component name per line. Using one becomes a note.
- Hide deprecated components: search no longer offers them, and using one is a rule violation.
- Forbidden in code: text that must not appear in code, with what to use instead.
The same rules go to AI agents through the FISYCO MCP server, so an agent learns them before it writes the code.