Skip to content

Commit 188e072

Browse files
Align repository with llm-d repo template
Brings this repo into conformance with the llm-d Go repo template (https://github.com/llm-d/llm-d-go-template). All 15 items from #639 are addressed: Governance docs: CODE_OF_CONDUCT.md, CONTRIBUTING.md, PR_SIGNOFF.md, SECURITY.md — copied verbatim from the template. Linting/config: .gitattributes, .hadolint.yaml, .pre-commit-config.yaml, .yamllint.yml, pyproject.toml added from template. Renamed .typos.toml to _typos.toml to match template naming convention; merged repo-specific false-positive words (k8s, KServe, vLLM) and file exclusions with the template's baseline config. GitHub metadata: .github/CODEOWNERS (defaults to @llm-d/llm-d-inference-scheduler-maintainers), .github/PULL_REQUEST_TEMPLATE.md. Workflows: .github/workflows/copilot-setup-steps.yml for gh-aw extension. Issue templates: Converted bug_report.md and feature_request.md to YAML form format (bug_report.yml, feature_request.yml) with structured fields; removed the old markdown templates. Closes #639
1 parent a0c8d17 commit 188e072

18 files changed

+718
-58
lines changed

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
.github/workflows/*.lock.yml linguist-generated=true merge=ours
2+
.github/workflows/*.campaign.g.md linguist-generated=true merge=ours

.github/CODEOWNERS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# See https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
2+
3+
# Default owners for everything in the repo
4+
* @llm-d/llm-d-inference-scheduler-maintainers

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 0 additions & 27 deletions
This file was deleted.
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: Bug Report
2+
description: File a bug report.
3+
title: "[Bug]: "
4+
labels: ["bug", "triage"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for taking the time to fill out this bug report!
10+
11+
- type: input
12+
id: contact
13+
attributes:
14+
label: Contact Details
15+
description: How can we get in touch with you if we need more info?
16+
placeholder: ex. email@example.com
17+
validations:
18+
required: false
19+
20+
- type: textarea
21+
id: what-happened
22+
attributes:
23+
label: What happened?
24+
description: Also tell us, what did you expect to happen?
25+
placeholder: Describe the bug and expected behavior
26+
validations:
27+
required: true
28+
29+
- type: input
30+
id: version
31+
attributes:
32+
label: Version
33+
description: What version are you running? (e.g., v0.1.0, commit SHA, or "main")
34+
placeholder: v0.1.0
35+
validations:
36+
required: true
37+
38+
- type: textarea
39+
id: reproduce
40+
attributes:
41+
label: Steps to Reproduce
42+
description: How can we reproduce this issue?
43+
placeholder: |
44+
1. Deploy with config...
45+
2. Send request to...
46+
3. Observe error...
47+
validations:
48+
required: true
49+
50+
- type: textarea
51+
id: environment
52+
attributes:
53+
label: Environment
54+
description: |
55+
Please provide relevant environment details.
56+
placeholder: |
57+
- Kubernetes version:
58+
- Cloud provider:
59+
- GPU type:
60+
- OS:
61+
render: markdown
62+
validations:
63+
required: false
64+
65+
- type: textarea
66+
id: logs
67+
attributes:
68+
label: Relevant log output
69+
description: Please copy and paste any relevant log output. This will be automatically formatted into code.
70+
render: shell
71+
validations:
72+
required: false

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 0 additions & 14 deletions
This file was deleted.
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: Feature Request
2+
description: Suggest a new feature or improvement.
3+
title: "[Feature]: "
4+
labels: ["enhancement", "triage"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
## Feature Request
10+
11+
Thank you for suggesting an improvement! Please fill in the details below.
12+
13+
Before opening a new feature request, please check
14+
[existing issues](https://github.com/llm-d/llm-d-inference-scheduler/issues)
15+
to see if a similar request already exists.
16+
17+
- type: textarea
18+
id: problem
19+
attributes:
20+
label: Problem Statement
21+
description: |
22+
What problem does this feature solve? Describe the use case or pain point.
23+
placeholder: "I'm always frustrated when..."
24+
validations:
25+
required: true
26+
27+
- type: textarea
28+
id: solution
29+
attributes:
30+
label: Proposed Solution
31+
description: |
32+
Describe the solution you'd like. Be as specific as possible about
33+
expected behavior and user experience.
34+
placeholder: "Ideally, it would..."
35+
validations:
36+
required: true
37+
38+
- type: textarea
39+
id: alternatives
40+
attributes:
41+
label: Alternatives Considered
42+
description: Describe any alternative solutions or workarounds you've considered.
43+
validations:
44+
required: false
45+
46+
- type: dropdown
47+
id: contribution
48+
attributes:
49+
label: Willingness to Contribute
50+
description: Would you be willing to help implement this feature?
51+
options:
52+
- "Yes, I can submit a PR"
53+
- "Yes, with guidance"
54+
- "No, but I can help test"
55+
- "No"
56+
validations:
57+
required: true
58+
59+
- type: textarea
60+
id: additional-context
61+
attributes:
62+
label: Additional Context
63+
description: Add any other context, screenshots, links, or references.
64+
validations:
65+
required: false

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
## What does this PR do?
2+
3+
<!-- Describe the changes and their purpose -->
4+
5+
## Why is this change needed?
6+
7+
<!-- Explain the motivation: bug fix, feature request, performance improvement, etc. -->
8+
9+
## How was this tested?
10+
11+
<!-- Describe how you verified the changes work correctly -->
12+
- [ ] Unit tests added/updated
13+
- [ ] Integration/e2e tests added/updated
14+
- [ ] Manual testing performed
15+
16+
## Checklist
17+
18+
- [ ] Commits are signed off (`git commit -s`) per [DCO](PR_SIGNOFF.md)
19+
- [ ] Code follows project [contributing guidelines](CONTRIBUTING.md)
20+
- [ ] Tests pass locally (`make test`)
21+
- [ ] Linters pass (`make lint`)
22+
- [ ] Documentation updated (if applicable)
23+
24+
## Related Issues
25+
26+
<!-- Link to related issues: Fixes #123, Related to #456 -->
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: "Copilot Setup Steps"
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
paths:
7+
- .github/workflows/copilot-setup-steps.yml
8+
9+
jobs:
10+
copilot-setup-steps:
11+
runs-on: ubuntu-latest
12+
permissions:
13+
contents: read
14+
steps:
15+
- name: Install gh-aw extension
16+
run: |
17+
curl -fsSL https://raw.githubusercontent.com/githubnext/gh-aw/refs/heads/main/install-gh-aw.sh | bash
18+
19+
- name: Verify gh-aw installation
20+
run: gh aw version

.hadolint.yaml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
failure-threshold: warning # only fail on warnings and errors, not info
3+
4+
ignored:
5+
# already ignored in pre-commit
6+
- DL3008 # pin versions for apt-get
7+
- DL3009 # delete apt-get cache
8+
9+
# workflow/build patterns
10+
- DL3003 # use WORKDIR instead of cd
11+
- DL3059 # multiple consecutive RUN instructions
12+
- DL4001 # using both wget and curl
13+
14+
# package manager preferences
15+
- DL3015 # avoid additional packages (--no-install-recommends)
16+
- DL3041 # specify version with dnf install
17+
- DL3042 # avoid cache directory with pip
18+
- DL3047 # wget without progress bar
19+
20+
# shellcheck rules embedded in hadolint
21+
- SC1091 # not following sourced files
22+
- SC2034 # variable appears unused
23+
- SC2046 # quote to prevent word splitting
24+
- SC2086 # double quote to prevent globbing

.pre-commit-config.yaml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Canonical pre-commit configuration for llm-d repos
2+
# Copy this file to the root of your repo
3+
#
4+
# Install: pip install pre-commit && pre-commit install
5+
# Run all: pre-commit run --all-files
6+
7+
repos:
8+
# General file hygiene hooks
9+
- repo: https://github.com/pre-commit/pre-commit-hooks
10+
rev: v6.0.0
11+
hooks:
12+
- id: trailing-whitespace
13+
- id: end-of-file-fixer
14+
- id: check-yaml
15+
args: [--unsafe] # allows custom YAML tags used in k8s
16+
- id: check-json
17+
- id: check-added-large-files
18+
args: [--maxkb=1000]
19+
- id: check-merge-conflict
20+
- id: mixed-line-ending
21+
- id: check-case-conflict
22+
23+
# Shell script linting (requires shellcheck installed)
24+
- repo: local
25+
hooks:
26+
- id: shellcheck
27+
name: shellcheck
28+
language: system
29+
entry: shellcheck
30+
args: [-x, --severity=warning]
31+
types: [shell]
32+
33+
# Dockerfile linting (requires hadolint installed)
34+
- repo: local
35+
hooks:
36+
- id: hadolint-docker
37+
name: hadolint
38+
language: system
39+
entry: hadolint
40+
args: [--failure-threshold, error]
41+
files: Dockerfile(\\..*)?$
42+
types: [file]
43+
44+
# Markdown linting
45+
- repo: https://github.com/igorshubovych/markdownlint-cli
46+
rev: v0.47.0
47+
hooks:
48+
- id: markdownlint
49+
args: [--fix]
50+
51+
# YAML linting
52+
- repo: https://github.com/adrienverge/yamllint
53+
rev: v1.37.1
54+
hooks:
55+
- id: yamllint
56+
args:
57+
- -d
58+
- >-
59+
{extends: default, rules: {line-length: {max: 250},
60+
document-start: disable, truthy: {check-keys: false}}}

0 commit comments

Comments
 (0)