Skip to content

Commit 399da41

Browse files
Merge worktree-issue-21: Normalize active DataOps branding (#21)
2 parents 674d22a + afd9e2e commit 399da41

39 files changed

Lines changed: 241 additions & 147 deletions

.github/workflows/assistant-ci.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ permissions:
1717
contents: read
1818

1919
jobs:
20-
podcast-assistant:
21-
name: Podcast Assistant tests
20+
dataops-podcast-module:
21+
name: DataOps podcast assistant tests
2222
runs-on: ubuntu-latest
2323

2424
steps:
@@ -31,7 +31,7 @@ jobs:
3131
- name: Install Python
3232
run: uv python install 3.13
3333

34-
- name: Run Podcast Assistant unit tests
34+
- name: Run DataOps podcast assistant unit tests
3535
run: uv run --project assistants/podcast pytest
3636

3737
- name: Verify real-engine tests are opt-in

README.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,19 @@ Version 1 focuses on operations docs and tasks:
88
- task workflows, bundles, recurring work, required links, and execution state
99
- AWS Lambda deployment with GitHub Actions OIDC
1010

11-
The first deployed app uses the DTC Operations docs portal as the base Lambda
12-
application. DataTasks is imported under `work-engine/` for the task execution
13-
engine, and the podcast assistant is imported under `assistants/podcast/` for
14-
the podcast operations workflow.
11+
The deployed V1 app is the DataTalks.Club operations portal for
12+
`ops.dtcdev.click`, served from the `DataTalksClub/dataops` repository and the
13+
`dataops-v1` stack. The work engine lives under `work-engine/` as an internal
14+
DataOps task/workflow module, and the podcast assistant lives under
15+
`assistants/podcast/` as a DataOps assistant module for the podcast operations
16+
workflow.
1517

1618
## Layout
1719

1820
- `content/` — operational documentation (SOPs, templates, references,
1921
playbooks, prompts) and its image assets.
20-
- `work-engine/`imported DataTasks task execution system.
21-
- `assistants/podcast/`imported podcast workflow assistant, process docs,
22+
- `work-engine/`DataOps task/workflow execution module.
23+
- `assistants/podcast/`DataOps podcast workflow assistant module, process docs,
2224
guest-intake template, knowledge-base builder, and tests.
2325
- `docs/` — repo-meta docs (this README, `STRUCTURE.md`, `sop-format*.md`,
2426
archived materials).

assistants/podcast/README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1-
# Podcast Assistant
1+
# DataOps Podcast Assistant Module
22

3-
Telegram assistant for collecting podcast prep material and generating podcast guest documents.
3+
DataOps assistant module for collecting podcast prep material and generating
4+
podcast guest documents.
45

5-
This directory is the canonical in-repo Podcast Assistant location for DataOps:
6-
`assistants/podcast/`. The old root-level `podcast-assistant/` import has been
7-
folded into this module.
6+
This directory is the canonical in-repo podcast assistant location for DataOps:
7+
`assistants/podcast/`. The old root-level `podcast-assistant/` import name is
8+
retained here only as migration history; active development uses this module
9+
path.
810

911
This is copied from the Telegram Writing Assistant shape, but the agent execution boundary uses
1012
Heru instead of calling Claude directly. Set `HERU_ENGINE=codex` or `HERU_ENGINE=claude` to choose

assistants/podcast/dry_run.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
"""Deterministic Podcast Assistant dry-run boundary for DataOps job payloads."""
1+
"""Deterministic DataOps podcast assistant dry-run boundary for job payloads."""
22

33
from __future__ import annotations
44

assistants/podcast/pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[project]
2-
name = "podcast-assistant"
2+
name = "dataops-podcast-module"
33
version = "0.1.0"
4-
description = "Telegram assistant for collecting podcast prep notes and generating guest question documents."
4+
description = "DataOps podcast assistant module for collecting prep notes and generating guest question documents."
55
readme = "README.md"
66
requires-python = ">=3.13"
77
dependencies = [

assistants/podcast/uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/STRUCTURE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ Use one of these `doc_type` values in frontmatter:
5353
- `sop` - step-by-step instructions for doing operational work.
5454
- `checklist` - ordered checklist that links to SOPs or summarizes a multi-step workflow.
5555
- `template` - reusable text, email, contract, announcement, or prompt template.
56-
- `task-template` - Git-backed DataTasks workflow template.
56+
- `task-template` - Git-backed DataOps workflow template.
5757
- `reference` - overview, index, FAQ, guide, spreadsheet export, or troubleshooting reference.
5858
- `playbook` - campaign or strategy plan, usually with multiple activities and references.
5959
- `prompt` - maintained AI prompt.

docs/architecture.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -152,19 +152,19 @@ flowchart LR
152152

153153
Current workflows:
154154

155-
- `.github/workflows/validate-docs-content.yml`
155+
- `.github/workflows/validate-dataops-content.yml`
156156
- Runs for `content/**` changes.
157157
- Builds the search index from `content/`.
158158
- Smoke-tests search against the generated index.
159159
- On pushes with changed content files, assumes the AWS OIDC deploy role and
160160
directly invokes the deployed Lambda refresh endpoint.
161161
- Does not deploy Lambda code.
162-
- `.github/workflows/deploy-full-docs-lambda.yml`
162+
- `.github/workflows/deploy-dataops-v1.yml`
163163
- Runs for frontend, Lambda, infra, package, deploy script, and docs-app test
164164
changes.
165165
- Runs tests and deploys the full app Lambda stack if checks pass.
166-
- `.github/workflows/deploy-api-lambda.yml`
167-
- Legacy or separate API Lambda deploy path.
166+
- `lambda-functions/template.api.yaml`
167+
- Legacy or separate API Lambda deploy path retained for compatibility.
168168

169169
## Credentials and CloudFormation
170170

@@ -173,8 +173,8 @@ long-lived AWS keys in GitHub.
173173

174174
```mermaid
175175
flowchart TB
176-
CFN[template.github-actions.yaml] --> OIDCProvider[GitHub OIDC provider]
177-
CFN --> Role[dtc-operations-github-actions-deploy role]
176+
CFN[template.github-actions-dataops.yaml] --> OIDCProvider[GitHub OIDC provider]
177+
CFN --> Role[dataops-v1 GitHub Actions deploy role]
178178
GitHubActions[GitHub Actions] -->|OIDC token| Role
179179
Role -->|limited deploy permissions| SAM[SAM deploy]
180180
```
@@ -190,8 +190,8 @@ Runtime secrets are also managed through CloudFormation:
190190

191191
The main runtime secrets are:
192192

193-
- `dtc-operations/full-app/github-token`
194-
- `dtc-operations/full-app/basic-auth-password`
193+
- `dataops-v1/full-app/github-token`
194+
- `dataops-v1/full-app/basic-auth-password`
195195

196196
## Why Not EFS Right Now
197197

docs/decisions/dataops-knowledge-repository.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ Current state:
3636
`ops.dtcdev.click`.
3737
- `content/` is the transitional Git home for imported SOPs, references,
3838
images, prompts, indexes, and task templates.
39-
- `content/tasks/templates/` contains DataTasks workflow templates that encode
39+
- `content/tasks/templates/` contains DataOps workflow templates that encode
4040
repeatable operational process.
41-
- `assistants/podcast/` is the canonical in-repo Podcast Assistant module.
41+
- `assistants/podcast/` is the canonical in-repo DataOps podcast assistant
42+
module.
4243
- Runtime workflow state is stored in DynamoDB execution tables managed by the
4344
deployed stack.
4445
- Private or bulky files must remain outside public process documentation.
@@ -162,9 +163,9 @@ Rules:
162163
- Curated examples may move only after data review confirms they are safe,
163164
useful, and intentionally public.
164165

165-
## DataTasks Template Decision
166+
## DataOps Workflow Template Decision
166167

167-
DataTasks templates are canonical process knowledge, not runtime state.
168+
DataOps workflow templates are canonical process knowledge, not runtime state.
168169

169170
Canonical Git location after migration:
170171

@@ -209,7 +210,7 @@ Runtime behavior:
209210
## Assistant Boundary
210211

211212
`assistants/podcast/` remains the canonical product-code location for the
212-
Podcast Assistant in `dataops`.
213+
DataOps podcast assistant module in `dataops`.
213214

214215
Keep in `dataops`:
215216

@@ -417,9 +418,9 @@ Create these after ADR acceptance:
417418
validation, authoring, and revert behavior.
418419
9. Wire knowledge-repo CI to refresh the deployed portal cache/search index
419420
without app redeploy.
420-
10. Classify and migrate reusable Podcast Assistant process knowledge,
421+
10. Classify and migrate reusable DataOps podcast assistant process knowledge,
421422
templates, prompts, and safe knowledge-base summaries.
422-
11. Move Podcast Assistant generated/private outputs to private artifact
423+
11. Move DataOps podcast assistant generated/private outputs to private artifact
423424
storage and attach artifact metadata to workflow records.
424425
12. Add admin/status visibility for loaded knowledge repo branch, commit SHA,
425426
index build time, and template sync version.
@@ -430,7 +431,7 @@ Positive:
430431

431432
- App code, process knowledge, runtime state, and private artifacts have clear
432433
ownership.
433-
- DataTasks templates remain reviewable and recoverable in Git.
434+
- DataOps workflow templates remain reviewable and recoverable in Git.
434435
- Docs and template changes can eventually ship without app redeploys.
435436
- The portal can keep a unified operator experience while the internals stay
436437
separated.

docs/design-system.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ process docs in context without switching between disconnected tools.
3434
This is not a generic documentation site system and not a generic admin
3535
dashboard system. Docs remain important, but V1 is workflow-first: daily work,
3636
proof, reminders, follow-ups, workflow state, and assistant artifacts are the
37-
primary product surface. The calmer portal direction is the baseline. Legacy
38-
DataTasks work-engine patterns are migration targets.
37+
primary product surface. The calmer portal direction is the baseline. Imported
38+
work-engine UI patterns are migration targets.
3939

4040
Primary inputs:
4141

@@ -73,7 +73,7 @@ Follow-up implementation issue:
7373
Done states require acceptance criteria and proof when the task requires a
7474
link, file, artifact, or review record.
7575
6. Assistant output is operational output.
76-
Podcast Assistant and future assistant UI must reuse DataOps components for
76+
DataOps podcast assistant and future assistant UI must reuse DataOps components for
7777
jobs, artifacts, logs, approvals, retries, and review actions. They must not
7878
introduce a second assistant-specific visual language.
7979
7. Incremental implementation.
@@ -238,7 +238,7 @@ Layer rules:
238238
| Canonical token | Current portal source | Current work-engine source | Migration note |
239239
| --- | --- | --- | --- |
240240
| `--do-color-bg` | `--bg` | `--bg` in polish layer, `#f5f5f5` legacy body | Alias both to canonical. |
241-
| `--do-color-shell` | `--sidebar` | `nav` legacy `#2c3e50` and mobile nav surface | Replace DataTasks nav with DataOps shell later. |
241+
| `--do-color-shell` | `--sidebar` | `nav` legacy `#2c3e50` and mobile nav surface | Align the work-engine nav with the DataOps shell after token migration. |
242242
| `--do-color-surface` | `--surface` | `--surface`, many `#fff` rules | Alias and remove hard-coded white over time. |
243243
| `--do-color-border` | `--line` | `--border`, `#ddd`, `#e0e0e0`, `#eee` | Normalize borders before component migration. |
244244
| `--do-color-accent` | `--accent` | `--primary`, `#3498db` | Portal accent is canonical; work-engine blue becomes alias only. |
@@ -551,7 +551,7 @@ Canonical primitives: `do-assistant-job-row`, `do-assistant-output-panel`,
551551

552552
Usage rules:
553553

554-
- Podcast Assistant and future assistant UI must reuse DataOps shell, panels,
554+
- DataOps podcast assistant and future assistant UI must reuse DataOps shell, panels,
555555
cards, buttons, status badges, file rows, empty states, and proof/artifact
556556
controls.
557557
- Assistant jobs are workflow-linked operational items. They should show job
@@ -613,7 +613,7 @@ Portal drift to address:
613613

614614
Work-engine drift to address:
615615

616-
- Brand still says `DataTasks`; V1 shared shell should say `DataOps`.
616+
- Work-engine brand now says `DataOps`; V1 still needs shared shell and token convergence.
617617
- Sticky top nav is a legacy admin pattern beside the portal sidebar shell.
618618
- Blue primary buttons and blue hover borders conflict with DataOps teal.
619619
- Card-heavy dashboards, large mobile form cards, and empty states reduce
@@ -639,10 +639,10 @@ Work-engine drift to address:
639639
Align task rows, workflow cards, progress, required proof, and follow-up
640640
controls across Operations Home and work-engine.
641641
6. Work-engine shell cleanup.
642-
Replace DataTasks top nav and generated inline class fragments after tokens
643-
and core primitives are stable.
642+
Replace the imported work-engine top nav and generated inline class
643+
fragments after tokens and core primitives are stable.
644644
7. Assistant UI reuse.
645-
Build Podcast Assistant and future assistant surfaces only on shared panels,
645+
Build DataOps podcast assistant and future assistant surfaces only on shared panels,
646646
artifacts, status badges, buttons, and empty states.
647647

648648
## Responsive Rules
@@ -731,7 +731,7 @@ Work-engine drift to address:
731731

732732
- Work-engine generated inline styles in `app.js` for forms, task definitions,
733733
required links, and recurring controls.
734-
- Work-engine DataTasks top nav and route link structure.
734+
- Imported work-engine top nav and route link structure.
735735
- Clickable cards that need consistent role, tab index, and keyboard handling.
736736
- Mobile task route ordering so active tasks are not pushed below long filters
737737
and create forms.
@@ -791,7 +791,7 @@ Phase 4: Unified task and workflow execution.
791791

792792
Phase 5: Assistant surfaces.
793793

794-
- Build Podcast Assistant and future assistant UI with shared shell, panel,
794+
- Build DataOps podcast assistant and future assistant UI with shared shell, panel,
795795
artifact row, status badge, empty state, and review action primitives.
796796
- Link assistant artifacts to workflows and tasks using the same proof/evidence
797797
controls.

0 commit comments

Comments
 (0)