Skip to content

OWNERS: add team:ide and own the environments integration tests - #6184

Merged
rugpanov merged 2 commits into
dbconnect/setup-local-integrationfrom
grigory/owners-integration-environments
Aug 6, 2026
Merged

OWNERS: add team:ide and own the environments integration tests#6184
rugpanov merged 2 commits into
dbconnect/setup-local-integrationfrom
grigory/owners-integration-environments

Conversation

@rugpanov

@rugpanov rugpanov commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Changes

Two related changes to ownership of the DB Connect / local-environments code:

  1. Define team:ide in .github/OWNERTEAMS@rugpanov @rclarey @anton-107 @misha-db.
  2. Own /integration/cmd/environments/ so the setup-local integration tests are reviewed by the same people who own the code they exercise.

The three existing localenv paths each repeated the same four handles, so a roster change meant four separate edits that could silently drift apart. They now reference the alias instead:

/libs/localenv/                 team:ide
/cmd/environments/              team:ide
/acceptance/localenv/           team:ide
/integration/cmd/environments/  team:ide   # new

Ownership is unchanged for the three pre-existing paths — same four people, one source of truth. The rest of /integration/ stays with team:platform.

Why the new entry sits below /integration/

findOwners is last-match-wins. Putting the new rule next to the other localenv lines (line ~17) looks natural but silently does nothing: the broader /integration/ team:platform rule at line 65 matches later and wins. My first attempt did exactly that, and owners.js validate passed anyway — the misplacement is invisible to the validator. Hence the position after /integration/, plus a comment so it doesn't get "tidied" back up.

No GitHub org team yet

There's no github.com/orgs/databricks/teams/ide page, so the validator emits its non-blocking no GitHub team-page URL warning — the same one team:ai-training already produces. Per validateOwners, this is by design: "A team may legitimately predate its GitHub team page, so this never blocks a merge."

The alias is fully functional standalone, which is how the existing aliases already work — neither cli-maintainers nor cli-platform (both listed in the OWNERTEAMS header) exists as an org team today, and OWNERTEAMS is explicitly the source of truth because GITHUB_TOKEN can't resolve org team membership. Creating the real org team needs org-owner access; the header URL can be added later.

Tests

  • node .github/scripts/owners.js validate → passes (2 non-blocking warnings: the new team:ide and the pre-existing team:ai-training).
  • node --test .github/scripts/owners.test.js .github/workflows/maintainer-approval.test.js → 64/64 pass.
  • Resolution verified with findOwners:
path owners
libs/localenv/uv.go rugpanov rclarey anton-107 misha-db (unchanged)
cmd/environments/setup_local.go rugpanov rclarey anton-107 misha-db (unchanged)
acceptance/localenv/… rugpanov rclarey anton-107 misha-db (unchanged)
integration/cmd/environments/setup_local_test.go rugpanov rclarey anton-107 misha-db ✅ new
integration/cmd/jobs/foo_test.go team:platform (unchanged)

Note on the base branch

