Skip to content

Commit 7b936a4

Browse files
committed
feat: harden core runtime, templating, docs, and release tooling
Clean up the shared library for the first tagged release: - remove legacy compatibility paths and keep latest-only behavior - harden templating evaluation, normalization, validation, and storage-ref handling - tighten runtime naming, env, operator config, transport connector, and TLS behavior - add and expand regression coverage for the shared runtime and templating packages - align golangci-lint config/version with bobrapet and fix all lint findings - normalize repository docs, release automation, and ignore rules Release-As: 0.1.0
0 parents  commit 7b936a4

89 files changed

Lines changed: 8929 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.custom-gcl.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# This file configures golangci-lint with module plugins.
2+
# When you run 'make lint', it will automatically build a custom golangci-lint binary
3+
# with all the plugins listed below.
4+
#
5+
# See: https://golangci-lint.run/plugins/module-plugins/
6+
version: v2.8.0
7+
plugins:
8+
# logcheck validates structured logging calls and parameters (e.g., balanced key-value pairs)
9+
- module: "sigs.k8s.io/logtools"
10+
import: "sigs.k8s.io/logtools/logcheck/gclplugin"
11+
version: latest
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "0.0.0"
3+
}
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
name: "Bug report"
3+
about: "Report a reproducible issue in core contracts, templating, or runtime helpers"
4+
labels: ["kind/bug", "status/triage"]
5+
---
6+
7+
## Area
8+
- [ ] `contracts`
9+
- [ ] `templating`
10+
- [ ] `runtime/bootstrap`
11+
- [ ] `runtime/env`
12+
- [ ] `runtime/featuretoggles`
13+
- [ ] `runtime/identity`
14+
- [ ] `runtime/naming`
15+
- [ ] `runtime/operatorconfig`
16+
- [ ] `runtime/stage`
17+
- [ ] `runtime/storage`
18+
- [ ] `runtime/transport`
19+
- [ ] Repo health / CI / release automation
20+
21+
## What happened?
22+
Tell us what broke, what you expected, and what happened instead.
23+
24+
## Minimal reproduction
25+
1. Input, config, or template snippet
26+
2. Commands you ran (`make`, `go test`, or downstream reproduction)
27+
3. Exact package/function involved
28+
29+
```go
30+
// paste the smallest possible reproduction here
31+
```
32+
33+
## Logs / errors
34+
- Stack traces or returned errors
35+
- Relevant template/config payloads
36+
- Downstream impact in bobrapet, bobravoz-grpc, or bubu-sdk-go if applicable
37+
38+
## Additional context
39+
Anything else we should know, including recent behavior changes or local environment details.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Security reports
4+
url: https://github.com/bubustack/.github/security/advisories/new
5+
about: Please use the private security reporting channel for vulnerabilities.
6+
- name: Architecture discussions
7+
url: https://github.com/orgs/bubustack/discussions
8+
about: For cross-repository design changes, start a discussion before opening an issue.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
name: "Docs / repo health update"
3+
about: "Request a documentation, CI, or community-health update"
4+
labels: ["kind/docs", "status/triage"]
5+
---
6+
7+
## Area
8+
- [ ] README / usage examples
9+
- [ ] CONTRIBUTING / SECURITY / SUPPORT
10+
- [ ] Release / changelog / versioning docs
11+
- [ ] CI / automation docs
12+
- [ ] AI guidance (`AGENTS.md`, `CLAUDE.md`)
13+
14+
## What needs to change?
15+
Link to the current file or workflow and describe what is missing or inaccurate.
16+
17+
## Source of truth
18+
Add the code, test result, audit finding, or workflow behavior that should drive the update.
19+
20+
## Suggested fix
21+
If you have a preferred wording or structure, include it here.
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
name: "Feature request"
3+
about: "Propose a new shared contract, helper, or release/maintenance capability"
4+
labels: ["kind/feature", "status/triage"]
5+
---
6+
7+
## Problem statement
8+
What shared problem are you trying to solve across the BubuStack ecosystem?
9+
10+
## Proposed change
11+
Describe the API, contract, or behavior you want to add.
12+
13+
```go
14+
// sketch the new API or config shape here if helpful
15+
```
16+
17+
## Affected area
18+
- [ ] `contracts`
19+
- [ ] `templating`
20+
- [ ] `runtime/*`
21+
- [ ] release / CI / repo health
22+
23+
## Compatibility / migration
24+
Does this replace an existing helper or require coordinated downstream changes?
25+
26+
## Alternatives considered
27+
What did you try already, and why is that not sufficient?
28+
29+
## Additional context
30+
Links, design notes, or related issues/discussions.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
## Summary
2+
<!-- What does this PR change and why? -->
3+
4+
## Type of change
5+
- [ ] Bug fix
6+
- [ ] New feature
7+
- [ ] Breaking change
8+
- [ ] Documentation / repo health
9+
- [ ] Refactor / chore
10+
11+
## Related issues
12+
<!-- Link issues (for example: Fixes #123) -->
13+
14+
## Shared-library impact
15+
- [ ] Affects `contracts`
16+
- [ ] Affects `templating`
17+
- [ ] Affects runtime helpers
18+
- [ ] Affects release / CI / repo health only
19+
- [ ] Downstream repos need coordinated follow-up
20+
21+
## How was this tested?
22+
- [ ] Unit tests
23+
- [ ] Race detector
24+
- [ ] Manual verification
25+
- [ ] CI / workflow validation
26+
Commands / notes:
27+
```bash
28+
# paste commands you ran (or explain why not)
29+
```
30+
31+
## Docs / release impact
32+
- [ ] README / contributing / support docs updated
33+
- [ ] Changelog / release note impact considered
34+
- [ ] No docs changes required
35+
36+
## Checklist
37+
- [ ] Lint/tests ran locally
38+
- [ ] No stale compatibility shim kept by accident
39+
- [ ] No secrets or sensitive data committed

.github/dependabot.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "gomod"
4+
directory: "/"
5+
schedule:
6+
interval: "weekly"
7+
day: "monday"
8+
open-pull-requests-limit: 10
9+
groups:
10+
kubernetes:
11+
patterns:
12+
- "k8s.io/*"
13+
- "sigs.k8s.io/*"
14+
grpc:
15+
patterns:
16+
- "google.golang.org/grpc"
17+
- "google.golang.org/protobuf"
18+
templating:
19+
patterns:
20+
- "github.com/Masterminds/*"
21+
- "github.com/mitchellh/*"
22+
labels:
23+
- "dependencies"
24+
- "go"
25+
26+
- package-ecosystem: "github-actions"
27+
directory: "/"
28+
schedule:
29+
interval: "weekly"
30+
day: "monday"
31+
open-pull-requests-limit: 5
32+
labels:
33+
- "dependencies"
34+
- "github-actions"

.github/labels.yml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
- name: "kind/bug"
2+
color: "d73a4a"
3+
description: "Unexpected behaviour or regression that needs fixing."
4+
- name: "kind/feature"
5+
color: "0e8a16"
6+
description: "New functionality or enhancement request."
7+
- name: "kind/docs"
8+
color: "c5def5"
9+
description: "Documentation, examples, or community-health updates."
10+
- name: "kind/refactor"
11+
color: "5319e7"
12+
description: "Code health, cleanup, or non-functional improvements."
13+
- name: "kind/tests"
14+
color: "fbca04"
15+
description: "Testing, CI, or verification-only changes."
16+
- name: "kind/chore"
17+
color: "bfd4f2"
18+
description: "Maintenance, dependency bumps, or release automation."
19+
- name: "dependencies"
20+
color: "0366d6"
21+
description: "Dependency updates raised by automation."
22+
- name: "area/contracts"
23+
color: "0b4f6c"
24+
description: "Shared constants, config keys, and index contract changes."
25+
- name: "area/templating"
26+
color: "0b4f6c"
27+
description: "Template parsing, validation, or evaluation changes."
28+
- name: "area/runtime"
29+
color: "0b4f6c"
30+
description: "Runtime helper changes outside the templating engine."
31+
- name: "area/transport"
32+
color: "0b4f6c"
33+
description: "Binding, protocol, connector, or transport runtime changes."
34+
- name: "area/release"
35+
color: "0b4f6c"
36+
description: "Release automation, versioning, or changelog changes."
37+
- name: "area/docs"
38+
color: "0b4f6c"
39+
description: "README, support, contributing, or community-health updates."
40+
- name: "priority/critical"
41+
color: "b60205"
42+
description: "Production-impacting issue that needs immediate attention."
43+
- name: "priority/high"
44+
color: "d93f0b"
45+
description: "Important issue to schedule soon."
46+
- name: "priority/medium"
47+
color: "fbca04"
48+
description: "Normal priority item."
49+
- name: "priority/low"
50+
color: "cfd3d7"
51+
description: "Nice-to-have or backlog item."
52+
- name: "status/triage"
53+
color: "ededed"
54+
description: "Issue has not been reviewed yet."
55+
- name: "status/needs-info"
56+
color: "f9d0c4"
57+
description: "Waiting on more information from the reporter."
58+
- name: "status/in-progress"
59+
color: "004d99"
60+
description: "Actively being worked on."
61+
- name: "status/blocked"
62+
color: "5319e7"
63+
description: "Blocked on another issue, dependency, or external signal."
64+
- name: "status/ready"
65+
color: "28a745"
66+
description: "Ready to merge or release once tests pass."
67+
- name: "good first issue"
68+
color: "7057ff"
69+
description: "Small, well-scoped tasks for new contributors."
70+
- name: "help wanted"
71+
color: "008672"
72+
description: "Looking for community contributions."

.github/release-please-config.json

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
3+
"packages": {
4+
".": {
5+
"release-type": "go",
6+
"package-name": "core",
7+
"include-component-in-tag": false,
8+
"changelog-sections": [
9+
{ "type": "feat", "section": "Features", "hidden": false },
10+
{ "type": "fix", "section": "Bug Fixes", "hidden": false },
11+
{ "type": "perf", "section": "Performance Improvements", "hidden": false },
12+
{ "type": "refactor", "section": "Code Refactoring", "hidden": false },
13+
{ "type": "docs", "section": "Documentation", "hidden": false },
14+
{ "type": "test", "section": "Tests", "hidden": false },
15+
{ "type": "build", "section": "Build System", "hidden": false },
16+
{ "type": "ci", "section": "Continuous Integration", "hidden": false },
17+
{ "type": "chore", "section": "Miscellaneous", "hidden": false }
18+
]
19+
}
20+
},
21+
"bump-minor-pre-major": true,
22+
"bump-patch-for-minor-pre-major": true
23+
}

0 commit comments

Comments
 (0)