Skip to content

Commit 23d22b5

Browse files
committed
Add CI and update hosted project docs
1 parent 40f94c3 commit 23d22b5

4 files changed

Lines changed: 47 additions & 6 deletions

File tree

.github/workflows/ci.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
jobs:
10+
test:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- name: Check out repository
15+
uses: actions/checkout@v4
16+
17+
- name: Set up Python
18+
uses: actions/setup-python@v5
19+
with:
20+
python-version: "3.11"
21+
22+
- name: Install dependencies
23+
run: |
24+
python -m pip install --upgrade pip
25+
pip install -r requirements.txt
26+
27+
- name: Run unit tests
28+
run: |
29+
python -m unittest tests.test_analysis_store tests.test_report_builder tests.test_exporters tests.test_repo_checks tests.test_github_auth tests.test_github_client tests.test_openai_service

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,3 +225,4 @@ playwright-smoke.pdf
225225
docs/recordings/full_app_workflow.mp4
226226
.tmp.drivedownload/
227227
.tmp.driveupload/
228+
tmp_frames/

DEVLOG.md

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -198,13 +198,21 @@ Hardened the hosted Streamlit experience around GitHub sign-in and report export
198198
- kept repository-audit expander headers visually stable after interaction in the multi-repo report view
199199
- changed PDF export so the expensive PDF generation starts only when the user clicks the download button instead of when they merely switch the format selector
200200

201+
## March 11, 2026 - Hosted Deployment and Baseline CI
202+
203+
Closed the first public deployment loop and added the initial repository-quality automation:
204+
205+
- documented and configured the Streamlit Community Cloud deployment path with a tracked secrets template
206+
- deployed the live app to `portfolio-reviewer-agent.streamlit.app`
207+
- updated hosted OAuth/runtime behavior to work with Streamlit Cloud's external navigation model
208+
- added a GitHub Actions workflow that installs dependencies and runs the current unit-test suite on pushes and pull requests
209+
- refreshed README status/roadmap wording so it reflects the hosted app and the shift toward GitHub-side polish
210+
201211
---
202212

203213
## Next Steps
204214

205-
- deployment setup for public usage
206-
- final deployment-oriented configuration and secrets hardening
207-
- update the GitHub OAuth callback URL and verify browser sign-in on the deployed app
208-
- validate end-to-end hosted flows for single-repo, multi-repo, cache hit, force refresh, and export behavior
215+
- finish GitHub-side polish: topics, homepage/demo link, and optional badges
216+
- continue deployment hardening for hosted runtime edge cases such as Playwright availability and SQLite persistence constraints
209217
- decide whether SQLite remains sufficient for hosted single-instance use or needs to be replaced later
210218
- future product upgrade path: optional repository RAG / Q&A mode for deeper codebase exploration

README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
GitHub Portfolio Reviewer Agent is a Streamlit app that audits a GitHub profile or a selected set of repositories and turns the result into a recruiter-facing report.
44

5+
Live app: [portfolio-reviewer-agent.streamlit.app](https://portfolio-reviewer-agent.streamlit.app)
6+
57
The app combines:
68

79
- GitHub API metadata and repository content checks
@@ -108,6 +110,7 @@ For portfolio-level analysis, the app also:
108110
- HTML/CSS PDF rendering via Playwright with a ReportLab fallback path
109111
- Graceful fallback and warning handling for GitHub, OAuth, OpenAI, and export failures
110112
- Parallelized GitHub repo-detail fetching with retry handling for transient API failures
113+
- GitHub Actions CI for automated unit-test validation on pushes and pull requests
111114

112115
## Scoring Model
113116

@@ -341,8 +344,8 @@ venv\Scripts\python.exe -m unittest tests.test_analysis_store tests.test_report_
341344

342345
## Roadmap
343346

344-
- deployment setup for public usage
345347
- hosted persistence/secrets strategy for multi-instance deployment
348+
- GitHub-side polish such as repo topics, homepage/demo link, and optional status badges
346349
- optional repository Q&A / RAG mode for deeper codebase exploration
347350
- deeper export branding and report theming
348351

@@ -354,4 +357,4 @@ venv\Scripts\python.exe -m unittest tests.test_analysis_store tests.test_report_
354357

355358
## Status
356359

357-
This repository is now beyond the initial MVP stage. The core audit pipeline, scoped analysis flow, persistent analysis caching, deterministic report generation, export flow, polished Streamlit interface, public-only GitHub OAuth sign-in, cache-aware UX, retry-aware GitHub fetching, and broader failure-path coverage are implemented. The next major product milestone is deployment hardening.
360+
This repository is now beyond the initial MVP stage. The core audit pipeline, scoped analysis flow, persistent analysis caching, deterministic report generation, export flow, polished Streamlit interface, public-only GitHub OAuth sign-in, cache-aware UX, retry-aware GitHub fetching, broader failure-path coverage, hosted Streamlit deployment, and baseline GitHub Actions CI are implemented. The next major product milestone is GitHub-side polish and longer-term hosting hardening.

0 commit comments

Comments
 (0)