Based on dbconnect/setup-local-integration (#6155) rather than main, because owners.js validate errors on rules whose path doesn't exist in the tree, and integration/cmd/environments/ is created by that PR. Once #6155 lands this can be retargeted to main.

This pull request and its description were written by Isaac.

Add @rugpanov, @rclarey, @anton-107 and @misha-db as owners of
/integration/cmd/environments/, matching the existing ownership of
/libs/localenv/, /cmd/environments/ and /acceptance/localenv/ so the
DB Connect / setup-local tests are reviewed by the same people as the
code they exercise. The rest of /integration/ stays with team:platform.

The entry has to sit below the broader /integration/ rule: findOwners is
last-match-wins, so placing it next to the other localenv lines earlier in
the file would let team:platform override it. Verified both ways with
findOwners before settling on this position.
@rugpanov rugpanov changed the title OWNERS: own the environments integration tests OWNERS: add team:deco-ide and own the environments integration tests Aug 6, 2026
The four localenv paths each repeated the same list of four handles, so a
roster change meant four edits that could silently drift apart. Define
team:ide in OWNERTEAMS once and reference it from all of them, including
the new /integration/cmd/environments/ entry.

Ownership is unchanged: all four paths still resolve to @rugpanov, @rclarey,
@anton-107 and @misha-db, verified with findOwners.

No GitHub org team page yet, so the validator emits its non-blocking
"no GitHub team-page URL" warning, same as team:ai-training. Creating the org
team needs org-owner access; the alias works standalone in the meantime, which
is how team:bundle and team:platform already operate (neither cli-maintainers
nor cli-platform exists as an org team today).
@rugpanov
rugpanov force-pushed the grigory/owners-integration-environments branch from b98b43e to 722c947 Compare August 6, 2026 08:56
@rugpanov rugpanov changed the title OWNERS: add team:deco-ide and own the environments integration tests OWNERS: add team:ide and own the environments integration tests Aug 6, 2026
@eng-dev-ecosystem-bot

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: 722c947

Run: 31087029351

Env 💚​RECOVERED 🙈​SKIP ✅​pass 🙈​skip Time
💚​ aws linux 4 4 294 1097 4:13
💚​ aws windows 4 4 296 1095 3:45
💚​ azure linux 4 4 293 1097 5:23
💚​ azure windows 4 4 295 1095 4:11
💚​ gcp linux 1 5 294 1097 6:28
💚​ gcp windows 1 5 296 1095 4:51
8 interesting tests: 4 RECOVERED, 4 SKIP
Test Name aws linux aws windows azure linux azure windows gcp linux gcp windows
💚​ TestAccept 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
🙈​ TestAccept/bundle/invariant/no_drift 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_endpoints/drift/recreated_same_name 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_indexes/recreate/embedding_dimension 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/ssh/connection 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
💚​ TestFetchRepositoryInfoAPI_FromRepo 💚​R 💚​R 💚​R 💚​R 🙈​S 🙈​S
💚​ TestFetchRepositoryInfoAPI_FromRepo/root 💚​R 💚​R 💚​R 💚​R
💚​ TestFetchRepositoryInfoAPI_FromRepo/subdir 💚​R 💚​R 💚​R 💚​R
Top 3 slowest tests (at least 2 minutes):
duration env testname
3:26 aws windows TestAccept
3:22 azure windows TestAccept
3:17 gcp windows TestAccept

@rugpanov
rugpanov merged commit cfd90c9 into dbconnect/setup-local-integration Aug 6, 2026
26 checks passed
@rugpanov
rugpanov deleted the grigory/owners-integration-environments branch August 6, 2026 10:42
rugpanov added a commit that referenced this pull request Aug 6, 2026
## Changes

Two related changes to ownership of the DB Connect / local-environments
code:

1. **Define `team:ide`** in `.github/OWNERTEAMS` — `@rugpanov @rclarey
@anton-107 @misha-db`.
2. **Own `/integration/cmd/environments/`** so the `setup-local`
integration tests are reviewed by the same people who own the code they
exercise.

The three existing localenv paths each repeated the same four handles,
so a roster change meant four separate edits that could silently drift
apart. They now reference the alias instead:

```
/libs/localenv/                 team:ide
/cmd/environments/              team:ide
/acceptance/localenv/           team:ide
/integration/cmd/environments/  team:ide   # new
```

**Ownership is unchanged** for the three pre-existing paths — same four
people, one source of truth. The rest of `/integration/` stays with
`team:platform`.

### Why the new entry sits below `/integration/`

`findOwners` is **last-match-wins**. Putting the new rule next to the
other localenv lines (line ~17) looks natural but silently does nothing:
the broader `/integration/ team:platform` rule at line 65 matches later
and wins. My first attempt did exactly that, and `owners.js validate`
passed anyway — the misplacement is invisible to the validator. Hence
the position after `/integration/`, plus a comment so it doesn't get
"tidied" back up.

### No GitHub org team yet

There's no `github.com/orgs/databricks/teams/ide` page, so the validator
emits its non-blocking `no GitHub team-page URL` warning — the same one
`team:ai-training` already produces. Per `validateOwners`, this is by
design: *"A team may legitimately predate its GitHub team page, so this
never blocks a merge."*

The alias is fully functional standalone, which is how the existing
aliases already work — neither `cli-maintainers` nor `cli-platform`
(both listed in the OWNERTEAMS header) exists as an org team today, and
OWNERTEAMS is explicitly the source of truth because `GITHUB_TOKEN`
can't resolve org team membership. Creating the real org team needs
org-owner access; the header URL can be added later.

## Tests

- `node .github/scripts/owners.js validate` → passes (2 non-blocking
warnings: the new `team:ide` and the pre-existing `team:ai-training`).
- `node --test .github/scripts/owners.test.js
.github/workflows/maintainer-approval.test.js` → 64/64 pass.
- Resolution verified with `findOwners`:

| path | owners |
| --- | --- |
| `libs/localenv/uv.go` | `rugpanov rclarey anton-107 misha-db`
(unchanged) |
| `cmd/environments/setup_local.go` | `rugpanov rclarey anton-107
misha-db` (unchanged) |
| `acceptance/localenv/…` | `rugpanov rclarey anton-107 misha-db`
(unchanged) |
| `integration/cmd/environments/setup_local_test.go` | `rugpanov rclarey
anton-107 misha-db` ✅ new |
| `integration/cmd/jobs/foo_test.go` | `team:platform` (unchanged) |

## Note on the base branch

Based on `dbconnect/setup-local-integration` (#6155) rather than `main`,
because `owners.js validate` errors on rules whose path doesn't exist in
the tree, and `integration/cmd/environments/` is created by that PR.
Once #6155 lands this can be retargeted to `main`.

_This pull request and its description were written by Isaac._
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants