No unresolved comments plugin
This plugin adds a merge check that requires all comments to be resolved before merging.
It will show the unresolved comments and allow you to easily navigate on the pull request by clicking on them.
In order to enable it, use the following config:
import {const configure: (config: Config | (() => Config)) => void
configure} from "flowie.app"
import {const noUnresolvedComments: OptionsPlugin<NoUnresolvedCommentsOptions, false>
noUnresolvedComments} from "flowie.app/plugins"
function configure(config: Config | (() => Config)): void
configure({
Config.plugins?: PluginDef<unknown>[] | undefined
plugins: [function noUnresolvedComments(): PluginDef<NoUnresolvedCommentsOptions> (+2 overloads)
noUnresolvedComments()],
})
Restricting who can resolve comments
By default, anyone can resolve comments. However, you can specify who should be
able to resolve the comments in order for the check to pass, using the allowResolve
option.
import {const configure: (config: Config | (() => Config)) => void
configure} from "flowie.app"
import {const noUnresolvedComments: OptionsPlugin<NoUnresolvedCommentsOptions, false>
noUnresolvedComments} from "flowie.app/plugins"
function configure(config: Config | (() => Config)): void
configure({
Config.plugins?: PluginDef<unknown>[] | undefined
plugins: [function noUnresolvedComments(options: NoUnresolvedCommentsOptions): PluginDef<NoUnresolvedCommentsOptions> (+2 overloads)
noUnresolvedComments({NoUnresolvedCommentsOptions.allowResolve?: string[] | undefined
allowResolve: ["@owner"]})],
})
The @owner
is a special value that refers to the user who made the initial
comment. When someone else resolves the comment, it will then have to be
accepted by someone else in the allowResolve
list.
In this example, Sarah has resolved a comment made by John, so in order for the check to pass, John(the owner) has to click on ‘Accept’.
You can also use groups to specify who should be able to accept comments:
import {const configure: (config: Config | (() => Config)) => void
configure} from "flowie.app"
import {const noUnresolvedComments: OptionsPlugin<NoUnresolvedCommentsOptions, false>
noUnresolvedComments} from "flowie.app/plugins"
function configure(config: Config | (() => Config)): void
configure({
Config.plugins?: PluginDef<unknown>[] | undefined
plugins: [
function noUnresolvedComments(options: NoUnresolvedCommentsOptions): PluginDef<NoUnresolvedCommentsOptions> (+2 overloads)
noUnresolvedComments({
NoUnresolvedCommentsOptions.allowResolve?: string[] | undefined
allowResolve: ["@owner", "Team leaders"],
}),
],
})