|
139 | 139 | "additionalProperties": false |
140 | 140 | }, |
141 | 141 |
|
| 142 | + "targetingOrgType": { |
| 143 | + "type": "string", |
| 144 | + "enum": ["org", "user"] |
| 145 | + }, |
| 146 | + |
| 147 | + "targetingSeedRepo": { |
| 148 | + "type": "object", |
| 149 | + "required": ["owner", "repo"], |
| 150 | + "properties": { |
| 151 | + "owner": { |
| 152 | + "type": "string", |
| 153 | + "minLength": 1, |
| 154 | + "description": "GitHub owner (org or user)." |
| 155 | + }, |
| 156 | + "repo": { |
| 157 | + "type": "string", |
| 158 | + "minLength": 1, |
| 159 | + "description": "GitHub repo name." |
| 160 | + }, |
| 161 | + "notes": { "type": "string" } |
| 162 | + }, |
| 163 | + "additionalProperties": false |
| 164 | + }, |
| 165 | + |
| 166 | + "targetingBlock": { |
| 167 | + "type": "object", |
| 168 | + "description": "Optional targeting spec for partner/integrator discovery. Drives the target list generator.", |
| 169 | + "properties": { |
| 170 | + "keywords": { |
| 171 | + "type": "array", |
| 172 | + "items": { "type": "string", "minLength": 1 }, |
| 173 | + "minItems": 1, |
| 174 | + "description": "Search keywords for GitHub readme/description matching." |
| 175 | + }, |
| 176 | + "topics": { |
| 177 | + "type": "array", |
| 178 | + "items": { "type": "string", "minLength": 1 }, |
| 179 | + "minItems": 1, |
| 180 | + "description": "GitHub repo topics to search for." |
| 181 | + }, |
| 182 | + "languages": { |
| 183 | + "type": "array", |
| 184 | + "items": { "type": "string", "minLength": 1 }, |
| 185 | + "description": "Programming languages to filter by." |
| 186 | + }, |
| 187 | + "orgTypes": { |
| 188 | + "type": "array", |
| 189 | + "items": { "$ref": "#/$defs/targetingOrgType" }, |
| 190 | + "description": "Filter by GitHub owner type." |
| 191 | + }, |
| 192 | + "exclusions": { |
| 193 | + "type": "array", |
| 194 | + "items": { "type": "string", "minLength": 1 }, |
| 195 | + "description": "GitHub owners or repos to exclude from results." |
| 196 | + }, |
| 197 | + "seedRepos": { |
| 198 | + "type": "array", |
| 199 | + "items": { "$ref": "#/$defs/targetingSeedRepo" }, |
| 200 | + "description": "Known repos to use for similarity expansion." |
| 201 | + } |
| 202 | + }, |
| 203 | + "additionalProperties": false |
| 204 | + }, |
| 205 | + |
142 | 206 | "pressBlock": { |
143 | 207 | "type": "object", |
144 | 208 | "description": "Optional press/partner data for a tool. Enables press pages, outreach packs, and partner bundles.", |
|
333 | 397 | "items": { "$ref": "#/$defs/message" }, |
334 | 398 | "minItems": 1 |
335 | 399 | }, |
336 | | - "press": { "$ref": "#/$defs/pressBlock" } |
| 400 | + "press": { "$ref": "#/$defs/pressBlock" }, |
| 401 | + "targeting": { "$ref": "#/$defs/targetingBlock" } |
337 | 402 | }, |
338 | 403 | "additionalProperties": false |
339 | 404 | }, |
|
0 commit comments