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
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ All notable changes to this project are documented here. The format follows

- Marketplace display name from **Conviso GitHub Sync Task** to **Sync External Scans with Conviso**.
Workflows keep using `convisoappsec/github-sync-task@v1`.
- Branch association no longer depends on a per-company feature flag in Conviso Platform: sending
`repository-url` is enough. The docs stop describing the flag.

## [1.0.0] — 2026-08-10

Expand Down
3 changes: 0 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,9 +127,6 @@ Three things to know before turning this on:
succeeds.
- **The Asset gets renamed.** Once associated with a repository, the Asset in Conviso Platform is
named after the repository (`org/repo`) rather than the project name reported by the scanner.
- Branch association also depends on the feature being enabled for your company in Conviso
Platform. Until then the action behaves exactly as it would without the two inputs, and sending
them is harmless.

### Pull requests

Expand Down
18 changes: 6 additions & 12 deletions docs/branch-association.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,13 @@ The `associateProject` mutation accepts:

## The gate that defines everything

`branches` **only takes effect** when both conditions hold:
`branches` **only takes effect** when `repositoryUrl` is present.

1. `repositoryUrl` is present, **and**
2. the `asset-branch-model-write` feature flag is enabled for the company.

Two consequences the action is designed around:

- **Sending `branches` without `repositoryUrl` is a silent no-op.** No error, no warning from the
API — the value is discarded and the association falls back to the legacy, name-based path. That
is why the action warns locally instead of relying on the response, and why `repositoryUrl` and
`branch` were introduced together rather than one after the other.
- **The flag is per company.** With it off, behaviour is identical to not sending the fields at
all. The change is backward-compatible by construction.
The consequence the action is designed around: **sending `branches` without `repositoryUrl` is a
silent no-op.** No error, no warning from the API — the value is discarded and the association
falls back to the legacy, name-based path. That is why the action warns locally instead of relying
on the response, and why `repositoryUrl` and `branch` were introduced together rather than one
after the other.

When the gate passes, the backend identifies the Asset by repository rather than by name, creates
a `Branch` per declared branch, and stamps a separate `ImportedScan` per branch. An older scan
Expand Down
3 changes: 1 addition & 2 deletions docs/publishing-marketplace.md
Original file line number Diff line number Diff line change
Expand Up @@ -192,8 +192,7 @@ decision rather than a surprise:

2. **A branch without a repository is dropped silently by the API.** The action warns
(`branch was resolved but repository-url is empty…`) but still succeeds, because the API's
answer is a `200`. Branch association additionally depends on a per-company feature flag in
Conviso Platform; while it is off, the two inputs are accepted and have no effect.
answer is a `200`.

---

Expand Down
Loading