Repository navigation
🎨 Review cleanup - #65
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The address validation still accepts invalid ports, defeating the intended fail-fast behavior.
Review effort: Balanced
Findings: 1
Open (1)
What changed in this PR
Hardens Unicode handling, WebDAV validation/observability, metrics labels, and configuration display.
Changes:
- Preserves selected safe Unicode format characters.
- Validates WebDAV addresses and instruments authentication failures.
- Rejects reserved Prometheus labels and displays YAML lists correctly.
| File | Description |
|---|---|
internal/ui/escape.go |
Refines safe Unicode handling. |
internal/ui/escape_test.go |
Tests permitted format characters. |
internal/auth/oidc_test.go |
Removes trailing whitespace. |
doc/webdav.md |
Documents reserved metric labels. |
cmd/webdav.go |
Adds address validation and adjusts instrumentation order. |
cmd/webdav_metrics.go |
Rejects reserved label names. |
cmd/webdav_metrics_test.go |
Tests labels and address validation. |
cmd/config.go |
Supports YAML lists in effective values. |
cmd/config_test.go |
Tests YAML-list display. |
CLAUDE.md |
Corrects offline-command documentation. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
unicode.IsGraphic refuses every format character (Cf), including some that real names contain: the zero width non-joiner (Persian, Urdu, Indic scripts), the zero width joiner (Indic scripts, composed emoji such as 👨💻), the soft hyphen and the tag characters of subdivision flag emoji. ui.FileName turned them into "_" on disk, irreversibly, in transfer download, dataroom cp, admin dataroom download and admin export-all-data, and ui.Escape quoted those names in listings. Both now accept these runes. Bidi marks (U+200E, U+200F, U+061C), overrides, isolates and the zero width space stay refused: they reorder or hide what surrounds them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- --metrics-label refuses the reserved names le, quantile and __*: the registry accepted them, then Prometheus rejected every scrape. - webdav serve validates --addr (host:port, port required) before anything else: "--addr 0.0.0.0" used to fail only after the token, the API and the key passphrase had been checked. - instrumentWebdav now wraps basic auth, so rejected credentials (401) are counted in retyc_cli_webdav_requests_total and traced. - config show joins list keys read from a YAML list ([]any), not only from the environment ([]string): webdav.metrics.labels showed empty. - gofmt internal/auth/oidc_test.go; CLAUDE.md lists config path / show among the annotationOffline commands. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.

No description provided.