Skip to content

Commit f501bb6

Browse files
committed
feat: initial version of map-reduce adapter engram
Release-As: 0.1.0
0 parents  commit f501bb6

34 files changed

Lines changed: 3505 additions & 0 deletions
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: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
name: "Bug report"
3+
about: "Report a reproducible issue in an operator, transport, SDK, Engram, or Impulse"
4+
labels: ["kind/bug"]
5+
---
6+
7+
## Component(s)
8+
- [ ] bobrapet (Story/StoryRun controllers)
9+
- [ ] bobravoz-grpc (transport operator)
10+
- [ ] bubu-sdk-go
11+
- [ ] Engram (name it below)
12+
- [ ] Impulse (name it below)
13+
- [ ] Docs / website
14+
15+
If Engram/Impulse:
16+
```
17+
name:
18+
version/tag:
19+
execution mode (job / deployment / impulse):
20+
```
21+
22+
## What happened?
23+
Tell us what broke. Include the Story/StoryRun status, the expected behaviour, and what you observed instead.
24+
25+
## Minimal reproduction
26+
1. Inputs/Story snippet (YAML or JSON)
27+
2. Commands you ran (`kubectl`, `make`, etc.)
28+
3. Cluster details (Kubernetes version, Kind/Minikube/managed cluster)
29+
30+
```
31+
apiVersion: stories.bubustack.io/v1alpha1
32+
kind: Story
33+
metadata:
34+
name: example
35+
spec:
36+
...
37+
```
38+
39+
## Logs & traces
40+
- `kubectl logs` for controllers or Engrams (set `BUBU_DEBUG=true` if possible)
41+
- Relevant excerpts from `storyrun` / `steprun` status
42+
- TransportBinding / bobravoz logs if streaming is impacted
43+
44+
## Additional context
45+
Anything else we should know? For example, custom overrides, secrets/providers, or recent upgrades.

