Repository navigation
README: platform feature and deployment map - #12
Merged
Merged
Conversation
…tory layout The README described only the public website. It now opens with the full platform map (four deployment modes over one shared backend), the capability areas, and the layout of the product backend, console, website, and infra, and keeps the website guide below.
Kohandezh
added a commit
that referenced
this pull request
Oct 18, 2026
… (HOM-113 review) Integrator review of PR #43, required items: D1 Bounded scrape: every scrape-time source runs on a worker pool with a deadline (SOURCE_TIMEOUT_SECONDS=3, two stages). A source that misses it is reported (dependency_up=0, homayar_metrics_collection_errors_total) and is not restarted while still running. The database source uses its own small pool with connect_timeout=2; the object-store probe uses a botocore client with 2 s connect/read timeouts and no retries. /metrics is async and renders through a CapacityLimiter(1), so scrapes never pile onto the API threadpool. Tests: a hung dependency and a down database and object store. D2 Multiprocess: with PROMETHEUS_MULTIPROC_DIR the counters and histogram write per-process files that MultiProcessCollector sums; process_* series are only exported in single-process mode. compose.cloud sets the directory for the api service. Test: several worker processes summed. D3 HTTP counter test compares deltas (previous commit). D4 Logs: SQLAlchemy errors are logged by class, SQLSTATE and constraint/table/ column names only (no bound parameters, no DETAIL). Every log message and exception text goes through diagnostic_text (bounded, credentials and text PII masked). UNHANDLED_ERROR logs the route template and runs inside the request's correlation scope. Tests use a registered user's real e-mail, a phone number and a share token in the path. D5 METRICS_ALLOW_UNAUTHENTICATED is refused with DEPLOYMENT_MODE=cloud in staging/production and logged by name (never value) at startup on-prem. D6 /metrics alone bypasses TrustedHostMiddleware (the internal scrape host); every other path keeps the host check (tested). METRICS_ENABLED, METRICS_BEARER_TOKEN and METRICS_CACHE_SECONDS are wired into the compose.cloud.yaml anchor; compose.onprem waits for PR #42. D7 homayar_auth_failures_total and homayar_audit_write_failures_total are removed from this PR and its docs; HOM-114 adds them with their emitters. Should-fix: scrub covers dict reprs, every SecretSetting name in any spelling and URL passwords containing '/' or '@' (#10, #16); scrub input is bounded to 2000 characters and the patterns are bounded (#17); correlation id on the 500 path (#19); job correlation ids are per attempt (job:<id>:<delivery>) and the docs say so (#20); the configured token is stripped too (#22); the PII test uses e-mails that exist in the database (#24); runbook for jobs the sweepers dead-letter (#25); build_info stays 'unknown' until HOM-28 lands (#12). Known gap, documented: uvicorn and nginx access logs still print raw paths.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the platform feature and deployment map image (docs/assets/homayar-platform-map.webp) to the README, with the four deployment modes, capability areas, and repository layout. The public website guide stays below. Docs only. CI jobs could not start because of GitHub billing.
🤖 Generated with Claude Code