Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
84c3344
feat(hub): URL-keyed knowledge surface across the 4 data planes
caviri May 18, 2026
edc01a1
feat(chaoss): per-repo CHAOSS Level-0 metrics dashboard
caviri May 18, 2026
09d1e74
feat(chaoss): add 5 Phase-2 metrics (popularity, languages, activity,…
caviri May 18, 2026
6e4c74e
feat(chaoss): try-one above the catalogue + hovering activity sparkline
caviri May 18, 2026
2686b1e
feat(chaoss): Phase 3 metrics — responsiveness + burstiness
caviri May 18, 2026
17dd36c
feat(chaoss): Phase 4 metrics — bus factor, demographics, bot activity
caviri May 18, 2026
3ea45d9
feat(chaoss): Phase 5 metrics + group by topic with filter chips
caviri May 18, 2026
138cee3
refactor(chaoss): organize metrics by the official CHAOSS topic taxonomy
caviri May 18, 2026
1c22222
refactor(chaoss): drop Qdrant from academic_impact — SPARQL chain only
caviri May 18, 2026
87e8550
feat(chaoss): card visuals (donut/stacked/rank bars + topic icons) an…
caviri May 18, 2026
ffe6166
feat(chaoss): sparklines on more cards — contributors, issues, code, …
caviri May 18, 2026
179a09d
fix(chaoss): topic-icon SVGs sized 18 px (was filling the viewport)
caviri May 18, 2026
12e385b
feat(chaoss): audit pass — author_bot signal, gauge, pill cloud, stat…
caviri May 18, 2026
fdd5816
fix(chaoss): filter pills actually toggle — escape inner quotes
caviri May 18, 2026
60333e0
feat(chaoss): query traces — syntax-coloured Cypher/SPARQL, line numb…
caviri May 18, 2026
9e285db
chore(chaoss): rename "Open in /databases" → "Run query"
caviri May 18, 2026
5ef9194
feat(chaoss): expander chrome, unification footer, /databases auto-run
caviri May 18, 2026
5388454
fix(chaoss): all filter pills get a coloured chip + metric count
caviri May 18, 2026
c23ac04
feat(chaoss): reproducibility recipes (python/bash/js) per metric
caviri May 18, 2026
7cace89
feat(chaoss): "How we compute this" → modal overlay (was inline expan…
caviri May 18, 2026
375a0fc
feat(chaoss): reproducibility recipes for the remaining 19 metrics
caviri May 18, 2026
0b1ea10
feat(chaoss): modal redesign — expanders, explanations, richer codeblock
caviri May 18, 2026
9ece8a5
fix(hub): sidebar Dashboards + ontology link appear on /chaoss and /hub
caviri May 18, 2026
696dad9
fix(overview): chart 'fullSize' error on range switch + custom date r…
caviri May 18, 2026
ec3cd34
chore(hub): brand reads "OpenPulse", clicks the brand to /overview
caviri May 18, 2026
11018f0
fix(overview): discipline facet populated + drop 'values' label suffix
caviri May 18, 2026
11177e9
fix(overview): Organization facet drops people; add Owner (personal)
caviri May 18, 2026
5f8b394
feat(overview): resolve Wikidata IRIs to human labels on Discipline f…
caviri May 18, 2026
36bc071
fix(overview): Wikidata 403 → compliant User-Agent for label lookup
caviri May 18, 2026
9ea6ffd
feat(overview): Repository type facet uses pulse:repositoryType
caviri May 18, 2026
28cfd29
fix(overview): drop empty Keyword facet, add pulse:OrganizationType
caviri May 18, 2026
dcef755
fix(chaoss): syntax colours + line numbers paint when each expander o…
caviri May 18, 2026
616c6f1
feat(chaoss/databases): theme-aware codeblock palette (light + dark)
caviri May 18, 2026
dfbf7e3
fix(chaoss): recipe codeblock shares chrome + margins with the traces
caviri May 18, 2026
7e2b051
feat(marquee): inline sparklines for the five numeric metrics
caviri May 18, 2026
6384f37
refactor(chaoss): org_diversity now uses Path-1 ownership (no affilia…
caviri May 18, 2026
5b7e6f5
feat(api): CHAOSS metrics JSON API under /api/chaoss/v1
caviri May 18, 2026
1127cd5
feat(chaoss): Phase 6 — 6 more Level-0 metrics (contributor cadence +…
caviri May 18, 2026
6b5e78f
Merge branch 'develop' into feat/hub-knowledge
caviri May 18, 2026
d8ab9c2
style: ruff autofix + format pass
caviri May 18, 2026
69b164d
fix(ci): markdownlint bare URLs + empty __init__.py
caviri May 18, 2026
ddd20a6
Merge remote-tracking branch 'origin/develop' into feat/hub-knowledge
caviri May 18, 2026
a3b7b7e
fix(tests): enable frontier_extend in test_build_tasks_all_enabled
caviri May 18, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs-site/docs/community/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,6 @@ the browser-only node-builder form. The first listed node is

## Contact

- carlos.vivarrios@epfl.ch (SDSC)
- aruni.senaratne@epfl.ch (EPFL Open Science)
- <carlos.vivarrios@epfl.ch> (SDSC)
- <aruni.senaratne@epfl.ch> (EPFL Open Science)
- GitHub: [sdsc-ordes/open-pulse](https://github.com/sdsc-ordes/open-pulse)
17 changes: 17 additions & 0 deletions src/open_pulse/gui/hub/auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,20 @@ def require_auth(
detail="Authentication required",
headers={"WWW-Authenticate": 'Basic realm="open-pulse-hub"'},
)


def maybe_require_auth(
request: Request,
response: Response,
creds: Annotated[HTTPBasicCredentials | None, Depends(_basic)] = None,
op_hub_session: Annotated[str | None, Cookie()] = None,
) -> None:
"""Auth bypass for /hub/** when HUB_PUBLIC_KNOWLEDGE=true.

Same accept-rules as :func:`require_auth`, but a flip of the env flag
turns the knowledge surface into a fully public catalog. Mounted on
the hub routes only; the rest of the dashboard stays gated.
"""
if _SETTINGS.public_knowledge:
return
require_auth(request, response, creds, op_hub_session)
Empty file.
Loading
Loading