.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/map-reduce-adapter-engram/security/advisories/new
5+
about: Please use our private reporting channel for vulnerabilities.
6+
- name: Architecture & roadmap discussions
7+
url: https://github.com/orgs/bubustack/discussions
8+
about: For proposals that span multiple repositories, start a discussion before opening issues.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
name: "Docs / community update"
3+
about: "Request a documentation, support, or example update"
4+
labels: ["kind/docs"]
5+
---
6+
7+
## Area
8+
- [ ] Operator docs / architecture
9+
- [ ] Engram or Impulse README (name it)
10+
- [ ] SDK reference (Go examples)
11+
- [ ] Website / tutorials / blog
12+
- [ ] Community health file (Code of Conduct, Security, Support, etc.)
13+
14+
## What needs to change?
15+
Link to the existing page/file and tell us what is missing or incorrect.
16+
17+
## Source of truth
18+
Add the CRD, code snippet, or log output that proves the correct behaviour so we can update the doc with confidence.
19+
20+
## Suggested fix (optional)
21+
Share wording, diagrams, or commands that would resolve the issue.
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
name: "Feature request"
3+
about: "Pitch a new capability for the operator, transport, SDK, Engram, or docs"
4+
labels: ["kind/feature"]
5+
---
6+
7+
## Problem statement
8+
What workflow or operational gap are you trying to solve? Include scale, latency, tenancy, or compliance constraints if relevant.
9+
10+
## Proposed change
11+
Describe the behaviour you’d like to see. If this affects CRDs, Engram templates, or SDK APIs, list the new fields and defaults.
12+
13+
```
14+
apiVersion: catalog.bubustack.io/v1alpha1
15+
kind: EngramTemplate
16+
spec:
17+
with:
18+
newField: ...
19+
```
20+
21+
## Affected component(s)
22+
- [ ] bobrapet
23+
- [ ] bobravoz-grpc
24+
- [ ] bubu-sdk-go
25+
- [ ] Engram (name it)
26+
- [ ] Impulse (name it)
27+
- [ ] Docs / website
28+
29+
## Alternatives considered
30+
What did you try already? Examples: custom Engram, CEL policy, external controller, different transport, etc.
31+
32+
## Additional context
33+
Links, design docs, screenshots, or related issues/discussions.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
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 / examples
9+
- [ ] Refactor / chore
10+
11+
## Related issues
12+
<!-- Link issues (e.g., Fixes #123) -->
13+
14+
## How was this tested?
15+
- [ ] Unit tests
16+
- [ ] Integration tests
17+
- [ ] E2E / Kind tests
18+
- [ ] Manual verification
19+
Commands / notes:
20+
```bash
21+
# paste commands you ran (or explain why not)
22+
```
23+
24+
## Docs / CRDs impact
25+
- [ ] Docs updated (README/Guides/Support)
26+
- [ ] CRD or Engram/Impulse schema changes
27+
- [ ] Not applicable
28+
29+
## Checklist
30+
- [ ] Lint/tests ran locally
31+
- [ ] Updated Engram.yaml/CRDs/manifests when behaviour changed
32+
- [ ] Added changelog/release note if required
33+
- [ ] No secrets or sensitive data committed

.github/dependabot.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
version: 2
2+
updates:
3+
# Go module dependencies
4+
- package-ecosystem: "gomod"
5+
directory: "/"
6+
schedule:
7+
interval: "weekly"
8+
day: "monday"
9+
open-pull-requests-limit: 10
10+
groups:
11+
kubernetes:
12+
patterns:
13+
- "k8s.io/*"
14+
- "sigs.k8s.io/*"
15+
opentelemetry:
16+
patterns:
17+
- "go.opentelemetry.io/*"
18+
grpc:
19+
patterns:
20+
- "google.golang.org/grpc"
21+
- "google.golang.org/protobuf"
22+
bobrapet:
23+
patterns:
24+
- "github.com/bubustack/bobrapet"
25+
labels:
26+
- "dependencies"
27+
- "go"
28+
29+
# GitHub Actions
30+
- package-ecosystem: "github-actions"
31+
directory: "/"
32+
schedule:
33+
interval: "weekly"
34+
day: "monday"
35+
open-pull-requests-limit: 5
36+
labels:
37+
- "dependencies"
38+
- "github-actions"
39+
40+
# Docker base images
41+
- package-ecosystem: "docker"
42+
directory: "/"
43+
schedule:
44+
interval: "weekly"
45+
day: "monday"
46+
open-pull-requests-limit: 5
47+
labels:
48+
- "dependencies"
49+
- "docker"
50+
51+

.github/labels.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
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 such as Dependabot."
22+
- name: "go"
23+
color: "00ADD8"
24+
description: "Go module dependency updates."
25+
- name: "github-actions"
26+
color: "000000"
27+
description: "GitHub Actions dependency updates."
28+
- name: "docker"
29+
color: "2496ED"
30+
description: "Docker base image updates."
31+
- name: "area/operator"
32+
color: "0b4f6c"
33+
description: "Bobrapet controller or CRD-level change."
34+
- name: "area/transport"
35+
color: "0b4f6c"
36+
description: "Bobravoz gRPC transport changes."
37+
- name: "area/sdk"
38+
color: "0b4f6c"
39+
description: "Bubu SDK or shared runtime work."
40+
- name: "area/engram"
41+
color: "0b4f6c"
42+
description: "Specific Engram implementation or template change."
43+
- name: "area/impulse"
44+
color: "0b4f6c"
45+
description: "Impulse templates, webhook ingestion, or trigger paths."
46+
- name: "area/docs"
47+
color: "0b4f6c"
48+
description: "Docs site, READMEs, or knowledge base updates."
49+
- name: "priority/critical"
50+
color: "b60205"
51+
description: "Production-impacting issue that needs immediate attention."
52+
- name: "priority/high"
53+
color: "d93f0b"
54+
description: "Important issue to schedule soon."
55+
- name: "priority/medium"
56+
color: "fbca04"
57+
description: "Normal priority item."
58+
- name: "priority/low"
59+
color: "cfd3d7"
60+
description: "Nice-to-have or backlog item."
61+
- name: "status/triage"
62+
color: "ededed"
63+
description: "Issue has not been reviewed yet."
64+
- name: "status/needs-info"
65+
color: "f9d0c4"
66+
description: "Waiting on more information from the reporter."
67+
- name: "status/in-progress"
68+
color: "004d99"
69+
description: "Actively being worked on."
70+
- name: "status/blocked"
71+
color: "5319e7"
72+
description: "Blocked on another issue, dependency, or external signal."
73+
- name: "status/ready"
74+
color: "28a745"
75+
description: "Ready to merge/release once tests pass."
76+
- name: "good first issue"
77+
color: "7057ff"
78+
description: "Small, well-scoped tasks for new contributors."
79+
- name: "help wanted"
80+
color: "008672"
81+
description: "Looking for community contributions."
82+
- name: "triage/needs-owner"
83+
color: "5319e7"
84+
description: "Needs someone to own or shepherd the fix."

.github/release-please-config.json

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
{
2+
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
3+
"packages": {
4+
".": {
5+
"release-type": "go",
6+
"package-name": "map-reduce-adapter-engram",
7+
"include-component-in-tag": false,
8+
"changelog-sections": [
9+
{
10+
"type": "feat",
11+
"section": "Features",
12+
"hidden": false
13+
},
14+
{
15+
"type": "fix",
16+
"section": "Bug Fixes",
17+
"hidden": false
18+
},
19+
{
20+
"type": "perf",
21+
"section": "Performance Improvements",
22+
"hidden": false
23+
},
24+
{
25+
"type": "refactor",
26+
"section": "Code Refactoring",
27+
"hidden": false
28+
},
29+
{
30+
"type": "docs",
31+
"section": "Documentation",
32+
"hidden": false
33+
},
34+
{
35+
"type": "test",
36+
"section": "Tests",
37+
"hidden": false
38+
},
39+
{
40+
"type": "build",
41+
"section": "Build System",
42+
"hidden": false
43+
},
44+
{
45+
"type": "ci",
46+
"section": "Continuous Integration",
47+
"hidden": false
48+
},
49+
{
50+
"type": "chore",
51+
"section": "Miscellaneous",
52+
"hidden": false
53+
}
54+
]
55+
}
56+
},
57+
"bump-minor-pre-major": true,
58+
"bump-patch-for-minor-pre-major": true
59+
}

.github/workflows/ci.yaml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
verify:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Clone the code
17+
uses: actions/checkout@v6
18+
19+
- name: Setup Go
20+
uses: actions/setup-go@v6
21+
with:
22+
go-version-file: go.mod
23+
check-latest: true
24+
cache: true
25+
cache-dependency-path: go.sum
26+
27+
- name: Verify go.mod is tidy
28+
run: go mod tidy -diff
29+
30+
- name: Check linter configuration
31+
run: make lint-config
32+
33+
- name: Lint
34+
run: make lint
35+
36+
- name: Test
37+
run: make test

0 commit comments

Comments
 (0)