From 59c2d92b7af2bb7f3e833df6e855113951600c3b Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 15:19:10 +0900 Subject: [PATCH 01/12] feat(docs): add series catalog validation Implement Task 1 of the connected-document navigation plan. Add the shared series model and repository-level series validation used by later navigation work while keeping scope limited to content metadata and tests. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- scripts/docs/content.py | 156 ++++++++++++++++++++++++++++++ scripts/docs/validate_metadata.py | 7 ++ tests/docs/test_content.py | 112 ++++++++++++++++++++- tests/docs/test_validators.py | 63 ++++++++++++ 4 files changed, 337 insertions(+), 1 deletion(-) diff --git a/scripts/docs/content.py b/scripts/docs/content.py index fb31644..9f2d6fb 100644 --- a/scripts/docs/content.py +++ b/scripts/docs/content.py @@ -48,6 +48,25 @@ def with_metadata(self, metadata: Mapping[str, Any]) -> "Document": return replace(self, metadata=dict(metadata)) +SERIES_ROLES = frozenset(("overview", "chapter")) + + +@dataclass(frozen=True) +class DocumentSeries: + slug: str + title: str + description: str + overview: Document + members: tuple[Document, ...] + + +@dataclass(frozen=True) +class SeriesCatalog: + by_slug: dict[str, DocumentSeries] + by_document: dict[PurePosixPath, DocumentSeries] + positions: dict[PurePosixPath, int] + + def load_taxonomy(path: Path | str) -> dict[str, Any]: """Load the declarative documentation taxonomy.""" source = Path(path) @@ -180,6 +199,97 @@ def _append_source_errors( errors.append(f"at least one official source must use {required_host}") +def _series_metadata_errors( + metadata: Mapping[str, Any], taxonomy: Mapping[str, Any] +) -> list[str]: + errors: list[str] = [] + slug = metadata.get("series") + has_order = "series_order" in metadata + has_role = "series_role" in metadata + if slug is None: + if has_order: + errors.append("series_order requires series") + if has_role: + errors.append("series_role requires series") + return errors + if not isinstance(slug, str) or not KEBAB_CASE.fullmatch(slug): + errors.append("series must be a kebab-case string") + elif slug not in taxonomy.get("series", {}): + errors.append(f"unknown series: {slug}") + order = metadata.get("series_order") + if isinstance(order, bool) or not isinstance(order, int) or order < 0: + errors.append("series_order must be a non-negative integer") + role = metadata.get("series_role") + if role not in SERIES_ROLES: + errors.append("series_role must be overview or chapter") + return errors + + +def series_validation_errors( + documents: Iterable[Document], taxonomy: Mapping[str, Any] +) -> list[str]: + definitions = taxonomy.get("series", {}) + grouped: dict[str, list[Document]] = {} + for document in documents: + if _series_metadata_errors(document.metadata, taxonomy): + continue + slug = document.metadata.get("series") + if isinstance(slug, str): + grouped.setdefault(slug, []).append(document) + + errors: list[str] = [] + for slug, members in grouped.items(): + ordered = tuple(sorted(members, key=lambda item: item.metadata["series_order"])) + anchor = ordered[0].relative_path.as_posix() + definition = definitions.get(slug) + if not isinstance(definition, Mapping): + errors.append(f"{anchor}: series definition {slug} must be a mapping") + else: + for field in ("title", "description"): + value = definition.get(field) + if not isinstance(value, str) or not value.strip(): + errors.append( + f"{anchor}: series definition {slug}.{field} must be a non-empty string" + ) + + orders: dict[int, list[Document]] = {} + for member in members: + orders.setdefault(member.metadata["series_order"], []).append(member) + for order, duplicates in sorted(orders.items()): + if len(duplicates) > 1: + paths = sorted( + item.relative_path.as_posix() + for item in duplicates + ) + errors.append( + f"{paths[0]}: duplicate series_order {order} for series {slug}: {', '.join(paths)}" + ) + + actual_orders = [member.metadata["series_order"] for member in ordered] + expected_orders = list(range(len(ordered))) + if actual_orders != expected_orders: + errors.append( + f"{anchor}: series {slug} orders must be contiguous from 0: {actual_orders}" + ) + + overviews = [ + member + for member in ordered + if member.metadata.get("series_role") == "overview" + ] + if len(overviews) != 1: + errors.append(f"{anchor}: series {slug} must contain exactly one overview") + if ordered and ordered[0].metadata.get("series_role") != "overview": + errors.append(f"{anchor}: series {slug} overview must use series_order 0") + for member in ordered[1:]: + if member.metadata.get("series_role") != "chapter": + errors.append( + f"{member.relative_path.as_posix()}: series {slug} members after order 0 must use chapter role" + ) + + return errors + + def validate_source_metadata( metadata: Mapping[str, Any], taxonomy: Mapping[str, Any], @@ -319,4 +429,50 @@ def validate_document( if "featured" in metadata and not isinstance(metadata["featured"], bool): errors.append("featured must be a boolean") + errors.extend(_series_metadata_errors(metadata, taxonomy)) + return errors + + +def build_series_catalog( + documents: Iterable[Document], taxonomy: Mapping[str, Any] +) -> SeriesCatalog: + docs = tuple(documents) + errors = [ + f"{document.relative_path}: {message}" + for document in docs + for message in _series_metadata_errors(document.metadata, taxonomy) + ] + errors.extend(series_validation_errors(docs, taxonomy)) + if errors: + raise DocumentFormatError( + "invalid series metadata:\n" + "\n".join(errors) + ) + + grouped: dict[str, list[Document]] = {} + for document in docs: + slug = document.metadata.get("series") + if isinstance(slug, str): + grouped.setdefault(slug, []).append(document) + + by_slug: dict[str, DocumentSeries] = {} + by_document: dict[PurePosixPath, DocumentSeries] = {} + positions: dict[PurePosixPath, int] = {} + definitions = taxonomy.get("series", {}) + for slug, members in grouped.items(): + ordered = tuple( + sorted(members, key=lambda item: item.metadata["series_order"]) + ) + definition = definitions[slug] + series = DocumentSeries( + slug=slug, + title=definition["title"], + description=definition["description"], + overview=ordered[0], + members=ordered, + ) + by_slug[slug] = series + for position, member in enumerate(ordered): + by_document[member.relative_path] = series + positions[member.relative_path] = position + return SeriesCatalog(by_slug, by_document, positions) diff --git a/scripts/docs/validate_metadata.py b/scripts/docs/validate_metadata.py index a8fea7e..48cad60 100644 --- a/scripts/docs/validate_metadata.py +++ b/scripts/docs/validate_metadata.py @@ -17,6 +17,7 @@ ValidationResult, load_document, load_taxonomy, + series_validation_errors, validate_document, ) @@ -38,6 +39,7 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val docs_dir = root / "docs" taxonomy = load_taxonomy(root / "docs-taxonomy.yml") errors: list[str] = [] + documents = [] count = 0 for path in _candidate_paths(docs_dir, taxonomy): relative = path.relative_to(root).as_posix() @@ -47,10 +49,15 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val except DocumentFormatError as error: errors.append(str(error)) continue + documents.append(document) errors.extend( f"{relative}: {message}" for message in validate_document(document, taxonomy, today=today) ) + errors.extend( + f"docs/{message}" + for message in series_validation_errors(documents, taxonomy) + ) return ValidationResult(count, errors) diff --git a/tests/docs/test_content.py b/tests/docs/test_content.py index f18280c..53d42c5 100644 --- a/tests/docs/test_content.py +++ b/tests/docs/test_content.py @@ -1,15 +1,18 @@ from __future__ import annotations from datetime import date -from pathlib import Path +from pathlib import Path, PurePosixPath import pytest from scripts.docs.content import ( + Document, DocumentFormatError, + build_series_catalog, iter_public_documents, load_document, load_taxonomy, + series_validation_errors, validate_document, ) @@ -51,6 +54,21 @@ def copy_fixture(tmp_path: Path, name: str, relative: str) -> Path: return target +def series_document(path: str, order: int, role: str) -> Document: + return Document( + path=Path(path), + relative_path=PurePosixPath(path), + metadata={ + "title": path, + "description": f"{path} description", + "series": "agent-memory", + "series_order": order, + "series_role": role, + }, + body="", + ) + + def test_valid_page_bundle_satisfies_the_content_contract( tmp_path: Path, taxonomy: dict ) -> None: @@ -153,6 +171,10 @@ def test_unverified_guide_can_leave_last_verified_empty( ("applies_to", []), ("featured", "true"), ("featured", 1), + ("series", ["agent-memory"]), + ("series_order", True), + ("series_order", -1), + ("series_role", "appendix"), ], ) def test_invalid_metadata_values_return_validation_errors( @@ -172,6 +194,94 @@ def test_invalid_metadata_values_return_validation_errors( assert any(field in error for error in errors), errors +@pytest.mark.parametrize( + ("metadata", "message"), + [ + ({"series": "unknown-series", "series_order": 0, "series_role": "overview"}, "unknown series: unknown-series"), + ({"series_order": 0}, "series_order requires series"), + ({"series_role": "overview"}, "series_role requires series"), + ], +) +def test_series_metadata_requires_known_series_context( + tmp_path: Path, taxonomy: dict, metadata: dict[str, object], message: str +) -> None: + path = copy_fixture( + tmp_path, "valid-guide.md", "guides/aks/network-diagnosis/index.md" + ) + loaded = load_document(path, docs_dir=tmp_path / "docs") + + errors = validate_document( + loaded.with_metadata({**loaded.metadata, **metadata}), + taxonomy, + today=date(2026, 9, 12), + ) + + assert any(message in error for error in errors), errors + + +def test_build_series_catalog_orders_members_and_indexes_paths( + taxonomy: dict, +) -> None: + taxonomy["series"] = { + "agent-memory": { + "title": "Agent Memory", + "description": "Ordered memory research", + } + } + chapter = series_document( + "research/microsoft-foundry/chapter/index.md", 1, "chapter" + ) + overview = series_document( + "research/microsoft-foundry/overview/index.md", 0, "overview" + ) + + catalog = build_series_catalog([chapter, overview], taxonomy) + + series = catalog.by_slug["agent-memory"] + assert [member.relative_path for member in series.members] == [ + overview.relative_path, + chapter.relative_path, + ] + assert series.overview == overview + assert catalog.by_document[chapter.relative_path] == series + assert catalog.positions[chapter.relative_path] == 1 + + +@pytest.mark.parametrize( + ("documents", "message"), + [ + ( + [series_document("research/x/overview/index.md", 0, "chapter")], + "exactly one overview", + ), + ( + [ + series_document("research/x/overview/index.md", 0, "overview"), + series_document("research/x/chapter/index.md", 0, "chapter"), + ], + "duplicate series_order 0", + ), + ( + [ + series_document("research/x/overview/index.md", 0, "overview"), + series_document("research/x/chapter/index.md", 2, "chapter"), + ], + "contiguous from 0", + ), + ], +) +def test_series_validation_rejects_invalid_groups( + taxonomy: dict, documents: list[Document], message: str +) -> None: + taxonomy["series"] = { + "agent-memory": {"title": "Agent Memory", "description": "Description"} + } + errors = series_validation_errors(documents, taxonomy) + assert any(message in error for error in errors), errors + with pytest.raises(DocumentFormatError, match=message): + build_series_catalog(documents, taxonomy) + + @pytest.mark.parametrize("featured", [True, False]) def test_featured_is_optional_boolean( tmp_path: Path, taxonomy: dict, featured: bool diff --git a/tests/docs/test_validators.py b/tests/docs/test_validators.py index 2d8f59b..1941579 100644 --- a/tests/docs/test_validators.py +++ b/tests/docs/test_validators.py @@ -34,6 +34,33 @@ """ +def series_guide(title: str, order: int, role: str) -> str: + return f"""\ +--- +title: {title} +description: {title} 설명 +document_type: guide +services: [aks] +technologies: [kubernetes] +tags: [networking] +status: current +verification_status: verified +sources_checked_at: 2026-09-12 +official_sources: + - title: Azure Kubernetes Service documentation + url: https://learn.microsoft.com/azure/aks/ +last_verified: 2026-09-12 +review_cycle_days: 180 +applies_to: [AKS 1.34+] +series: agent-memory +series_order: {order} +series_role: {role} +--- + +# {title} +""" + + def make_repository(tmp_path: Path) -> Path: taxonomy = { "collections": { @@ -207,3 +234,39 @@ def test_link_gate_reports_invalid_front_matter(tmp_path: Path) -> None: assert result.document_count == 1 assert any("YAML front matter" in error for error in result.errors) + + +def test_metadata_gate_reports_cross_document_series_errors(tmp_path: Path) -> None: + root = make_repository(tmp_path) + taxonomy_path = root / "docs-taxonomy.yml" + taxonomy = yaml.safe_load(taxonomy_path.read_text(encoding="utf-8")) + taxonomy["series"] = { + "agent-memory": { + "title": "Agent Memory", + "description": "Ordered memory research", + } + } + taxonomy_path.write_text( + yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + + overview = root / "docs" / "guides" / "aks" / "overview" + overview.mkdir(parents=True) + (overview / "index.md").write_text( + series_guide("Overview", 0, "overview"), + encoding="utf-8", + ) + + chapter = root / "docs" / "guides" / "aks" / "chapter" + chapter.mkdir(parents=True) + (chapter / "index.md").write_text( + series_guide("Chapter", 0, "chapter"), + encoding="utf-8", + ) + + result = validate_metadata.validate_repository(root, today=date(2026, 9, 12)) + + assert any("duplicate series_order 0" in error for error in result.errors) + assert any("overview/index.md" in error for error in result.errors) + assert any("chapter/index.md" in error for error in result.errors) From fbdc7fd6fb300134260bf9b8b13013ba9192f149 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 15:28:12 +0900 Subject: [PATCH 02/12] refactor(docs): derive navigation from topic packages Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- scripts/docs/content.py | 234 +++++------------- scripts/docs/topics.py | 398 ++++++++++++++++++++++++++++++ scripts/docs/validate_metadata.py | 26 +- tests/docs/test_content.py | 110 +-------- tests/docs/test_topics.py | 318 ++++++++++++++++++++++++ tests/docs/test_validators.py | 49 ++-- 6 files changed, 823 insertions(+), 312 deletions(-) create mode 100644 scripts/docs/topics.py create mode 100644 tests/docs/test_topics.py diff --git a/scripts/docs/content.py b/scripts/docs/content.py index 9f2d6fb..805f7d1 100644 --- a/scripts/docs/content.py +++ b/scripts/docs/content.py @@ -48,25 +48,6 @@ def with_metadata(self, metadata: Mapping[str, Any]) -> "Document": return replace(self, metadata=dict(metadata)) -SERIES_ROLES = frozenset(("overview", "chapter")) - - -@dataclass(frozen=True) -class DocumentSeries: - slug: str - title: str - description: str - overview: Document - members: tuple[Document, ...] - - -@dataclass(frozen=True) -class SeriesCatalog: - by_slug: dict[str, DocumentSeries] - by_document: dict[PurePosixPath, DocumentSeries] - positions: dict[PurePosixPath, int] - - def load_taxonomy(path: Path | str) -> dict[str, Any]: """Load the declarative documentation taxonomy.""" source = Path(path) @@ -114,26 +95,65 @@ def load_document(path: Path | str, docs_dir: Path | str | None = None) -> Docum return Document(source, PurePosixPath(relative.as_posix()), metadata, body) +def _collection_paths(taxonomy: Mapping[str, Any]) -> set[str]: + return { + config["path"] + for config in taxonomy.get("collections", {}).values() + if isinstance(config, Mapping) and isinstance(config.get("path"), str) + } + + +def _is_legacy_document_path( + relative_path: PurePosixPath, taxonomy: Mapping[str, Any] +) -> bool: + parts = relative_path.parts + return ( + len(parts) == 4 + and parts[-1] == "index.md" + and parts[0] in _collection_paths(taxonomy) + and KEBAB_CASE.fullmatch(parts[2]) is not None + ) + + +def _is_canonical_document_path(relative_path: PurePosixPath) -> bool: + parts = relative_path.parts + if ( + len(parts) not in {4, 5} + or parts[0] != "services" + or parts[-1] != "index.md" + or "samples" in parts + ): + return False + slugs = parts[1:-1] + return all(KEBAB_CASE.fullmatch(slug) for slug in slugs) + + def iter_public_documents( - docs_dir: Path | str, taxonomy: Mapping[str, Any] + docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True ) -> Iterable[Document]: """Yield page-bundle documents from configured public collections.""" root = Path(docs_dir) - collection_paths = sorted( - { - config["path"] - for config in taxonomy.get("collections", {}).values() - if isinstance(config, Mapping) and isinstance(config.get("path"), str) - } - ) - for collection_path in collection_paths: - collection_root = root / collection_path - if not collection_root.is_dir(): - continue - for path in sorted(collection_root.rglob("index.md")): - relative = path.relative_to(root) - if len(relative.parts) == 4: - yield load_document(path, docs_dir=root) + candidate_paths: list[Path] = [] + + services_root = root / "services" + if services_root.is_dir(): + for path in services_root.rglob("index.md"): + if _is_canonical_document_path(PurePosixPath(path.relative_to(root).as_posix())): + candidate_paths.append(path) + + if include_legacy: + for collection_path in sorted(_collection_paths(taxonomy)): + collection_root = root / collection_path + if not collection_root.is_dir(): + continue + for path in collection_root.rglob("index.md"): + if _is_legacy_document_path( + PurePosixPath(path.relative_to(root).as_posix()), taxonomy + ): + candidate_paths.append(path) + + for path in sorted(candidate_paths, key=lambda item: item.relative_to(root).as_posix()): + yield load_document(path, docs_dir=root) def _is_date(value: Any) -> bool: @@ -199,97 +219,6 @@ def _append_source_errors( errors.append(f"at least one official source must use {required_host}") -def _series_metadata_errors( - metadata: Mapping[str, Any], taxonomy: Mapping[str, Any] -) -> list[str]: - errors: list[str] = [] - slug = metadata.get("series") - has_order = "series_order" in metadata - has_role = "series_role" in metadata - if slug is None: - if has_order: - errors.append("series_order requires series") - if has_role: - errors.append("series_role requires series") - return errors - if not isinstance(slug, str) or not KEBAB_CASE.fullmatch(slug): - errors.append("series must be a kebab-case string") - elif slug not in taxonomy.get("series", {}): - errors.append(f"unknown series: {slug}") - order = metadata.get("series_order") - if isinstance(order, bool) or not isinstance(order, int) or order < 0: - errors.append("series_order must be a non-negative integer") - role = metadata.get("series_role") - if role not in SERIES_ROLES: - errors.append("series_role must be overview or chapter") - return errors - - -def series_validation_errors( - documents: Iterable[Document], taxonomy: Mapping[str, Any] -) -> list[str]: - definitions = taxonomy.get("series", {}) - grouped: dict[str, list[Document]] = {} - for document in documents: - if _series_metadata_errors(document.metadata, taxonomy): - continue - slug = document.metadata.get("series") - if isinstance(slug, str): - grouped.setdefault(slug, []).append(document) - - errors: list[str] = [] - for slug, members in grouped.items(): - ordered = tuple(sorted(members, key=lambda item: item.metadata["series_order"])) - anchor = ordered[0].relative_path.as_posix() - definition = definitions.get(slug) - if not isinstance(definition, Mapping): - errors.append(f"{anchor}: series definition {slug} must be a mapping") - else: - for field in ("title", "description"): - value = definition.get(field) - if not isinstance(value, str) or not value.strip(): - errors.append( - f"{anchor}: series definition {slug}.{field} must be a non-empty string" - ) - - orders: dict[int, list[Document]] = {} - for member in members: - orders.setdefault(member.metadata["series_order"], []).append(member) - for order, duplicates in sorted(orders.items()): - if len(duplicates) > 1: - paths = sorted( - item.relative_path.as_posix() - for item in duplicates - ) - errors.append( - f"{paths[0]}: duplicate series_order {order} for series {slug}: {', '.join(paths)}" - ) - - actual_orders = [member.metadata["series_order"] for member in ordered] - expected_orders = list(range(len(ordered))) - if actual_orders != expected_orders: - errors.append( - f"{anchor}: series {slug} orders must be contiguous from 0: {actual_orders}" - ) - - overviews = [ - member - for member in ordered - if member.metadata.get("series_role") == "overview" - ] - if len(overviews) != 1: - errors.append(f"{anchor}: series {slug} must contain exactly one overview") - if ordered and ordered[0].metadata.get("series_role") != "overview": - errors.append(f"{anchor}: series {slug} overview must use series_order 0") - for member in ordered[1:]: - if member.metadata.get("series_role") != "chapter": - errors.append( - f"{member.relative_path.as_posix()}: series {slug} members after order 0 must use chapter role" - ) - - return errors - - def validate_source_metadata( metadata: Mapping[str, Any], taxonomy: Mapping[str, Any], @@ -318,6 +247,7 @@ def validate_document( document: Document, taxonomy: Mapping[str, Any], today: date | None = None, + include_legacy: bool = True, ) -> list[str]: """Return every content-contract violation for one public document.""" current_date = today or date.today() @@ -342,7 +272,9 @@ def validate_document( else None ) parts = document.relative_path.parts - if len(parts) != 4 or parts[-1] != "index.md" or not KEBAB_CASE.fullmatch(parts[2]): + is_legacy_path = _is_legacy_document_path(document.relative_path, taxonomy) + is_canonical_path = _is_canonical_document_path(document.relative_path) + if not is_canonical_path and not (include_legacy and is_legacy_path): errors.append("public documents must use ///index.md") if not isinstance(collection, Mapping): @@ -350,7 +282,7 @@ def validate_document( errors.append(f"unknown document_type: {document_type}") else: expected_folder = collection.get("path") - if parts and parts[0] != expected_folder: + if is_legacy_path and parts and parts[0] != expected_folder: errors.append( f"folder '{parts[0]}' does not match {document_type} collection '{expected_folder}'" ) @@ -429,50 +361,4 @@ def validate_document( if "featured" in metadata and not isinstance(metadata["featured"], bool): errors.append("featured must be a boolean") - errors.extend(_series_metadata_errors(metadata, taxonomy)) - return errors - - -def build_series_catalog( - documents: Iterable[Document], taxonomy: Mapping[str, Any] -) -> SeriesCatalog: - docs = tuple(documents) - errors = [ - f"{document.relative_path}: {message}" - for document in docs - for message in _series_metadata_errors(document.metadata, taxonomy) - ] - errors.extend(series_validation_errors(docs, taxonomy)) - if errors: - raise DocumentFormatError( - "invalid series metadata:\n" + "\n".join(errors) - ) - - grouped: dict[str, list[Document]] = {} - for document in docs: - slug = document.metadata.get("series") - if isinstance(slug, str): - grouped.setdefault(slug, []).append(document) - - by_slug: dict[str, DocumentSeries] = {} - by_document: dict[PurePosixPath, DocumentSeries] = {} - positions: dict[PurePosixPath, int] = {} - definitions = taxonomy.get("series", {}) - for slug, members in grouped.items(): - ordered = tuple( - sorted(members, key=lambda item: item.metadata["series_order"]) - ) - definition = definitions[slug] - series = DocumentSeries( - slug=slug, - title=definition["title"], - description=definition["description"], - overview=ordered[0], - members=ordered, - ) - by_slug[slug] = series - for position, member in enumerate(ordered): - by_document[member.relative_path] = series - positions[member.relative_path] = position - return SeriesCatalog(by_slug, by_document, positions) diff --git a/scripts/docs/topics.py b/scripts/docs/topics.py new file mode 100644 index 0000000..7d737e4 --- /dev/null +++ b/scripts/docs/topics.py @@ -0,0 +1,398 @@ +"""Topic-package catalog for transitional and canonical documentation layouts.""" + +from __future__ import annotations + +from dataclasses import dataclass +from pathlib import Path, PurePosixPath +from typing import Any, Iterable, Mapping + +import yaml + +from scripts.docs.content import Document, DocumentFormatError, load_document + + +LEGACY_COLLECTIONS = frozenset(("cases", "guides", "labs", "research")) + + +@dataclass(frozen=True) +class SampleAsset: + slug: str + title: str + description: str + kind: str + relative_path: PurePosixPath + used_by: tuple[PurePosixPath, ...] + + +@dataclass(frozen=True) +class Topic: + primary_service: str + slug: str + entry: Document + members: tuple[Document, ...] + samples: tuple[SampleAsset, ...] + + +@dataclass(frozen=True) +class TopicCatalog: + documents: tuple[Document, ...] + topics: dict[tuple[str, str], Topic] + by_document: dict[PurePosixPath, Topic] + position_by_document: dict[PurePosixPath, int] + samples_by_document: dict[PurePosixPath, tuple[SampleAsset, ...]] + redirects: dict[PurePosixPath, PurePosixPath] + + +def _legacy_collection_paths(taxonomy: Mapping[str, Any]) -> tuple[str, ...]: + paths = { + config["path"] + for config in taxonomy.get("collections", {}).values() + if isinstance(config, Mapping) and isinstance(config.get("path"), str) + } + return tuple(sorted(paths)) + + +def _is_canonical_document_path(relative_path: PurePosixPath) -> bool: + parts = relative_path.parts + return ( + len(parts) in {4, 5} + and parts[0] == "services" + and parts[-1] == "index.md" + and "samples" not in parts + ) + + +def _is_legacy_document_path( + relative_path: PurePosixPath, collection_paths: Iterable[str] +) -> bool: + parts = relative_path.parts + return ( + len(parts) == 4 + and parts[-1] == "index.md" + and parts[0] in set(collection_paths) + ) + + +def iter_topic_documents( + docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True +) -> Iterable[Document]: + root = Path(docs_dir) + collection_paths = _legacy_collection_paths(taxonomy) + candidates: list[Path] = [] + + services_root = root / "services" + if services_root.is_dir(): + for path in services_root.rglob("index.md"): + relative = PurePosixPath(path.relative_to(root).as_posix()) + if _is_canonical_document_path(relative): + candidates.append(path) + + if include_legacy: + for collection_path in collection_paths: + collection_root = root / collection_path + if not collection_root.is_dir(): + continue + for path in collection_root.rglob("index.md"): + relative = PurePosixPath(path.relative_to(root).as_posix()) + if _is_legacy_document_path(relative, collection_paths): + candidates.append(path) + + for path in sorted(candidates, key=lambda item: item.relative_to(root).as_posix()): + yield load_document(path, docs_dir=root) + + +def _topic_key(relative_path: PurePosixPath) -> tuple[str, str]: + return (relative_path.parts[1], relative_path.parts[2]) + + +def _sample_directory_errors(topic_root: Path, docs_root: Path) -> list[str]: + samples_root = topic_root / "samples" + if not samples_root.is_dir(): + return [] + + errors: list[str] = [] + for sample_dir in sorted(path for path in samples_root.iterdir() if path.is_dir()): + relative = PurePosixPath(sample_dir.relative_to(docs_root).as_posix()) + if not (sample_dir / "sample.yml").is_file(): + errors.append(f"{relative.as_posix()}: sample.yml is required") + if not (sample_dir / "README.md").is_file(): + errors.append(f"{relative.as_posix()}: README.md is required") + return errors + + +def _normalize_redirects(document: Document) -> tuple[list[PurePosixPath], list[str]]: + value = document.metadata.get("redirect_from") + if value is None: + return [], [] + + errors: list[str] = [] + if not isinstance(value, list) or not value: + return [], [f"{document.relative_path.as_posix()}: redirect_from must be a non-empty list"] + + paths: list[PurePosixPath] = [] + for raw in value: + if not isinstance(raw, str) or not raw.strip(): + errors.append( + f"{document.relative_path.as_posix()}: redirect_from entries must be non-empty strings" + ) + continue + path = PurePosixPath(raw.strip()) + if ( + path.is_absolute() + or ".." in path.parts + or len(path.parts) != 4 + or path.parts[-1] != "index.md" + or path.parts[0] not in LEGACY_COLLECTIONS + ): + errors.append( + f"{document.relative_path.as_posix()}: redirect_from must use ///index.md" + ) + continue + paths.append(path) + return paths, errors + + +def _build_sample_asset( + sample_dir: Path, + docs_root: Path, + slug_to_document: Mapping[str, PurePosixPath], +) -> tuple[SampleAsset | None, list[str]]: + relative = PurePosixPath(sample_dir.relative_to(docs_root).as_posix()) + manifest_path = sample_dir / "sample.yml" + if not manifest_path.is_file() or not (sample_dir / "README.md").is_file(): + return None, [] + + try: + manifest = yaml.safe_load(manifest_path.read_text(encoding="utf-8")) + except yaml.YAMLError as error: + return None, [f"{relative.as_posix()}: invalid sample.yml: {error}"] + if not isinstance(manifest, Mapping): + return None, [f"{relative.as_posix()}: sample.yml must be a mapping"] + + errors: list[str] = [] + values: dict[str, str] = {} + for field in ("title", "description", "kind"): + value = manifest.get(field) + if not isinstance(value, str) or not value.strip(): + errors.append(f"{relative.as_posix()}: {field} must be a non-empty string") + else: + values[field] = value.strip() + + kind = values.get("kind") + if kind is not None and kind not in {"runnable", "artifact"}: + errors.append(f"{relative.as_posix()}: kind must be runnable or artifact") + + used_by = manifest.get("used_by") + if ( + not isinstance(used_by, list) + or not used_by + or not all(isinstance(item, str) and item.strip() for item in used_by) + ): + errors.append(f"{relative.as_posix()}: used_by must be a non-empty list") + return None, errors + + if len({item.strip() for item in used_by}) != len(used_by): + errors.append(f"{relative.as_posix()}: used_by values must be unique") + + linked_documents: list[PurePosixPath] = [] + for item in used_by: + document_path = slug_to_document.get(item.strip()) + if document_path is None: + errors.append(f"{relative.as_posix()}: unknown document slug: {item}") + else: + linked_documents.append(document_path) + + if errors: + return None, errors + + return ( + SampleAsset( + slug=sample_dir.name, + title=values["title"], + description=values["description"], + kind=values["kind"], + relative_path=relative, + used_by=tuple(linked_documents), + ), + [], + ) + + +def build_topic_catalog( + docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True +) -> TopicCatalog: + root = Path(docs_dir) + documents = tuple(iter_topic_documents(root, taxonomy, include_legacy=include_legacy)) + ordered_documents = tuple( + sorted(documents, key=lambda document: document.relative_path.as_posix()) + ) + collection_paths = _legacy_collection_paths(taxonomy) + errors: list[str] = [] + + services_root = root / "services" + if services_root.is_dir(): + for path in sorted(services_root.rglob("index.md")): + relative = PurePosixPath(path.relative_to(root).as_posix()) + if "samples" in relative.parts: + continue + if len(relative.parts) > 5: + errors.append( + f"{relative.as_posix()}: child documents must be directly below the topic" + ) + + canonical_documents = [ + document for document in ordered_documents if document.relative_path.parts[0] == "services" + ] + legacy_documents = [ + document + for document in ordered_documents + if document.relative_path.parts[0] in set(collection_paths) + ] + grouped: dict[tuple[str, str], list[Document]] = {} + for document in canonical_documents: + grouped.setdefault(_topic_key(document.relative_path), []).append(document) + + topics: dict[tuple[str, str], Topic] = {} + by_document: dict[PurePosixPath, Topic] = {} + position_by_document: dict[PurePosixPath, int] = {} + samples_by_document: dict[PurePosixPath, tuple[SampleAsset, ...]] = {} + + legacy_by_key = { + (document.relative_path.parts[1], document.relative_path.parts[2]): document + for document in legacy_documents + if _is_legacy_document_path(document.relative_path, collection_paths) + } + + for key in sorted(grouped): + service, slug = key + members = grouped[key] + member_by_path = {member.relative_path: member for member in members} + entry_path = PurePosixPath("services", service, slug, "index.md") + entry = member_by_path.get(entry_path) + if entry is None: + errors.append(f"{entry_path.as_posix()}: topic entry document is missing") + continue + + children: list[tuple[int, Document]] = [] + orders: dict[int, list[Document]] = {} + for member in members: + if member.relative_path == entry_path: + continue + order = member.metadata.get("topic_order") + if isinstance(order, bool) or not isinstance(order, int) or order <= 0: + errors.append( + f"{member.relative_path.as_posix()}: topic_order must be a positive integer" + ) + continue + orders.setdefault(order, []).append(member) + children.append((order, member)) + + for order, duplicates in sorted(orders.items()): + if len(duplicates) > 1: + joined = ", ".join( + item.relative_path.as_posix() + for item in sorted(duplicates, key=lambda document: document.relative_path.as_posix()) + ) + errors.append( + f"{duplicates[0].relative_path.as_posix()}: duplicate topic_order {order}: {joined}" + ) + + ordered_children = [member for _, member in sorted(children, key=lambda item: item[0])] + actual_orders = [order for order, _ in sorted(children, key=lambda item: item[0])] + if actual_orders != list(range(1, len(ordered_children) + 1)): + errors.append( + f"{entry.relative_path.as_posix()}: topic_order values must be contiguous from 1" + ) + + topic_root = root / "services" / service / slug + errors.extend(_sample_directory_errors(topic_root, root)) + + member_paths = [entry.relative_path, *[child.relative_path for child in ordered_children]] + slug_to_document = { + "index": entry.relative_path, + **{ + child.relative_path.parts[3]: child.relative_path + for child in ordered_children + }, + } + samples: list[SampleAsset] = [] + samples_root = topic_root / "samples" + if samples_root.is_dir(): + for sample_dir in sorted(path for path in samples_root.iterdir() if path.is_dir()): + sample, sample_errors = _build_sample_asset(sample_dir, root, slug_to_document) + errors.extend(sample_errors) + if sample is not None: + samples.append(sample) + + if errors: + continue + + ordered_samples = tuple(sorted(samples, key=lambda item: item.title.casefold())) + members_tuple = (entry, *ordered_children) + topic = Topic( + primary_service=service, + slug=slug, + entry=entry, + members=members_tuple, + samples=ordered_samples, + ) + topics[key] = topic + for position, member in enumerate(members_tuple): + by_document[member.relative_path] = topic + position_by_document[member.relative_path] = position + samples_by_document[member.relative_path] = tuple( + sample for sample in ordered_samples if member.relative_path in sample.used_by + ) + + canonical_paths = {document.relative_path for document in ordered_documents} + redirects: dict[PurePosixPath, PurePosixPath] = {} + for document in ordered_documents: + redirect_paths, redirect_errors = _normalize_redirects(document) + errors.extend(redirect_errors) + for redirect_path in redirect_paths: + if redirect_path in canonical_paths: + errors.append( + f"{document.relative_path.as_posix()}: redirect_from collides with a canonical document" + ) + continue + if redirect_path in redirects: + errors.append( + f"{document.relative_path.as_posix()}: redirect_from path is already used" + ) + continue + redirects[redirect_path] = document.relative_path + + if errors: + raise DocumentFormatError("invalid topic catalog:\n" + "\n".join(errors)) + + for key in sorted(legacy_by_key): + if key in topics: + legacy_document = legacy_by_key[key] + by_document[legacy_document.relative_path] = topics[key] + continue + legacy_document = legacy_by_key[key] + topic = Topic( + primary_service=key[0], + slug=key[1], + entry=legacy_document, + members=(legacy_document,), + samples=(), + ) + topics[key] = topic + by_document[legacy_document.relative_path] = topic + position_by_document[legacy_document.relative_path] = 0 + samples_by_document[legacy_document.relative_path] = () + + for redirect_path, canonical_path in redirects.items(): + topic = by_document.get(canonical_path) + if topic is not None: + by_document[redirect_path] = topic + + return TopicCatalog( + documents=ordered_documents, + topics=topics, + by_document=by_document, + position_by_document=position_by_document, + samples_by_document=samples_by_document, + redirects=redirects, + ) diff --git a/scripts/docs/validate_metadata.py b/scripts/docs/validate_metadata.py index 48cad60..3d7f5c8 100644 --- a/scripts/docs/validate_metadata.py +++ b/scripts/docs/validate_metadata.py @@ -17,9 +17,9 @@ ValidationResult, load_document, load_taxonomy, - series_validation_errors, validate_document, ) +from scripts.docs.topics import build_topic_catalog def _candidate_paths(docs_dir: Path, taxonomy: Mapping[str, Any]) -> Iterable[Path]: @@ -32,6 +32,19 @@ def _candidate_paths(docs_dir: Path, taxonomy: Mapping[str, Any]) -> Iterable[Pa root = docs_dir / collection if root.is_dir(): yield from sorted(root.rglob("*.md")) + services_root = docs_dir / "services" + if services_root.is_dir(): + for path in sorted(services_root.rglob("index.md")): + relative = path.relative_to(docs_dir).parts + if "samples" not in relative: + yield path + + +def _topic_catalog_errors(error: DocumentFormatError) -> list[str]: + lines = [line for line in str(error).splitlines() if line.strip()] + if lines and lines[0] == "invalid topic catalog:": + lines = lines[1:] + return [f"docs/{line}" for line in lines] def validate_repository(repo_root: Path | str, today: date | None = None) -> ValidationResult: @@ -41,6 +54,7 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val errors: list[str] = [] documents = [] count = 0 + parse_failed = False for path in _candidate_paths(docs_dir, taxonomy): relative = path.relative_to(root).as_posix() count += 1 @@ -48,16 +62,18 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val document = load_document(path, docs_dir=docs_dir) except DocumentFormatError as error: errors.append(str(error)) + parse_failed = True continue documents.append(document) errors.extend( f"{relative}: {message}" for message in validate_document(document, taxonomy, today=today) ) - errors.extend( - f"docs/{message}" - for message in series_validation_errors(documents, taxonomy) - ) + if not parse_failed: + try: + build_topic_catalog(docs_dir, taxonomy) + except DocumentFormatError as error: + errors.extend(_topic_catalog_errors(error)) return ValidationResult(count, errors) diff --git a/tests/docs/test_content.py b/tests/docs/test_content.py index 53d42c5..701e329 100644 --- a/tests/docs/test_content.py +++ b/tests/docs/test_content.py @@ -8,11 +8,9 @@ from scripts.docs.content import ( Document, DocumentFormatError, - build_series_catalog, iter_public_documents, load_document, load_taxonomy, - series_validation_errors, validate_document, ) @@ -54,21 +52,6 @@ def copy_fixture(tmp_path: Path, name: str, relative: str) -> Path: return target -def series_document(path: str, order: int, role: str) -> Document: - return Document( - path=Path(path), - relative_path=PurePosixPath(path), - metadata={ - "title": path, - "description": f"{path} description", - "series": "agent-memory", - "series_order": order, - "series_role": role, - }, - body="", - ) - - def test_valid_page_bundle_satisfies_the_content_contract( tmp_path: Path, taxonomy: dict ) -> None: @@ -171,10 +154,6 @@ def test_unverified_guide_can_leave_last_verified_empty( ("applies_to", []), ("featured", "true"), ("featured", 1), - ("series", ["agent-memory"]), - ("series_order", True), - ("series_order", -1), - ("series_role", "appendix"), ], ) def test_invalid_metadata_values_return_validation_errors( @@ -194,92 +173,19 @@ def test_invalid_metadata_values_return_validation_errors( assert any(field in error for error in errors), errors -@pytest.mark.parametrize( - ("metadata", "message"), - [ - ({"series": "unknown-series", "series_order": 0, "series_role": "overview"}, "unknown series: unknown-series"), - ({"series_order": 0}, "series_order requires series"), - ({"series_role": "overview"}, "series_role requires series"), - ], -) -def test_series_metadata_requires_known_series_context( - tmp_path: Path, taxonomy: dict, metadata: dict[str, object], message: str +def test_canonical_topic_paths_are_valid_during_transition( + tmp_path: Path, taxonomy: dict ) -> None: - path = copy_fixture( - tmp_path, "valid-guide.md", "guides/aks/network-diagnosis/index.md" - ) + path = tmp_path / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" + path.parent.mkdir(parents=True) + path.write_text((FIXTURES / "valid-guide.md").read_text(encoding="utf-8"), encoding="utf-8") loaded = load_document(path, docs_dir=tmp_path / "docs") - errors = validate_document( - loaded.with_metadata({**loaded.metadata, **metadata}), + assert validate_document( + loaded.with_metadata({**loaded.metadata, "services": ["aks"]}), taxonomy, today=date(2026, 9, 12), - ) - - assert any(message in error for error in errors), errors - - -def test_build_series_catalog_orders_members_and_indexes_paths( - taxonomy: dict, -) -> None: - taxonomy["series"] = { - "agent-memory": { - "title": "Agent Memory", - "description": "Ordered memory research", - } - } - chapter = series_document( - "research/microsoft-foundry/chapter/index.md", 1, "chapter" - ) - overview = series_document( - "research/microsoft-foundry/overview/index.md", 0, "overview" - ) - - catalog = build_series_catalog([chapter, overview], taxonomy) - - series = catalog.by_slug["agent-memory"] - assert [member.relative_path for member in series.members] == [ - overview.relative_path, - chapter.relative_path, - ] - assert series.overview == overview - assert catalog.by_document[chapter.relative_path] == series - assert catalog.positions[chapter.relative_path] == 1 - - -@pytest.mark.parametrize( - ("documents", "message"), - [ - ( - [series_document("research/x/overview/index.md", 0, "chapter")], - "exactly one overview", - ), - ( - [ - series_document("research/x/overview/index.md", 0, "overview"), - series_document("research/x/chapter/index.md", 0, "chapter"), - ], - "duplicate series_order 0", - ), - ( - [ - series_document("research/x/overview/index.md", 0, "overview"), - series_document("research/x/chapter/index.md", 2, "chapter"), - ], - "contiguous from 0", - ), - ], -) -def test_series_validation_rejects_invalid_groups( - taxonomy: dict, documents: list[Document], message: str -) -> None: - taxonomy["series"] = { - "agent-memory": {"title": "Agent Memory", "description": "Description"} - } - errors = series_validation_errors(documents, taxonomy) - assert any(message in error for error in errors), errors - with pytest.raises(DocumentFormatError, match=message): - build_series_catalog(documents, taxonomy) + ) == [] @pytest.mark.parametrize("featured", [True, False]) diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py new file mode 100644 index 0000000..8544df7 --- /dev/null +++ b/tests/docs/test_topics.py @@ -0,0 +1,318 @@ +from __future__ import annotations + +from pathlib import Path, PurePosixPath +import re + +import pytest +import yaml + +from scripts.docs.content import DocumentFormatError, validate_document +from scripts.docs.topics import build_topic_catalog + + +@pytest.fixture +def taxonomy() -> dict: + return { + "collections": { + "guide": { + "path": "guides", + "statuses": ["current", "needs-review", "deprecated"], + "required_fields": [ + "last_verified", + "review_cycle_days", + "applies_to", + ], + } + }, + "services": {"azure-monitor": "Azure Monitor"}, + "technologies": {"kubernetes": "Kubernetes"}, + "tags": {"networking": "Networking"}, + "verification_statuses": ["verified", "needs-review"], + "official_source_hosts": ["learn.microsoft.com"], + "required_source_host": "learn.microsoft.com", + } + + +def write_document( + root: Path, + relative: str, + title: str, + *, + topic_order: int | None = None, + redirect_from: list[str] | None = None, + services: list[str] | None = None, +) -> Path: + metadata: dict[str, object] = { + "title": title, + "description": f"{title} description", + "document_type": "guide", + "services": services or ["azure-monitor"], + "technologies": ["kubernetes"], + "tags": ["networking"], + "status": "current", + "verification_status": "verified", + "sources_checked_at": "2026-09-12", + "official_sources": [ + { + "title": "Azure Monitor documentation", + "url": "https://learn.microsoft.com/azure/azure-monitor/", + } + ], + "last_verified": "2026-09-12", + "review_cycle_days": 180, + "applies_to": ["Azure Monitor"], + } + if topic_order is not None: + metadata["topic_order"] = topic_order + if redirect_from is not None: + metadata["redirect_from"] = redirect_from + + path = root / relative + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text( + "---\n" + + yaml.safe_dump(metadata, allow_unicode=True, sort_keys=False).strip() + + "\n---\n\n" + + f"# {title}\n", + encoding="utf-8", + ) + return path + + +def write_sample( + root: Path, + relative: str, + manifest: dict[str, object] | None = None, + *, + readme: bool = True, +) -> Path: + sample_dir = root / relative + sample_dir.mkdir(parents=True, exist_ok=True) + if manifest is not None: + (sample_dir / "sample.yml").write_text( + yaml.safe_dump(manifest, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + if readme: + (sample_dir / "README.md").write_text( + "# Sample\n", + encoding="utf-8", + ) + return sample_dir + + +def test_build_topic_catalog_discovers_canonical_topic_documents_and_samples( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + write_document( + docs_dir, + "services/azure-monitor/agent-topic/index.md", + "Agent topic", + ) + write_document( + docs_dir, + "services/azure-monitor/agent-topic/setup/index.md", + "Setup", + topic_order=1, + ) + write_document( + docs_dir, + "services/azure-monitor/agent-topic/results/index.md", + "Results", + topic_order=2, + ) + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/event-lab", + { + "title": "Event lab", + "description": "Reproduces the monitored incident.", + "kind": "runnable", + "used_by": ["setup", "results"], + }, + ) + + catalog = build_topic_catalog(docs_dir, taxonomy) + topic = catalog.topics[("azure-monitor", "agent-topic")] + + assert topic.entry.relative_path == PurePosixPath( + "services/azure-monitor/agent-topic/index.md" + ) + assert [member.relative_path for member in topic.members] == [ + PurePosixPath("services/azure-monitor/agent-topic/index.md"), + PurePosixPath("services/azure-monitor/agent-topic/setup/index.md"), + PurePosixPath("services/azure-monitor/agent-topic/results/index.md"), + ] + assert catalog.position_by_document[topic.members[2].relative_path] == 2 + assert [ + sample.slug + for sample in catalog.samples_by_document[topic.members[1].relative_path] + ] == ["event-lab"] + + +@pytest.mark.parametrize( + ("case", "expected"), + [ + ("missing root index", "topic entry document is missing"), + ("child without topic_order", "topic_order must be a positive integer"), + ("duplicate child order", "duplicate topic_order 1"), + ("non-contiguous order", "topic_order values must be contiguous from 1"), + ("nested grandchild", "child documents must be directly below the topic"), + ("sample missing manifest", "sample.yml is required"), + ("sample missing readme", "README.md is required"), + ("invalid sample kind", "kind must be runnable or artifact"), + ("empty used_by", "used_by must be a non-empty list"), + ("unknown used_by", "unknown document slug"), + ("duplicate redirect", "redirect_from path is already used"), + ( + "canonical redirect collision", + "redirect_from collides with a canonical document", + ), + ], +) +def test_build_topic_catalog_rejects_invalid_topic_and_sample_layouts( + tmp_path: Path, taxonomy: dict, case: str, expected: str +) -> None: + docs_dir = tmp_path / "docs" + write_document( + docs_dir, + "services/azure-monitor/agent-topic/index.md", + "Agent topic", + ) + write_document( + docs_dir, + "services/azure-monitor/agent-topic/setup/index.md", + "Setup", + topic_order=1, + ) + + if case == "missing root index": + (docs_dir / "services/azure-monitor/agent-topic/index.md").unlink() + elif case == "child without topic_order": + write_document( + docs_dir, + "services/azure-monitor/agent-topic/results/index.md", + "Results", + ) + elif case == "duplicate child order": + write_document( + docs_dir, + "services/azure-monitor/agent-topic/results/index.md", + "Results", + topic_order=1, + ) + elif case == "non-contiguous order": + write_document( + docs_dir, + "services/azure-monitor/agent-topic/results/index.md", + "Results", + topic_order=3, + ) + elif case == "nested grandchild": + write_document( + docs_dir, + "services/azure-monitor/agent-topic/setup/deeper/index.md", + "Deeper", + topic_order=2, + ) + elif case == "sample missing manifest": + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/event-lab", + None, + ) + elif case == "sample missing readme": + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/event-lab", + { + "title": "Event lab", + "description": "Reproduces the monitored incident.", + "kind": "runnable", + "used_by": ["setup"], + }, + readme=False, + ) + elif case == "invalid sample kind": + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/event-lab", + { + "title": "Event lab", + "description": "Reproduces the monitored incident.", + "kind": "broken", + "used_by": ["setup"], + }, + ) + elif case == "empty used_by": + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/event-lab", + { + "title": "Event lab", + "description": "Reproduces the monitored incident.", + "kind": "runnable", + "used_by": [], + }, + ) + elif case == "unknown used_by": + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/event-lab", + { + "title": "Event lab", + "description": "Reproduces the monitored incident.", + "kind": "runnable", + "used_by": ["unknown"], + }, + ) + elif case == "duplicate redirect": + write_document( + docs_dir, + "services/azure-monitor/agent-topic/results/index.md", + "Results", + topic_order=2, + redirect_from=["guides/azure-monitor/shared/index.md"], + ) + write_document( + docs_dir, + "services/azure-monitor/agent-topic/verify/index.md", + "Verify", + topic_order=3, + redirect_from=["guides/azure-monitor/shared/index.md"], + ) + elif case == "canonical redirect collision": + write_document( + docs_dir, + "guides/azure-monitor/shared/index.md", + "Shared", + ) + write_document( + docs_dir, + "services/azure-monitor/agent-topic/results/index.md", + "Results", + topic_order=2, + redirect_from=["guides/azure-monitor/shared/index.md"], + ) + + with pytest.raises(DocumentFormatError, match=re.escape(expected)): + build_topic_catalog(docs_dir, taxonomy) + + +def test_validate_document_rejects_canonical_service_paths_absent_from_taxonomy( + tmp_path: Path, taxonomy: dict +) -> None: + path = write_document( + tmp_path / "docs", + "services/unknown-service/agent-topic/index.md", + "Agent topic", + services=["unknown-service"], + ) + from scripts.docs.content import load_document + + document = load_document(path, docs_dir=tmp_path / "docs") + + errors = validate_document(document, taxonomy) + + assert "unknown service: unknown-service" in errors diff --git a/tests/docs/test_validators.py b/tests/docs/test_validators.py index 1941579..d726767 100644 --- a/tests/docs/test_validators.py +++ b/tests/docs/test_validators.py @@ -34,7 +34,8 @@ """ -def series_guide(title: str, order: int, role: str) -> str: +def canonical_guide(title: str, *, topic_order: int | None = None) -> str: + topic_order_line = f"topic_order: {topic_order}\n" if topic_order is not None else "" return f"""\ --- title: {title} @@ -52,10 +53,7 @@ def series_guide(title: str, order: int, role: str) -> str: last_verified: 2026-09-12 review_cycle_days: 180 applies_to: [AKS 1.34+] -series: agent-memory -series_order: {order} -series_role: {role} ---- +{topic_order_line}--- # {title} """ @@ -236,37 +234,26 @@ def test_link_gate_reports_invalid_front_matter(tmp_path: Path) -> None: assert any("YAML front matter" in error for error in result.errors) -def test_metadata_gate_reports_cross_document_series_errors(tmp_path: Path) -> None: +def test_metadata_gate_reports_topic_catalog_errors_once_per_path(tmp_path: Path) -> None: root = make_repository(tmp_path) - taxonomy_path = root / "docs-taxonomy.yml" - taxonomy = yaml.safe_load(taxonomy_path.read_text(encoding="utf-8")) - taxonomy["series"] = { - "agent-memory": { - "title": "Agent Memory", - "description": "Ordered memory research", - } - } - taxonomy_path.write_text( - yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), - encoding="utf-8", - ) - - overview = root / "docs" / "guides" / "aks" / "overview" - overview.mkdir(parents=True) - (overview / "index.md").write_text( - series_guide("Overview", 0, "overview"), + topic = root / "docs" / "services" / "aks" / "network-diagnosis" + (topic / "index.md").parent.mkdir(parents=True) + (topic / "index.md").write_text( + canonical_guide("Overview"), encoding="utf-8", ) - - chapter = root / "docs" / "guides" / "aks" / "chapter" - chapter.mkdir(parents=True) - (chapter / "index.md").write_text( - series_guide("Chapter", 0, "chapter"), + (topic / "setup" / "index.md").parent.mkdir(parents=True) + (topic / "setup" / "index.md").write_text( + canonical_guide("Setup"), encoding="utf-8", ) result = validate_metadata.validate_repository(root, today=date(2026, 9, 12)) - assert any("duplicate series_order 0" in error for error in result.errors) - assert any("overview/index.md" in error for error in result.errors) - assert any("chapter/index.md" in error for error in result.errors) + matching = [ + error + for error in result.errors + if "services/aks/network-diagnosis/setup/index.md" in error + ] + assert len(matching) == 1 + assert "topic_order must be a positive integer" in matching[0] From dc51ab0182b0064253508b1416be8a659a6a2127 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 15:34:36 +0900 Subject: [PATCH 03/12] fix(docs): preserve topic validation and legacy paths Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- scripts/docs/topics.py | 44 +++++++++++++++++++---------- scripts/docs/validate_metadata.py | 11 +++----- tests/docs/test_topics.py | 46 +++++++++++++++++++++++++++++++ tests/docs/test_validators.py | 37 +++++++++++++++++++++++++ 4 files changed, 116 insertions(+), 22 deletions(-) diff --git a/scripts/docs/topics.py b/scripts/docs/topics.py index 7d737e4..7e15ccf 100644 --- a/scripts/docs/topics.py +++ b/scripts/docs/topics.py @@ -219,10 +219,14 @@ def _build_sample_asset( def build_topic_catalog( - docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True + docs_dir: Path | str, + taxonomy: Mapping[str, Any], + include_legacy: bool = True, + documents: Iterable[Document] | None = None, ) -> TopicCatalog: root = Path(docs_dir) - documents = tuple(iter_topic_documents(root, taxonomy, include_legacy=include_legacy)) + if documents is None: + documents = iter_topic_documents(root, taxonomy, include_legacy=include_legacy) ordered_documents = tuple( sorted(documents, key=lambda document: document.relative_path.as_posix()) ) @@ -257,11 +261,13 @@ def build_topic_catalog( position_by_document: dict[PurePosixPath, int] = {} samples_by_document: dict[PurePosixPath, tuple[SampleAsset, ...]] = {} - legacy_by_key = { - (document.relative_path.parts[1], document.relative_path.parts[2]): document - for document in legacy_documents - if _is_legacy_document_path(document.relative_path, collection_paths) - } + legacy_by_key: dict[tuple[str, str], list[Document]] = {} + for document in legacy_documents: + if _is_legacy_document_path(document.relative_path, collection_paths): + legacy_by_key.setdefault( + (document.relative_path.parts[1], document.relative_path.parts[2]), + [], + ).append(document) for key in sorted(grouped): service, slug = key @@ -366,22 +372,30 @@ def build_topic_catalog( raise DocumentFormatError("invalid topic catalog:\n" + "\n".join(errors)) for key in sorted(legacy_by_key): + legacy_group = tuple( + sorted(legacy_by_key[key], key=lambda document: document.relative_path.as_posix()) + ) if key in topics: - legacy_document = legacy_by_key[key] - by_document[legacy_document.relative_path] = topics[key] + topic = topics[key] + for legacy_document in legacy_group: + by_document[legacy_document.relative_path] = topic + position_by_document[legacy_document.relative_path] = 0 + samples_by_document[legacy_document.relative_path] = samples_by_document.get( + topic.entry.relative_path, () + ) continue - legacy_document = legacy_by_key[key] topic = Topic( primary_service=key[0], slug=key[1], - entry=legacy_document, - members=(legacy_document,), + entry=legacy_group[0], + members=legacy_group, samples=(), ) topics[key] = topic - by_document[legacy_document.relative_path] = topic - position_by_document[legacy_document.relative_path] = 0 - samples_by_document[legacy_document.relative_path] = () + for position, legacy_document in enumerate(legacy_group): + by_document[legacy_document.relative_path] = topic + position_by_document[legacy_document.relative_path] = position + samples_by_document[legacy_document.relative_path] = () for redirect_path, canonical_path in redirects.items(): topic = by_document.get(canonical_path) diff --git a/scripts/docs/validate_metadata.py b/scripts/docs/validate_metadata.py index 3d7f5c8..b5432c0 100644 --- a/scripts/docs/validate_metadata.py +++ b/scripts/docs/validate_metadata.py @@ -54,7 +54,6 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val errors: list[str] = [] documents = [] count = 0 - parse_failed = False for path in _candidate_paths(docs_dir, taxonomy): relative = path.relative_to(root).as_posix() count += 1 @@ -62,18 +61,16 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val document = load_document(path, docs_dir=docs_dir) except DocumentFormatError as error: errors.append(str(error)) - parse_failed = True continue documents.append(document) errors.extend( f"{relative}: {message}" for message in validate_document(document, taxonomy, today=today) ) - if not parse_failed: - try: - build_topic_catalog(docs_dir, taxonomy) - except DocumentFormatError as error: - errors.extend(_topic_catalog_errors(error)) + try: + build_topic_catalog(docs_dir, taxonomy, documents=documents) + except DocumentFormatError as error: + errors.extend(_topic_catalog_errors(error)) return ValidationResult(count, errors) diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py index 8544df7..a1b2af0 100644 --- a/tests/docs/test_topics.py +++ b/tests/docs/test_topics.py @@ -316,3 +316,49 @@ def test_validate_document_rejects_canonical_service_paths_absent_from_taxonomy( errors = validate_document(document, taxonomy) assert "unknown service: unknown-service" in errors + + +def test_build_topic_catalog_preserves_all_legacy_paths_sharing_one_topic_key( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + taxonomy["collections"]["lab"] = { + "path": "labs", + "statuses": ["verified"], + "required_fields": [ + "last_verified", + "review_cycle_days", + "estimated_time", + "cost", + "cleanup_required", + ], + } + guide = write_document( + docs_dir, + "guides/azure-monitor/agent-topic/index.md", + "Guide legacy topic", + ) + lab = write_document( + docs_dir, + "labs/azure-monitor/agent-topic/index.md", + "Lab legacy topic", + ) + lab.write_text( + guide.read_text(encoding="utf-8").replace("document_type: guide", "document_type: lab"), + encoding="utf-8", + ) + + catalog = build_topic_catalog(docs_dir, taxonomy) + + guide_path = PurePosixPath("guides/azure-monitor/agent-topic/index.md") + lab_path = PurePosixPath("labs/azure-monitor/agent-topic/index.md") + topic = catalog.topics[("azure-monitor", "agent-topic")] + + assert guide.relative_to(docs_dir).as_posix() in { + document.relative_path.as_posix() for document in catalog.documents + } + assert lab.relative_to(docs_dir).as_posix() in { + document.relative_path.as_posix() for document in catalog.documents + } + assert catalog.by_document[guide_path] == topic + assert catalog.by_document[lab_path] == topic diff --git a/tests/docs/test_validators.py b/tests/docs/test_validators.py index d726767..1feea3f 100644 --- a/tests/docs/test_validators.py +++ b/tests/docs/test_validators.py @@ -257,3 +257,40 @@ def test_metadata_gate_reports_topic_catalog_errors_once_per_path(tmp_path: Path ] assert len(matching) == 1 assert "topic_order must be a positive integer" in matching[0] + + +def test_metadata_gate_keeps_topic_validation_when_another_document_has_invalid_yaml( + tmp_path: Path, +) -> None: + root = make_repository(tmp_path) + bad = root / "docs" / "guides" / "aks" / "broken" / "index.md" + bad.parent.mkdir(parents=True) + bad.write_text("---\ntitle: [broken\n---\n", encoding="utf-8") + + topic = root / "docs" / "services" / "aks" / "network-diagnosis" + topic.mkdir(parents=True) + (topic / "index.md").write_text(canonical_guide("Overview"), encoding="utf-8") + (topic / "setup").mkdir() + (topic / "setup" / "index.md").write_text( + canonical_guide("Setup"), + encoding="utf-8", + ) + (topic / "samples" / "broken-sample").mkdir(parents=True) + (topic / "samples" / "broken-sample" / "sample.yml").write_text( + "title: Broken sample\ndescription: Missing readme\nkind: runnable\nused_by: [setup]\n", + encoding="utf-8", + ) + + result = validate_metadata.validate_repository(root, today=date(2026, 9, 12)) + + assert any("broken/index.md: invalid YAML front matter" in error for error in result.errors) + assert any( + "services/aks/network-diagnosis/setup/index.md: topic_order must be a positive integer" + in error + for error in result.errors + ) + assert any( + "services/aks/network-diagnosis/samples/broken-sample: README.md is required" + in error + for error in result.errors + ) From cc4ca8d774fd4205262a2eec804a6197bba3d8c8 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 16:38:02 +0900 Subject: [PATCH 04/12] feat(docs): navigate connected topic packages Wire TopicCatalog into generated indexes and MkDocs hooks so canonical topic packages drive collapsed discovery cards, redirect pages, service-first sidebar hierarchy, bounded topic navigation, and related sample rendering while preserving legacy reader flows. Add targeted regressions for canonical topic collapse, redirect head rewriting, legacy compatibility, service fallback paths, topic-aware navigation, and sample/search handling. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- scripts/docs/generate_indexes.py | 285 ++++++++++++++++++--- scripts/docs/hooks.py | 323 ++++++++++++++++++++++-- tests/docs/test_indexes.py | 280 ++++++++++++++++++++- tests/docs/test_reader_navigation.py | 241 ++++++++++++++++++ tests/docs/test_site_pipeline.py | 355 ++++++++++++++++++++++++++- 5 files changed, 1432 insertions(+), 52 deletions(-) diff --git a/scripts/docs/generate_indexes.py b/scripts/docs/generate_indexes.py index 669a2e6..81cd520 100644 --- a/scripts/docs/generate_indexes.py +++ b/scripts/docs/generate_indexes.py @@ -3,6 +3,7 @@ from __future__ import annotations from collections import defaultdict +from dataclasses import dataclass import html from pathlib import Path, PurePosixPath import posixpath @@ -16,6 +17,7 @@ sys.path.insert(0, str(REPO_ROOT)) from scripts.docs.content import Document, iter_public_documents, load_taxonomy +from scripts.docs.topics import Topic, TopicCatalog, build_topic_catalog # Static English eyebrow labels for each document type / overview page, matching @@ -46,6 +48,12 @@ _HOME_SLOTS = ("", "", "") +@dataclass(frozen=True) +class TopicMatch: + topic: Topic + matching_count: int + + def _escape(value: Any) -> str: """Escape text for use inside raw (non-markdown) HTML.""" return html.escape(str(value), quote=True) @@ -211,6 +219,113 @@ def _doc_card( ) +def _topic_match_key(topic: Topic) -> tuple[str, str]: + return (topic.primary_service, topic.slug) + + +def _display_title(item: Document | TopicMatch) -> str: + if isinstance(item, TopicMatch): + return str(item.topic.entry.metadata.get("title", "")) + return str(item.metadata.get("title", "")) + + +def _topic_tags(topic: Topic) -> list[str]: + tags: list[str] = [] + for member in topic.members: + tags.extend(_metadata_values(member, "tags")) + return list(dict.fromkeys(tags)) + + +def _topic_card( + index_path: PurePosixPath, + match: TopicMatch, + taxonomy: Mapping[str, Any], + *, + extra_classes: str = "", +) -> str: + topic = match.topic + entry = topic.entry + metadata = entry.metadata + document_type = metadata.get("document_type", "") + link = _relative_link(index_path, entry) + title = metadata.get("title", "") + description = metadata.get("description", "") + services = taxonomy.get("services", {}) + if index_path.parts[:1] == ("services",) and len(index_path.parts) == 3: + service_label = _label_for(services, index_path.parts[1]) + else: + service_label = " · ".join( + _label_for(services, service) for service in _metadata_values(entry, "services") + ) + topic_count = len(topic.members) + if match.matching_count == topic_count: + count_label = f"{topic_count}개 문서" + else: + count_label = f"{match.matching_count} / {topic_count}개 문서 일치" + + meta_spans = "" + if service_label: + meta_spans += f"{_escape(service_label)}" + meta_spans += f"{_escape(count_label)}" + + classes = f"dg-doc-card dg-topic-card dg-doc-card--{document_type}" + if extra_classes: + classes = f"{classes} {extra_classes}" + + tag_html = build_tag_links(index_path, _topic_tags(topic)[:3], taxonomy) + return ( + f'
\n\n' + f'
\n{meta_spans}\n
\n\n' + f'### [{_md_label(title)}]({link})\n\n' + f'

{_escape(description)}

\n' + f"{tag_html}" + f"\n
\n" + ) + + +def _collapse_documents( + documents: Sequence[Document], catalog: TopicCatalog | None +) -> list[Document | TopicMatch]: + if catalog is None: + return sorted(documents, key=lambda document: str(document.metadata.get("title", "")).casefold()) + + matched_paths: dict[tuple[str, str], set[PurePosixPath]] = {} + standalone: dict[PurePosixPath, Document] = {} + for document in documents: + topic = catalog.by_document.get(document.relative_path) + if topic is None: + standalone.setdefault(document.relative_path, document) + continue + key = _topic_match_key(topic) + member_paths = {member.relative_path for member in topic.members} + if len(topic.members) <= 1: + standalone.setdefault( + document.relative_path if document.relative_path not in member_paths else topic.entry.relative_path, + document if document.relative_path not in member_paths else topic.entry, + ) + continue + if document.relative_path not in member_paths: + standalone.setdefault(document.relative_path, document) + continue + if topic.entry.relative_path.parts[0] != "services": + standalone.setdefault(document.relative_path, document) + continue + matched_paths.setdefault(key, set()).add(document.relative_path) + + topic_matches = [ + TopicMatch(topic=catalog.topics[key], matching_count=len(paths)) + for key, paths in matched_paths.items() + ] + collapsed: list[Document | TopicMatch] = [*standalone.values(), *topic_matches] + return sorted(collapsed, key=lambda item: _display_title(item).casefold()) + + +def _visible_documents( + documents: Sequence[Document], catalog: TopicCatalog | None +) -> list[Document]: + return list(documents) + + def _page_heading(eyebrow_prefix: str, count: int, title: str, description: str) -> str: eyebrow = f"{eyebrow_prefix} / {count} DOCUMENTS" return ( @@ -236,12 +351,32 @@ def _empty_state(message: str) -> str: return f'

{_escape(message)}

\n' +def _primary_service(document: Document, catalog: TopicCatalog | None) -> str | None: + if catalog is not None: + topic = catalog.by_document.get(document.relative_path) + if topic is not None: + return topic.primary_service + parts = document.relative_path.parts + return parts[1] if len(parts) >= 2 else None + + def _document_grid( - index_path: PurePosixPath, documents: list[Document], taxonomy: Mapping[str, Any] + index_path: PurePosixPath, + documents: list[Document], + taxonomy: Mapping[str, Any], + *, + catalog: TopicCatalog | None = None, ) -> str: if not documents: return _empty_state("아직 등록된 문서가 없습니다.") - cards = "\n".join(_doc_card(index_path, document, taxonomy) for document in documents) + cards = "\n".join( + ( + _topic_card(index_path, item, taxonomy) + if isinstance(item, TopicMatch) + else _doc_card(index_path, item, taxonomy) + ) + for item in _collapse_documents(documents, catalog) + ) return f'
\n\n{cards}\n
\n' @@ -250,6 +385,8 @@ def _build_collection_page( config: Mapping[str, Any], matching: list[Document], taxonomy: Mapping[str, Any], + *, + catalog: TopicCatalog | None = None, ) -> tuple[PurePosixPath, str]: index_path = PurePosixPath(config["path"]) / "index.md" title = config.get("title", document_type) @@ -259,9 +396,9 @@ def _build_collection_page( by_service: dict[str, list[Document]] = defaultdict(list) for document in matching: - parts = document.relative_path.parts - if len(parts) >= 2: - by_service[parts[1]].append(document) + service = _primary_service(document, catalog) + if service: + by_service[service].append(document) ordered_service_keys = _ordered_keys(by_service.keys(), services.keys()) @@ -282,8 +419,12 @@ def _build_collection_page( label = _label_for(services, slug) body += f"## {_md_label(label)} {{ #service-{slug} }}\n\n" body += '
\n\n' - for document in by_service[slug]: - body += _doc_card(index_path, document, taxonomy) + for item in _collapse_documents(by_service[slug], catalog): + body += ( + _topic_card(index_path, item, taxonomy) + if isinstance(item, TopicMatch) + else _doc_card(index_path, item, taxonomy) + ) body += "\n" body += "
\n\n" @@ -297,6 +438,7 @@ def _build_service_page( taxonomy: Mapping[str, Any], *, page_path: PurePosixPath | None = None, + catalog: TopicCatalog | None = None, ) -> tuple[PurePosixPath, str]: if page_path is None: page_path = PurePosixPath("services") / slug / "index.md" @@ -309,7 +451,7 @@ def _build_service_page( body += _page_heading(_SERVICES_EYEBROW, len(matching), label, description) body += "\n" - body += _document_grid(page_path, matching, taxonomy) + body += _document_grid(page_path, matching, taxonomy, catalog=catalog) body += "\n" return page_path, body @@ -330,6 +472,10 @@ def _build_services_overview_page( body += "\n" if not services: + available_slugs = sorted(by_service) + else: + available_slugs = _ordered_keys(set(services) | set(by_service), services.keys()) + if not available_slugs: body += _empty_state("아직 등록된 서비스가 없습니다.") else: # Nonempty services surface first (highest document count first, then @@ -337,7 +483,7 @@ def _build_services_overview_page( # services are still rendered afterward with an explicit 0 marker to # preserve their paths. ordered_slugs = sorted( - services, + available_slugs, key=lambda slug: ( len(by_service.get(slug, [])) == 0, -len(by_service.get(slug, [])), @@ -346,7 +492,7 @@ def _build_services_overview_page( ) body += '
\n\n' for slug in ordered_slugs: - label = services[slug] + label = _label_for(services, slug) matching = by_service.get(slug, []) body += '
\n\n' body += f"## [{_md_label(label)}]({slug}/index.md)\n\n" @@ -359,7 +505,10 @@ def _build_services_overview_page( def _build_tag_pages( - documents: list[Document], taxonomy: Mapping[str, Any] + documents: list[Document], + taxonomy: Mapping[str, Any], + *, + catalog: TopicCatalog | None = None, ) -> dict[PurePosixPath, str]: by_tag: dict[str, list[Document]] = defaultdict(list) for document in documents: @@ -392,7 +541,7 @@ def _build_tag_pages( body += '
\n\n' body += _page_heading("TAG", len(matching), label, tag_description) body += '\n[모든 태그](index.md){ .dg-text-link }\n\n' - body += _document_grid(page_path, matching, taxonomy) + body += _document_grid(page_path, matching, taxonomy, catalog=catalog) body += "
\n" pages[page_path] = body overview += "
\n" @@ -402,7 +551,10 @@ def _build_tag_pages( def _build_articles_page( - documents: list[Document], taxonomy: Mapping[str, Any] + documents: list[Document], + taxonomy: Mapping[str, Any], + *, + catalog: TopicCatalog | None = None, ) -> tuple[PurePosixPath, str]: page_path = PurePosixPath("articles/index.md") title = "전체 글" @@ -411,26 +563,36 @@ def _build_articles_page( body += '
\n\n' body += _page_heading("ARTICLES", len(documents), title, description) body += '\n[서비스별 보기](../services/index.md){ .dg-text-link } · [태그별 보기](../tags/index.md){ .dg-text-link }\n\n' - body += _document_grid(page_path, documents, taxonomy) + body += _document_grid(page_path, documents, taxonomy, catalog=catalog) body += "
\n" return page_path, body def build_index_pages( - documents: Iterable[Document], taxonomy: Mapping[str, Any] + documents: Iterable[Document], + taxonomy: Mapping[str, Any], + *, + catalog: TopicCatalog | None = None, ) -> dict[PurePosixPath, str]: """Return virtual Markdown pages keyed by their docs-relative path.""" - docs = sorted(documents, key=lambda item: str(item.metadata.get("title", "")).casefold()) + docs = sorted( + _visible_documents(list(documents), catalog), + key=lambda item: str(item.metadata.get("title", "")).casefold(), + ) pages: dict[PurePosixPath, str] = {} collections = taxonomy.get("collections", {}) for document_type, config in collections.items(): matching = [doc for doc in docs if doc.metadata.get("document_type") == document_type] - index_path, body = _build_collection_page(document_type, config, matching, taxonomy) + index_path, body = _build_collection_page( + document_type, config, matching, taxonomy, catalog=catalog + ) pages[index_path] = body by_primary_service: dict[str, list[Document]] = defaultdict(list) for document in matching: - by_primary_service[document.relative_path.parts[1]].append(document) + service = _primary_service(document, catalog) + if service: + by_primary_service[service].append(document) for slug, service_docs in by_primary_service.items(): # A real section index prevents Material from promoting the first bundle. service_path, service_body = _build_service_page( @@ -438,6 +600,7 @@ def build_index_pages( service_docs, taxonomy, page_path=PurePosixPath(config["path"]) / slug / "index.md", + catalog=catalog, ) pages[service_path] = service_body @@ -447,14 +610,19 @@ def build_index_pages( by_service[service].append(document) services = taxonomy.get("services", {}) - for slug in services: - page_path, page_body = _build_service_page(slug, by_service.get(slug, []), taxonomy) + for slug in _ordered_keys(set(services) | set(by_service), services.keys()): + page_path, page_body = _build_service_page( + slug, + by_service.get(slug, []), + taxonomy, + catalog=catalog, + ) pages[page_path] = page_body services_path, services_body = _build_services_overview_page(by_service, taxonomy, len(docs)) pages[services_path] = services_body - pages.update(_build_tag_pages(docs, taxonomy)) - articles_path, articles_body = _build_articles_page(docs, taxonomy) + pages.update(_build_tag_pages(docs, taxonomy, catalog=catalog)) + articles_path, articles_body = _build_articles_page(docs, taxonomy, catalog=catalog) pages[articles_path] = articles_body return pages @@ -505,8 +673,12 @@ def sort_key(document: Document) -> tuple[int, str]: return selected[:3] -def _feature_card(document: Document, taxonomy: Mapping[str, Any]) -> str: +def _feature_card( + document: Document | TopicMatch, taxonomy: Mapping[str, Any] +) -> str: index_path = PurePosixPath("index.md") + if isinstance(document, TopicMatch): + return _topic_card(index_path, document, taxonomy, extra_classes="dg-feature-card") return _doc_card(index_path, document, taxonomy, extra_classes="dg-feature-card") @@ -536,14 +708,19 @@ def _build_home_stats(documents: list[Document]) -> str: return body -def _build_home_featured(documents: list[Document], taxonomy: Mapping[str, Any]) -> str: +def _build_home_featured( + documents: list[Document], + taxonomy: Mapping[str, Any], + *, + catalog: TopicCatalog | None = None, +) -> str: selected = _select_featured(documents, taxonomy) if not selected: return _empty_state("아직 소개할 문서가 없습니다.") body = '
\n\n' - for document in selected: - body += _feature_card(document, taxonomy) + for item in _collapse_documents(selected, catalog): + body += _feature_card(item, taxonomy) body += "\n" body += "
\n" return body @@ -569,8 +746,40 @@ def _build_home_browse(documents: list[Document]) -> str: return body +def build_redirect_pages(catalog: TopicCatalog) -> dict[PurePosixPath, str]: + pages: dict[PurePosixPath, str] = {} + front_matter = yaml.safe_dump( + { + "title": "문서 이동", + "search": {"exclude": True}, + "hide": ["navigation", "toc"], + }, + allow_unicode=True, + default_flow_style=False, + sort_keys=False, + ).rstrip() + for redirect_path, canonical_path in sorted(catalog.redirects.items()): + target = posixpath.relpath( + canonical_path.parent.as_posix(), start=redirect_path.parent.as_posix() + ).rstrip("/") + "/" + label = canonical_path.as_posix() + pages[redirect_path] = ( + f"---\n{front_matter}\n---\n\n" + f'\n' + f'\n\n' + "# 문서 이동\n\n" + "이 문서는 새 위치로 이동했습니다.\n\n" + f'

{_escape(label)}

\n' + ) + return pages + + def build_home_page( - template: str, documents: Iterable[Document], taxonomy: Mapping[str, Any] + template: str, + documents: Iterable[Document], + taxonomy: Mapping[str, Any], + *, + catalog: TopicCatalog | None = None, ) -> str: """Render the home landing page by filling metadata-driven slots in ``template``.""" for slot in _HOME_SLOTS: @@ -580,11 +789,18 @@ def build_home_page( if occurrences > 1: raise ValueError(f"home template has duplicate slot: {slot}") - docs = sorted(documents, key=lambda item: str(item.metadata.get("title", "")).casefold()) + docs = sorted( + _visible_documents(list(documents), catalog), + key=lambda item: str(item.metadata.get("title", "")).casefold(), + ) rendered = template rendered = rendered.replace("", _build_home_stats(docs), 1) - rendered = rendered.replace("", _build_home_featured(docs, taxonomy), 1) + rendered = rendered.replace( + "", + _build_home_featured(docs, taxonomy, catalog=catalog), + 1, + ) rendered = rendered.replace( "", _build_home_browse(docs), 1 ) @@ -597,14 +813,19 @@ def write_generated_pages(repo_root: Path | None = None) -> None: root = repo_root or REPO_ROOT taxonomy = load_taxonomy(root / "docs-taxonomy.yml") - documents = list(iter_public_documents(root / "docs", taxonomy)) + public_documents = list(iter_public_documents(root / "docs", taxonomy)) + catalog = build_topic_catalog(root / "docs", taxonomy, documents=public_documents) + documents = list(catalog.documents) - for path, content in build_index_pages(documents, taxonomy).items(): + for path, content in build_index_pages(documents, taxonomy, catalog=catalog).items(): + with mkdocs_gen_files.open(path.as_posix(), "w") as generated: + generated.write(content) + for path, content in build_redirect_pages(catalog).items(): with mkdocs_gen_files.open(path.as_posix(), "w") as generated: generated.write(content) template = (root / "docs" / "index.md").read_text(encoding="utf-8") - home_page = build_home_page(template, documents, taxonomy) + home_page = build_home_page(template, documents, taxonomy, catalog=catalog) with mkdocs_gen_files.open("index.md", "w") as generated: generated.write(home_page) diff --git a/scripts/docs/hooks.py b/scripts/docs/hooks.py index a27da28..40e6d39 100644 --- a/scripts/docs/hooks.py +++ b/scripts/docs/hooks.py @@ -5,9 +5,12 @@ from collections import defaultdict from html import escape from pathlib import Path, PurePosixPath +import posixpath +import re import sys from typing import Any, Mapping +from mkdocs.structure.files import InclusionLevel from mkdocs.structure import StructureItem from mkdocs.structure.nav import Navigation, Section from mkdocs.structure.pages import Page @@ -19,6 +22,7 @@ from scripts.docs.content import iter_public_documents, load_taxonomy from scripts.docs.generate_indexes import build_tag_links +from scripts.docs.topics import TopicCatalog, build_topic_catalog def _navigation_pages( @@ -34,22 +38,232 @@ def _navigation_pages( return pages +def on_files(files: Any, config: Mapping[str, Any]) -> Any: + """Keep internal sample READMEs out of the published site and search index.""" + try: + config.pop("_topic_catalog", None) # type: ignore[union-attr] + except Exception: + pass + for file in files: + src_uri = getattr(file, "src_uri", "") + if isinstance(src_uri, str) and "/samples/" in src_uri: + file.inclusion = InclusionLevel.EXCLUDED + return files + + +def _topic_catalog_for(docs_dir: str) -> TopicCatalog: + docs_path = Path(docs_dir) + taxonomy = load_taxonomy(docs_path.parent / "docs-taxonomy.yml") + public_documents = list(iter_public_documents(docs_path, taxonomy)) + return build_topic_catalog(docs_path, taxonomy, documents=public_documents) + + +def _topic_catalog_from_config(config: Mapping[str, Any]) -> TopicCatalog | None: + cached = config.get("_topic_catalog") if hasattr(config, "get") else None + if isinstance(cached, TopicCatalog): + return cached + + docs_dir_value = config.get("docs_dir") if hasattr(config, "get") else None + if not isinstance(docs_dir_value, str): + return None + + catalog = _topic_catalog_for(docs_dir_value) + try: + config["_topic_catalog"] = catalog # type: ignore[index] + except Exception: + pass + return catalog + + +def _strip_index_markdown(path: PurePosixPath) -> PurePosixPath: + if path.name == "index.md": + return path.parent + return path + + +def _relative_uri(source: PurePosixPath, target: PurePosixPath) -> str: + is_index = target.name == "index.md" + target_value = target.parent.as_posix() if is_index else target.as_posix() + relative = posixpath.relpath(target_value, start=source.parent.as_posix()) + if is_index: + return "./" if relative == "." else relative.rstrip("/") + "/" + return relative + + +def _redirect_target(redirect_path: PurePosixPath, canonical_path: PurePosixPath) -> str: + target = _strip_index_markdown(canonical_path) + relative = posixpath.relpath(target.as_posix(), start=redirect_path.parent.as_posix()) + return "./" if relative == "." else relative.rstrip("/") + "/" + + +def _service_label(taxonomy: Mapping[str, Any], slug: str) -> str: + services = taxonomy.get("services", {}) + value = services.get(slug) if isinstance(services, Mapping) else None + return value if isinstance(value, str) and value else slug + + +def _sample_cards(document_path: PurePosixPath, catalog: TopicCatalog, config: Mapping[str, Any]) -> str: + samples = catalog.samples_by_document.get(document_path, ()) + if not samples: + return "" + + repo_url = str(config.get("repo_url", "")).rstrip("/") + if not repo_url: + return "" + docs_dir_value = str(config.get("docs_dir", "")).strip() + docs_prefix = Path(docs_dir_value).name.strip("/") if docs_dir_value else "" + cards: list[str] = [ + '") + return "\n".join(cards) + "\n" + + +def _topic_intro(current_path: PurePosixPath, catalog: TopicCatalog) -> str: + topic = catalog.by_document.get(current_path) + if topic is None or topic.entry.relative_path.parts[0] != "services": + return "" + member_paths = [member.relative_path for member in topic.members] + if current_path not in member_paths or len(member_paths) <= 1: + return "" + + position = catalog.position_by_document[current_path] + topic_title = escape(str(topic.entry.metadata.get("title", ""))) + pieces: list[str] = [] + + if position == 0: + pieces.append('") + else: + pieces.append('") + + return "\n".join(pieces) + "\n" + + +def _topic_nav(current_path: PurePosixPath, catalog: TopicCatalog) -> str: + topic = catalog.by_document.get(current_path) + if topic is None or topic.entry.relative_path.parts[0] != "services": + return "" + member_paths = [member.relative_path for member in topic.members] + if current_path not in member_paths or len(member_paths) <= 1: + return "" + + position = catalog.position_by_document[current_path] + topic_title = escape(str(topic.entry.metadata.get("title", ""))) + pieces: list[str] = ['") + + return "\n".join(pieces) + "\n" + + def on_nav(nav: Navigation, config: Mapping[str, Any], files: Any) -> Navigation: """Keep each article under its primary service without changing its URL.""" docs_dir = Path(config["docs_dir"]) taxonomy = load_taxonomy(docs_dir.parent / "docs-taxonomy.yml") - document_titles = { - document.relative_path.as_posix(): str(document.metadata.get("title", "")).casefold() - for document in iter_public_documents(docs_dir, taxonomy) - } + catalog = _topic_catalog_from_config(config) + if catalog is None: + return nav collections = {entry["path"] for entry in taxonomy["collections"].values()} collection_indexes = {f"{collection}/index.md" for collection in collections} pages_by_path = {page.file.src_uri: page for page in nav.pages} - by_service: dict[str, list[Page]] = defaultdict(list) + redirect_paths = {path.as_posix() for path in catalog.redirects} + by_service: dict[str, list[tuple[str, StructureItem]]] = defaultdict(list) + included_paths: set[str] = set() + for topic in catalog.topics.values(): + entry_parts = topic.entry.relative_path.parts + if entry_parts[0] == "services": + member_pages: list[Page] = [] + for position, member in enumerate(topic.members): + page = pages_by_path.get(member.relative_path.as_posix()) + if page is None: + continue + if position: + page.title = f"{position}. {member.metadata.get('title', '')}" + else: + page.title = str(member.metadata.get("title", page.title or "")) + member_pages.append(page) + included_paths.add(member.relative_path.as_posix()) + if not member_pages: + continue + if len(member_pages) == 1: + by_service[topic.primary_service].append( + (str(topic.entry.metadata.get("title", "")).casefold(), member_pages[0]) + ) + else: + by_service[topic.primary_service].append( + ( + str(topic.entry.metadata.get("title", "")).casefold(), + Section(str(topic.entry.metadata.get("title", "")), member_pages), + ) + ) + continue + + for member in topic.members: + page = pages_by_path.get(member.relative_path.as_posix()) + if page is None: + continue + included_paths.add(member.relative_path.as_posix()) + by_service[topic.primary_service].append( + (str(member.metadata.get("title", "")).casefold(), page) + ) + for page in nav.pages: - parts = PurePosixPath(page.file.src_uri).parts + src_uri = page.file.src_uri + parts = PurePosixPath(src_uri).parts + if src_uri in included_paths or src_uri in collection_indexes: + continue + if src_uri in redirect_paths: + continue if len(parts) == 4 and parts[0] in collections and parts[-1] == "index.md": - by_service[parts[1]].append(page) + by_service[parts[1]].append((str(page.title or "").casefold(), page)) + included_paths.add(src_uri) + + for page in nav.pages: page.parent = None page.previous_page = None page.next_page = None @@ -64,17 +278,18 @@ def on_nav(nav: Navigation, config: Mapping[str, Any], files: Any) -> Navigation page.file.src_uri == "services/index.md" for page in direct_pages ): service_items: list[StructureItem] = [pages_by_path["services/index.md"]] - services = taxonomy["services"] - for slug in sorted(services, key=lambda value: str(services[value]).casefold()): + services = taxonomy.get("services", {}) + ordered_slugs = sorted( + set(services) | set(by_service), + key=lambda value: _service_label(taxonomy, value).casefold(), + ) + for slug in ordered_slugs: page = pages_by_path[f"services/{slug}/index.md"] - documents = sorted( - by_service.get(slug, []), - key=lambda entry: document_titles[entry.file.src_uri], - ) + documents = [entry for _, entry in sorted(by_service.get(slug, []), key=lambda value: value[0])] if not documents: service_items.append(page) else: - service_items.append(Section(services[slug], [page, *documents])) + service_items.append(Section(_service_label(taxonomy, slug), [page, *documents])) item.children = service_items items.append(item) @@ -82,6 +297,17 @@ def on_nav(nav: Navigation, config: Mapping[str, Any], files: Any) -> Navigation for index, page in enumerate(pages): page.previous_page = pages[index - 1] if index else None page.next_page = pages[index + 1] if index + 1 < len(pages) else None + for topic in catalog.topics.values(): + if topic.entry.relative_path.parts[0] != "services": + continue + member_pages = [ + pages_by_path[member.relative_path.as_posix()] + for member in topic.members + if member.relative_path.as_posix() in pages_by_path + ] + for index, page in enumerate(member_pages): + page.previous_page = member_pages[index - 1] if index else None + page.next_page = member_pages[index + 1] if index + 1 < len(member_pages) else None return Navigation(items, pages) @@ -100,6 +326,17 @@ def on_page_markdown(markdown: str, page: Any, config: Mapping[str, Any], files: if not metadata.get("document_type"): return markdown + taxonomy: Mapping[str, Any] = {} + catalog: TopicCatalog | None = None + current_path: PurePosixPath | None = None + docs_dir_value = config.get("docs_dir") + page_file = getattr(page, "file", None) + src_uri = getattr(page_file, "src_uri", None) + if isinstance(docs_dir_value, str) and isinstance(src_uri, str): + docs_dir = Path(docs_dir_value) + taxonomy = load_taxonomy(docs_dir.parent / "docs-taxonomy.yml") + catalog = _topic_catalog_from_config(config) + current_path = PurePosixPath(src_uri) sources = metadata.get("official_sources") or [] source_links = "\n".join( f'
  • ' @@ -112,15 +349,25 @@ def on_page_markdown(markdown: str, page: Any, config: Mapping[str, Any], files: if description: intro = f'

    {escape(str(description))}

    \n\n' tags = metadata.get("tags") - if isinstance(tags, list) and tags: - taxonomy = load_taxonomy(Path(config["docs_dir"]).parent / "docs-taxonomy.yml") + if isinstance(tags, list) and tags and current_path is not None: intro += build_tag_links( - PurePosixPath(page.file.src_uri), + current_path, [tag for tag in tags if isinstance(tag, str)], taxonomy, ) + if current_path is not None and catalog is not None: + topic_context = _topic_intro(current_path, catalog) + if topic_context: + intro += topic_context if intro: markdown = _insert_after_title(markdown, intro) + if current_path is not None and catalog is not None: + topic_nav = _topic_nav(current_path, catalog) + if topic_nav: + markdown = markdown.rstrip() + "\n\n" + topic_nav + sample_cards = _sample_cards(current_path, catalog, config) + if sample_cards: + markdown += "\n" + sample_cards if source_links: markdown = ( markdown.rstrip() @@ -130,3 +377,45 @@ def on_page_markdown(markdown: str, page: Any, config: Mapping[str, Any], files: + "\n\n\n" ) return markdown + + +def on_post_page(output: str, page: Any, config: Mapping[str, Any]) -> str: + """Move generated redirect metadata into the final HTML head.""" + page_file = getattr(page, "file", None) + src_uri = getattr(page_file, "src_uri", None) + if not isinstance(src_uri, str): + return output + + catalog = _topic_catalog_from_config(config) + if catalog is None: + return output + + redirect_path = PurePosixPath(src_uri) + canonical_path = catalog.redirects.get(redirect_path) + if canonical_path is None: + return output + + target = escape(_redirect_target(redirect_path, canonical_path), quote=True) + output = re.sub( + r'', + f'', + output, + count=1, + ) + output = re.sub( + r"

    \s*]*>\s*]*>\s*

    ", + "", + output, + count=1, + flags=re.MULTILINE, + ) + head_match = re.search(r"(.*?)", output, flags=re.DOTALL) + head_html = head_match.group(1) if head_match else "" + additions: list[str] = [] + if 'rel="canonical"' not in head_html: + additions.append(f'') + if f'content="0; url={target}"' not in head_html: + additions.append(f'') + if additions: + output = output.replace("", "".join(item + "\n" for item in additions) + "", 1) + return output diff --git a/tests/docs/test_indexes.py b/tests/docs/test_indexes.py index e5fc23a..bc89635 100644 --- a/tests/docs/test_indexes.py +++ b/tests/docs/test_indexes.py @@ -17,7 +17,12 @@ import yaml from scripts.docs.content import Document -from scripts.docs.generate_indexes import build_home_page, build_index_pages +from scripts.docs.generate_indexes import ( + build_home_page, + build_index_pages, + build_redirect_pages, +) +from scripts.docs.topics import build_topic_catalog ROOT = Path(__file__).parents[2] @@ -32,6 +37,95 @@ def doc(relative_path: str, **metadata: object) -> Document: ) +def write_topic_document( + docs_dir: Path, + relative_path: str, + title: str, + *, + tags: list[str], + topic_order: int | None = None, + featured: bool = False, + redirect_from: list[str] | None = None, +) -> None: + metadata: dict[str, object] = { + "title": title, + "description": f"{title} description", + "document_type": "guide", + "services": ["azure-monitor"], + "technologies": ["kubernetes"], + "tags": tags, + "status": "current", + "verification_status": "verified", + "sources_checked_at": "2026-09-12", + "official_sources": [ + { + "title": "Azure Monitor documentation", + "url": "https://learn.microsoft.com/azure/azure-monitor/", + } + ], + "last_verified": "2026-09-12", + "review_cycle_days": 180, + "applies_to": ["Azure Monitor"], + } + if topic_order is not None: + metadata["topic_order"] = topic_order + if featured: + metadata["featured"] = True + if redirect_from is not None: + metadata["redirect_from"] = redirect_from + + path = docs_dir / relative_path + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text( + "---\n" + + yaml.safe_dump(metadata, allow_unicode=True, sort_keys=False).strip() + + "\n---\n\n" + + f"# {title}\n", + encoding="utf-8", + ) + + +def build_topic_fixture( + tmp_path: Path, + taxonomy: dict, + *, + include_redirect: bool = False, +) -> tuple[list[Document], object]: + docs_dir = tmp_path / "docs" + write_topic_document( + docs_dir, + "services/azure-monitor/new-topic/index.md", + "Topic title", + tags=["networking"], + redirect_from=["guides/azure-monitor/old-topic/index.md"] if include_redirect else None, + ) + write_topic_document( + docs_dir, + "services/azure-monitor/new-topic/setup/index.md", + "Setup child", + tags=["networking"], + topic_order=1, + featured=True, + ) + write_topic_document( + docs_dir, + "services/azure-monitor/new-topic/results/index.md", + "Results child", + tags=["monitoring"], + topic_order=2, + ) + write_topic_document( + docs_dir, + "services/azure-monitor/standalone-topic/index.md", + "Standalone topic", + tags=["networking"], + featured=True, + ) + + catalog = build_topic_catalog(docs_dir, taxonomy, include_legacy=False) + return list(catalog.documents), catalog + + @pytest.fixture def taxonomy() -> dict: return { @@ -378,6 +472,8 @@ def test_service_label_falls_back_to_slug_when_taxonomy_omits_it(taxonomy: dict) guide_index = pages[PurePosixPath("guides/index.md")] assert "## unlisted-service { #service-unlisted-service }" in guide_index + assert PurePosixPath("services/unlisted-service/index.md") in pages + assert "[unlisted-service](unlisted-service/index.md)" in pages[PurePosixPath("services/index.md")] def test_tags_are_capped_at_three_and_labels_fall_back_to_slug( @@ -477,6 +573,188 @@ def test_generated_collection_page_renders_service_groups_and_links( assert '
    AKS 토픽' in html +def test_topic_cards_collapse_multi_document_topics_across_generated_indexes( + tmp_path: Path, taxonomy: dict +) -> None: + documents, catalog = build_topic_fixture(tmp_path, taxonomy) + + pages = build_index_pages(documents, taxonomy, catalog=catalog) + home = build_home_page(HOME_TEMPLATE, documents, taxonomy, catalog=catalog) + + for path in ( + PurePosixPath("guides/index.md"), + PurePosixPath("services/azure-monitor/index.md"), + PurePosixPath("articles/index.md"), + ): + page = pages[path] + assert page.count('class="dg-doc-card dg-topic-card') == 1 + assert "3개 문서" in page + assert "Setup child" not in page + assert "Results child" not in page + assert "Standalone topic" in page + + tag_page = pages[PurePosixPath("tags/networking.md")] + assert tag_page.count('class="dg-doc-card dg-topic-card') == 1 + assert "2 / 3개 문서 일치" in tag_page + assert "Setup child" not in tag_page + assert "Results child" not in tag_page + assert "Standalone topic" in tag_page + + assert home.count('class="dg-doc-card dg-topic-card') == 1 + assert "3개 문서" in home + assert "Setup child" not in home + assert "Results child" not in home + assert "Standalone topic" in home + assert "[Topic title](services/azure-monitor/new-topic/index.md)" in home + + +def test_redirect_pages_point_to_canonical_topic_entries_and_stay_out_of_indexes( + tmp_path: Path, taxonomy: dict +) -> None: + documents, catalog = build_topic_fixture(tmp_path, taxonomy, include_redirect=True) + + redirect_path = PurePosixPath("guides/azure-monitor/old-topic/index.md") + redirect_pages = build_redirect_pages(catalog) + redirect_page = redirect_pages[redirect_path] + + assert yaml.safe_load(redirect_page.split("---", 2)[1]) == { + "title": "문서 이동", + "search": {"exclude": True}, + "hide": ["navigation", "toc"], + } + assert '' in redirect_page + assert 'http-equiv="refresh"' in redirect_page + assert 'content="0; url=../../../services/azure-monitor/new-topic/"' in redirect_page + assert 'href="../../../services/azure-monitor/new-topic/"' in redirect_page + assert "services/azure-monitor/new-topic/index.md" in redirect_page + + pages = build_index_pages(documents, taxonomy, catalog=catalog) + assert all("old-topic" not in content for content in pages.values()) + + +def test_mixed_canonical_and_legacy_topic_inputs_do_not_overcount_topic_matches( + tmp_path: Path, taxonomy: dict +) -> None: + documents, catalog = build_topic_fixture(tmp_path, taxonomy) + documents.append( + doc( + "guides/azure-monitor/new-topic/index.md", + title="Legacy topic", + description="Legacy topic description", + document_type="guide", + services=["azure-monitor"], + tags=["networking"], + ) + ) + + pages = build_index_pages(documents, taxonomy, catalog=catalog) + + assert "4 / 3개 문서 일치" not in pages[PurePosixPath("guides/index.md")] + assert "Legacy topic" in pages[PurePosixPath("guides/index.md")] + + +def test_legacy_same_slug_documents_from_different_collections_do_not_collapse( + tmp_path: Path, taxonomy: dict +) -> None: + documents = [ + doc( + "guides/azure-monitor/shared/index.md", + title="Guide title", + description="Guide description", + document_type="guide", + services=["azure-monitor"], + tags=["networking"], + ), + doc( + "research/azure-monitor/shared/index.md", + title="Research title", + description="Research description", + document_type="research", + services=["azure-monitor"], + tags=["networking"], + ), + ] + docs_dir = tmp_path / "docs" + for item in documents: + write_topic_document( + docs_dir, + item.relative_path.as_posix(), + str(item.metadata["title"]), + tags=list(item.metadata["tags"]), + ) + path = docs_dir / item.relative_path + contents = path.read_text(encoding="utf-8") + path.write_text( + contents.replace("document_type: guide", f"document_type: {item.metadata['document_type']}"), + encoding="utf-8", + ) + catalog = build_topic_catalog(docs_dir, taxonomy, documents=documents) + + pages = build_index_pages(documents, taxonomy, catalog=catalog) + + assert "Guide title" in pages[PurePosixPath("guides/index.md")] + assert "Research title" in pages[PurePosixPath("research/index.md")] + assert pages[PurePosixPath("tags/networking.md")].count('class="dg-topic-card"') == 0 + + +def test_secondary_service_pages_show_the_matching_service_on_topic_cards( + tmp_path: Path, taxonomy: dict +) -> None: + documents, catalog = build_topic_fixture(tmp_path, taxonomy) + for document in documents: + if document.relative_path == PurePosixPath("services/azure-monitor/new-topic/setup/index.md"): + document.metadata["services"] = ["azure-monitor", "azure-kubernetes-service"] + break + + pages = build_index_pages(documents, taxonomy, catalog=catalog) + service_page = pages[PurePosixPath("services/azure-kubernetes-service/index.md")] + + assert "Azure Kubernetes Service" in service_page + assert "Azure Monitor1 / 3개 문서 일치" not in service_page + + +def test_singleton_canonical_topics_keep_same_key_legacy_pages_visible( + tmp_path: Path, taxonomy: dict +) -> None: + documents = [ + doc( + "services/azure-monitor/topic/index.md", + title="Canonical topic", + description="Canonical description", + document_type="guide", + services=["azure-monitor"], + tags=["networking"], + ), + doc( + "guides/azure-monitor/topic/index.md", + title="Legacy guide", + description="Legacy description", + document_type="guide", + services=["azure-monitor"], + tags=["networking"], + ), + ] + docs_dir = tmp_path / "docs" + write_topic_document( + docs_dir, + "services/azure-monitor/topic/index.md", + "Canonical topic", + tags=["networking"], + ) + write_topic_document( + docs_dir, + "guides/azure-monitor/topic/index.md", + "Legacy guide", + tags=["networking"], + ) + catalog = build_topic_catalog(docs_dir, taxonomy, documents=documents) + + pages = build_index_pages(documents, taxonomy, catalog=catalog) + + assert "Canonical topic" in pages[PurePosixPath("guides/index.md")] + assert "Legacy guide" in pages[PurePosixPath("guides/index.md")] + + # --------------------------------------------------------------------------- # build_index_pages: service pages # --------------------------------------------------------------------------- diff --git a/tests/docs/test_reader_navigation.py b/tests/docs/test_reader_navigation.py index fa1efcc..e78ae44 100644 --- a/tests/docs/test_reader_navigation.py +++ b/tests/docs/test_reader_navigation.py @@ -15,6 +15,7 @@ from scripts.docs.content import Document from scripts.docs.generate_indexes import build_home_page, build_index_pages from scripts.docs.hooks import on_page_markdown +from scripts.docs.topics import build_topic_catalog @pytest.fixture @@ -45,6 +46,121 @@ def document(collection: str, topic: str, title: str, tags: list[str]) -> Docume ) +def write_topic_document( + docs_dir: Path, + relative_path: str, + title: str, + *, + tags: list[str], + topic_order: int | None = None, +) -> None: + metadata: dict[str, object] = { + "title": title, + "description": f"{title} 설명", + "document_type": "guide", + "services": ["azure-monitor"], + "technologies": ["kubernetes"], + "tags": tags, + "status": "current", + "verification_status": "verified", + "sources_checked_at": "2026-09-12", + "official_sources": [ + { + "title": "Azure Monitor documentation", + "url": "https://learn.microsoft.com/azure/azure-monitor/", + } + ], + "last_verified": "2026-09-12", + "review_cycle_days": 180, + "applies_to": ["Azure Monitor"], + } + if topic_order is not None: + metadata["topic_order"] = topic_order + + path = docs_dir / relative_path + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text( + "---\n" + + yaml.safe_dump(metadata, allow_unicode=True, sort_keys=False).strip() + + "\n---\n\n" + + f"# {title}\n\n본문입니다.\n", + encoding="utf-8", + ) + + +def build_topic_fixture(tmp_path: Path, taxonomy: dict) -> tuple[Path, object]: + docs_dir = tmp_path / "docs" + docs_dir.mkdir() + (tmp_path / "docs-taxonomy.yml").write_text( + yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + write_topic_document( + docs_dir, + "services/azure-monitor/new-topic/index.md", + "Topic title", + tags=["networking"], + ) + write_topic_document( + docs_dir, + "services/azure-monitor/new-topic/setup/index.md", + "Setup child", + tags=["networking"], + topic_order=1, + ) + write_topic_document( + docs_dir, + "services/azure-monitor/new-topic/results/index.md", + "Results child", + tags=["monitoring"], + topic_order=2, + ) + write_topic_document( + docs_dir, + "services/azure-monitor/standalone-topic/index.md", + "Standalone topic", + tags=["networking"], + ) + + sample_dir = docs_dir / "services" / "azure-monitor" / "new-topic" / "samples" / "event-lab" + sample_dir.mkdir(parents=True, exist_ok=True) + (sample_dir / "sample.yml").write_text( + yaml.safe_dump( + { + "title": "Event lab", + "description": "Reproduces the monitored incident.", + "kind": "runnable", + "used_by": ["setup"], + }, + allow_unicode=True, + sort_keys=False, + ), + encoding="utf-8", + ) + (sample_dir / "README.md").write_text("# Event lab\n", encoding="utf-8") + + return docs_dir, build_topic_catalog(docs_dir, taxonomy, include_legacy=False) + + +def page_namespace(document: Document, *, previous: Document | None = None, next_: Document | None = None): + def nav_item(item: Document | None): + if item is None: + return None + return SimpleNamespace( + title=item.metadata["title"], + url=item.relative_path.as_posix().removesuffix("index.md"), + ) + + return SimpleNamespace( + title=document.metadata["title"], + meta=document.metadata, + file=SimpleNamespace(src_uri=str(document.relative_path)), + url=document.relative_path.as_posix().removesuffix("index.md"), + previous_page=nav_item(previous), + next_page=nav_item(next_), + ) + + class Links(HTMLParser): def __init__(self) -> None: super().__init__() @@ -202,6 +318,131 @@ def test_article_tags_use_the_same_detail_pages(tmp_path: Path, taxonomy: dict) assert "본문입니다." in rendered +def test_topic_pages_render_context_outline_and_related_samples( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir, catalog = build_topic_fixture(tmp_path, taxonomy) + entry = next( + document + for document in catalog.documents + if document.relative_path == PurePosixPath("services/azure-monitor/new-topic/index.md") + ) + setup = next( + document + for document in catalog.documents + if document.relative_path == PurePosixPath("services/azure-monitor/new-topic/setup/index.md") + ) + results = next( + document + for document in catalog.documents + if document.relative_path == PurePosixPath("services/azure-monitor/new-topic/results/index.md") + ) + standalone = next( + document + for document in catalog.documents + if document.relative_path + == PurePosixPath("services/azure-monitor/standalone-topic/index.md") + ) + config = { + "docs_dir": str(docs_dir), + "repo_url": "https://github.com/example/devguidesample", + } + + entry_rendered = on_page_markdown( + "# Topic title\n\n본문입니다.\n", + page_namespace(entry, next_=setup), + config, + None, + ) + setup_rendered = on_page_markdown( + "# Setup child\n\n본문입니다.\n", + page_namespace(setup, previous=entry, next_=results), + config, + None, + ) + results_rendered = on_page_markdown( + "# Results child\n\n본문입니다.\n", + page_namespace(results, previous=setup), + config, + None, + ) + standalone_rendered = on_page_markdown( + "# Standalone topic\n\n본문입니다.\n", + page_namespace(standalone), + config, + None, + ) + + assert 'class="dg-topic-overview"' in entry_rendered + assert "TOPIC · 3 DOCUMENTS" in entry_rendered + assert "Topic title · 1 / 3" in entry_rendered + assert entry_rendered.count("Setup child") == 1 + assert entry_rendered.count("Results child") == 1 + assert entry_rendered.index("Setup child") < entry_rendered.index("Results child") + + assert 'class="dg-topic-context"' in setup_rendered + assert "Topic title · 2 / 3" in setup_rendered + assert ">전체 목차<" in setup_rendered + assert 'class="dg-topic-nav"' in setup_rendered + assert setup_rendered.index("본문입니다.") < setup_rendered.index('class="dg-topic-nav"') + assert 'class="dg-sample-card"' in setup_rendered + assert "Event lab" in setup_rendered + assert ( + "https://github.com/example/devguidesample/tree/main/" + "docs/services/azure-monitor/new-topic/samples/event-lab" + ) in setup_rendered + assert setup_rendered.index('class="dg-sample-card"') < setup_rendered.index( + 'class="doc-sources"' + ) + + assert "Topic title · 3 / 3" in results_rendered + assert 'class="dg-topic-nav"' in results_rendered + assert 'class="dg-sample-card"' not in results_rendered + assert 'class="dg-sample-card"' not in standalone_rendered + + +def test_legacy_same_slug_pages_do_not_get_canonical_topic_ui( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + docs_dir.mkdir() + (tmp_path / "docs-taxonomy.yml").write_text( + yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + write_topic_document( + docs_dir, + "guides/azure-monitor/shared/index.md", + "Guide title", + tags=["networking"], + ) + write_topic_document( + docs_dir, + "research/azure-monitor/shared/index.md", + "Research title", + tags=["networking"], + ) + research_path = docs_dir / "research" / "azure-monitor" / "shared" / "index.md" + research_path.write_text( + research_path.read_text(encoding="utf-8").replace("document_type: guide", "document_type: research"), + encoding="utf-8", + ) + guide = document("guides", "shared", "Guide title", ["networking"]) + catalog = build_topic_catalog(docs_dir, taxonomy) + + rendered = on_page_markdown( + "# Guide title\n\n본문입니다.\n", + page_namespace(guide), + {"docs_dir": str(docs_dir)}, + None, + ) + + assert catalog.by_document[guide.relative_path].entry.relative_path == guide.relative_path + assert 'class="dg-topic-overview"' not in rendered + assert 'class="dg-topic-context"' not in rendered + assert 'class="dg-topic-nav"' not in rendered + + class ReaderPage(HTMLParser): def __init__(self, path: Path) -> None: super().__init__() diff --git a/tests/docs/test_site_pipeline.py b/tests/docs/test_site_pipeline.py index 3b6e96c..8f01995 100644 --- a/tests/docs/test_site_pipeline.py +++ b/tests/docs/test_site_pipeline.py @@ -8,6 +8,7 @@ from urllib.parse import urljoin from markdown import Markdown +from mkdocs.structure.files import InclusionLevel from material.plugins.search.plugin import SearchIndex from mkdocs.commands.build import build from mkdocs.config import load_config @@ -16,9 +17,10 @@ import yaml from scripts.docs import validate_search_index -from scripts.docs.content import load_document +from scripts.docs.content import iter_public_documents, load_document from scripts.docs.generate_indexes import build_index_pages -from scripts.docs.hooks import on_page_markdown +from scripts.docs.hooks import on_files, on_page_markdown, on_post_page +from scripts.docs.topics import build_topic_catalog FIXTURE = Path(__file__).parent / "fixtures" / "valid-guide.md" @@ -48,6 +50,212 @@ """ +def write_topic_document( + docs_dir: Path, + relative_path: str, + title: str, + *, + tags: list[str], + topic_order: int | None = None, + featured: bool = False, + redirect_from: list[str] | None = None, +) -> None: + metadata: dict[str, object] = { + "title": title, + "description": f"{title} 설명", + "document_type": "guide", + "services": ["aks"], + "technologies": ["kubernetes"], + "tags": tags, + "status": "current", + "verification_status": "verified", + "sources_checked_at": "2026-09-12", + "official_sources": [ + { + "title": "Azure Kubernetes Service documentation", + "url": "https://learn.microsoft.com/azure/aks/", + } + ], + "last_verified": "2026-09-12", + "review_cycle_days": 180, + "applies_to": ["AKS 1.34+"], + } + if topic_order is not None: + metadata["topic_order"] = topic_order + if featured: + metadata["featured"] = True + if redirect_from is not None: + metadata["redirect_from"] = redirect_from + + path = docs_dir / relative_path + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text( + "---\n" + + yaml.safe_dump(metadata, allow_unicode=True, sort_keys=False).strip() + + "\n---\n\n" + + f"# {title}\n\n{title} 본문입니다.\n", + encoding="utf-8", + ) + + +class TopicReaderPage(HTMLParser): + def __init__(self, path: Path) -> None: + super().__init__() + self.navigation_depth = 0 + self.navigation_parents: list[str | None] = [] + self.last_navigation_target: str | None = None + self.navigation_entries: list[tuple[str, str, tuple[str, ...]]] = [] + self.expanded_groups = 0 + self.topic_nav_depth = 0 + self.topic_nav_links: list[tuple[str, str]] = [] + self.current_link: tuple[str, str] | None = None + self.link_text: list[str] = [] + self.feed(path.read_text(encoding="utf-8")) + + def handle_starttag(self, tag: str, attrs: list[tuple[str, str | None]]) -> None: + attributes = dict(attrs) + classes = (attributes.get("class") or "").split() + if tag == "nav" and (self.navigation_depth or "md-nav--primary" in classes): + self.navigation_depth += 1 + self.navigation_parents.append(self.last_navigation_target) + if tag == "nav" and "dg-topic-nav" in classes: + self.topic_nav_depth += 1 + if self.navigation_depth and tag == "input" and "md-nav__toggle" in classes: + self.expanded_groups += "checked" in attributes + target = attributes.get("href") + if tag != "a" or not isinstance(target, str): + return + self.current_link = ( + target, + "navigation" if self.navigation_depth else "topic" if self.topic_nav_depth else "other", + ) + self.link_text = [] + + def handle_endtag(self, tag: str) -> None: + if tag == "a" and self.current_link is not None: + target, kind = self.current_link + title = " ".join("".join(self.link_text).split()) + if kind == "navigation": + parents = tuple(parent for parent in self.navigation_parents if parent is not None) + self.navigation_entries.append((target, title, parents)) + self.last_navigation_target = target + elif kind == "topic": + self.topic_nav_links.append((target, title)) + self.current_link = None + if tag == "nav" and self.topic_nav_depth: + self.topic_nav_depth -= 1 + if tag == "nav" and self.navigation_depth: + self.navigation_depth -= 1 + self.navigation_parents.pop() + + def handle_data(self, data: str) -> None: + if self.current_link is not None: + self.link_text.append(data) + + +def make_topic_repository(tmp_path: Path) -> Path: + root = tmp_path + docs = root / "docs" + docs.mkdir() + (docs / "index.md").write_text( + "# Home\n\n\n\n\n\n\n", + encoding="utf-8", + ) + (docs / ".nav.yml").write_text( + "nav:\n - Home: index.md\n - Services: services\n - Tags: tags\n" + " - Articles: articles\n - glob: '*'\n ignore_no_matches: true\n", + encoding="utf-8", + ) + taxonomy = { + "collections": {"guide": {"path": "guides", "title": "구현 가이드"}}, + "services": {"aks": "Azure Kubernetes Service"}, + "technologies": {"kubernetes": "Kubernetes"}, + "tags": {"networking": "Networking", "monitoring": "Monitoring"}, + "verification_statuses": ["verified", "needs-review"], + "official_source_hosts": ["learn.microsoft.com"], + "required_source_host": "learn.microsoft.com", + } + (root / "docs-taxonomy.yml").write_text( + yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + site_config = yaml.safe_load( + (Path(__file__).parents[2] / "mkdocs.yml").read_text(encoding="utf-8") + ) + config_path = root / "mkdocs.yml" + site_config.update( + { + "site_name": "Topic test", + "site_url": "https://example.test/devguidesample/", + "repo_url": "https://github.com/example/devguidesample", + "docs_dir": str(docs), + "site_dir": str(root / "site"), + } + ) + generator = root / "generate.py" + generator.write_text( + "from pathlib import Path\n" + "from scripts.docs.generate_indexes import write_generated_pages\n" + f"write_generated_pages(Path({str(root)!r}))\n", + encoding="utf-8", + ) + site_config["hooks"] = [str(Path(__file__).parents[2] / "scripts" / "docs" / "hooks.py")] + site_config["plugins"] = [ + {"search": {"lang": ["ko", "en"]}}, + {"tags": {"tags": False, "listings": False}}, + {"gen-files": {"scripts": [str(generator)]}}, + "awesome-nav", + ] + config_path.write_text(yaml.safe_dump(site_config), encoding="utf-8") + + write_topic_document( + docs, + "services/aks/network-diagnosis/index.md", + "Topic title", + tags=["networking"], + redirect_from=["guides/aks/old-topic/index.md"], + ) + write_topic_document( + docs, + "services/aks/network-diagnosis/setup/index.md", + "Setup child", + tags=["networking"], + topic_order=1, + featured=True, + ) + write_topic_document( + docs, + "services/aks/network-diagnosis/results/index.md", + "Results child", + tags=["monitoring"], + topic_order=2, + ) + write_topic_document( + docs, + "services/aks/standalone-topic/index.md", + "Standalone topic", + tags=["networking"], + featured=True, + ) + sample_dir = docs / "services" / "aks" / "network-diagnosis" / "samples" / "event-lab" + sample_dir.mkdir(parents=True, exist_ok=True) + (sample_dir / "sample.yml").write_text( + yaml.safe_dump( + { + "title": "Event lab", + "description": "Reproduces the monitored incident.", + "kind": "runnable", + "used_by": ["setup"], + }, + allow_unicode=True, + sort_keys=False, + ), + encoding="utf-8", + ) + (sample_dir / "README.md").write_text("# Event lab\n", encoding="utf-8") + return root + + def test_indexes_are_generated_from_metadata_with_safe_yaml() -> None: loaded = load_document(FIXTURE, docs_dir=FIXTURE.parent) document = loaded.__class__( @@ -249,6 +457,96 @@ def test_page_hook_keeps_sources_without_workflow_notices() -> None: assert missing == "# Page\n" +def test_on_files_excludes_all_markdown_under_samples() -> None: + readme = SimpleNamespace( + src_uri="services/aks/network-diagnosis/samples/event-lab/README.md", + inclusion=InclusionLevel.UNDEFINED, + ) + notes = SimpleNamespace( + src_uri="services/aks/network-diagnosis/samples/event-lab/notes.md", + inclusion=InclusionLevel.UNDEFINED, + ) + regular = SimpleNamespace( + src_uri="services/aks/network-diagnosis/index.md", + inclusion=InclusionLevel.UNDEFINED, + ) + manifest = SimpleNamespace( + src_uri="services/aks/network-diagnosis/samples/event-lab/sample.yml", + inclusion=InclusionLevel.UNDEFINED, + ) + + on_files([readme, notes, manifest, regular], {}) + + assert readme.inclusion is InclusionLevel.EXCLUDED + assert notes.inclusion is InclusionLevel.EXCLUDED + assert manifest.inclusion is InclusionLevel.EXCLUDED + assert regular.inclusion is InclusionLevel.UNDEFINED + + +def test_topic_catalog_integration_preserves_public_path_filter(tmp_path: Path) -> None: + docs = tmp_path / "docs" + docs.mkdir() + taxonomy = { + "collections": {"guide": {"path": "guides", "title": "구현 가이드"}}, + "services": {"aks": "Azure Kubernetes Service"}, + "technologies": {"kubernetes": "Kubernetes"}, + "tags": {"networking": "Networking", "troubleshooting": "Troubleshooting"}, + "verification_statuses": ["verified", "needs-review"], + "official_source_hosts": ["learn.microsoft.com"], + "required_source_host": "learn.microsoft.com", + } + (tmp_path / "docs-taxonomy.yml").write_text( + yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + invalid = docs / "services" / "AKS" / "MixedTopic" + invalid.mkdir(parents=True) + (invalid / "index.md").write_text(SEARCH_DOCUMENT, encoding="utf-8") + + public_documents = list(iter_public_documents(docs, taxonomy)) + catalog = build_topic_catalog(docs, taxonomy, documents=public_documents) + pages = build_index_pages(catalog.documents, taxonomy, catalog=catalog) + + assert public_documents == [] + assert catalog.documents == () + assert "AKS 네트워크 진단" not in pages[PurePosixPath("articles/index.md")] + + +def test_on_post_page_injects_head_redirect_tags_when_theme_canonical_is_missing( + tmp_path: Path, +) -> None: + docs = tmp_path / "docs" + docs.mkdir() + taxonomy = { + "collections": {"guide": {"path": "guides", "title": "구현 가이드"}}, + "services": {"aks": "Azure Kubernetes Service"}, + "technologies": {"kubernetes": "Kubernetes"}, + "tags": {"networking": "Networking"}, + "verification_statuses": ["verified", "needs-review"], + "official_source_hosts": ["learn.microsoft.com"], + "required_source_host": "learn.microsoft.com", + } + (tmp_path / "docs-taxonomy.yml").write_text( + yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + canonical = docs / "services" / "aks" / "network-diagnosis" + canonical.mkdir(parents=True) + (canonical / "index.md").write_text( + SEARCH_DOCUMENT.replace( + "last_verified: 2026-09-12", + "redirect_from: [guides/aks/old-topic/index.md]\nlast_verified: 2026-09-12", + ), + encoding="utf-8", + ) + page = SimpleNamespace(file=SimpleNamespace(src_uri="guides/aks/old-topic/index.md")) + + rendered = on_post_page("", page, {"docs_dir": str(docs)}) + + assert '' in rendered + assert '' in rendered + + def make_search_repository(tmp_path: Path) -> Path: taxonomy = { "collections": {"guide": {"path": "guides"}}, @@ -411,6 +709,59 @@ def handle_data(self, text: str) -> None: assert resolved_links["https://example.test/guides/aks/z-last-topic/"] == "세 번째 문서" +def test_topic_packages_drive_sidebar_navigation_redirects_and_bounded_topic_links( + tmp_path: Path, +) -> None: + root = make_topic_repository(tmp_path) + build(load_config(str(root / "mkdocs.yml"), strict=True)) + + home = TopicReaderPage(root / "site" / "index.html") + sidebar_documents = [ + entry + for entry in home.navigation_entries + if entry[0].startswith("services/aks/") + ] + assert ("services/aks/network-diagnosis/", "Topic title", ("services/", "services/aks/")) in sidebar_documents + assert ( + "services/aks/network-diagnosis/setup/", + "1. Setup child", + ("services/", "services/aks/", "services/aks/network-diagnosis/"), + ) in sidebar_documents + assert ( + "services/aks/network-diagnosis/results/", + "2. Results child", + ("services/", "services/aks/", "services/aks/network-diagnosis/"), + ) in sidebar_documents + assert ("services/aks/standalone-topic/", "Standalone topic", ("services/", "services/aks/")) in sidebar_documents + assert all("old-topic" not in target for target, _, _ in sidebar_documents) + + entry_page = TopicReaderPage(root / "site" / "services" / "aks" / "network-diagnosis" / "index.html") + assert entry_page.topic_nav_links == [("setup/", "다음 문서")] + + middle_page = TopicReaderPage( + root / "site" / "services" / "aks" / "network-diagnosis" / "setup" / "index.html" + ) + assert middle_page.expanded_groups == 3 + assert middle_page.topic_nav_links == [("../", "이전 문서"), ("../results/", "다음 문서")] + + final_page = TopicReaderPage( + root / "site" / "services" / "aks" / "network-diagnosis" / "results" / "index.html" + ) + assert final_page.topic_nav_links == [("../setup/", "이전 문서")] + + redirect_page_path = root / "site" / "guides" / "aks" / "old-topic" / "index.html" + redirect_page = redirect_page_path.read_text(encoding="utf-8") + assert "services/aks/network-diagnosis/" in redirect_page + assert '' in redirect_page + assert '' in redirect_page + search = json.loads((root / "site" / "search" / "search_index.json").read_text(encoding="utf-8")) + locations = {entry["location"] for entry in search["docs"]} + assert "guides/aks/old-topic/" not in locations + assert not any("/samples/" in location for location in locations) + assert not any("Event lab" in entry.get("text", "") for entry in search["docs"]) + assert not (root / "site" / "services" / "aks" / "network-diagnosis" / "samples").exists() + + def write_search_index(root: Path, documents: list[dict[str, str]]) -> None: (root / "site" / "search" / "search_index.json").write_text( json.dumps({"config": {}, "docs": documents}, ensure_ascii=False), From 69bf95cc17ca50adab2cb89dd74b380bd76e0c94 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 16:44:58 +0900 Subject: [PATCH 05/12] fix(docs): keep sample ownership canonical Stop legacy same-key pages from inheriting canonical topic sample ownership while preserving topic mapping for navigation and migration. Add regressions that prove TopicCatalog keeps sample ownership exact and only canonical used_by owners render related sample cards. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- scripts/docs/topics.py | 4 +- tests/docs/test_reader_navigation.py | 77 ++++++++++++++++++++++++++++ tests/docs/test_topics.py | 39 ++++++++++++++ 3 files changed, 117 insertions(+), 3 deletions(-) diff --git a/scripts/docs/topics.py b/scripts/docs/topics.py index 7e15ccf..1092eea 100644 --- a/scripts/docs/topics.py +++ b/scripts/docs/topics.py @@ -380,9 +380,7 @@ def build_topic_catalog( for legacy_document in legacy_group: by_document[legacy_document.relative_path] = topic position_by_document[legacy_document.relative_path] = 0 - samples_by_document[legacy_document.relative_path] = samples_by_document.get( - topic.entry.relative_path, () - ) + samples_by_document[legacy_document.relative_path] = () continue topic = Topic( primary_service=key[0], diff --git a/tests/docs/test_reader_navigation.py b/tests/docs/test_reader_navigation.py index e78ae44..e447c7b 100644 --- a/tests/docs/test_reader_navigation.py +++ b/tests/docs/test_reader_navigation.py @@ -443,6 +443,83 @@ def test_legacy_same_slug_pages_do_not_get_canonical_topic_ui( assert 'class="dg-topic-nav"' not in rendered +def test_legacy_alias_page_does_not_render_canonical_entry_sample_cards( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + docs_dir.mkdir() + (tmp_path / "docs-taxonomy.yml").write_text( + yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), + encoding="utf-8", + ) + write_topic_document( + docs_dir, + "services/azure-monitor/agent-topic/index.md", + "Agent topic", + tags=["networking"], + ) + write_topic_document( + docs_dir, + "services/azure-monitor/agent-topic/setup/index.md", + "Setup child", + tags=["networking"], + topic_order=1, + ) + write_topic_document( + docs_dir, + "guides/azure-monitor/agent-topic/index.md", + "Legacy topic", + tags=["networking"], + ) + sample_dir = docs_dir / "services" / "azure-monitor" / "agent-topic" / "samples" / "entry-lab" + sample_dir.mkdir(parents=True, exist_ok=True) + (sample_dir / "sample.yml").write_text( + yaml.safe_dump( + { + "title": "Entry lab", + "description": "Owned by the canonical entry only.", + "kind": "runnable", + "used_by": ["index"], + }, + allow_unicode=True, + sort_keys=False, + ), + encoding="utf-8", + ) + (sample_dir / "README.md").write_text("# Entry lab\n", encoding="utf-8") + catalog = build_topic_catalog(docs_dir, taxonomy) + canonical_entry = next( + document + for document in catalog.documents + if document.relative_path == PurePosixPath("services/azure-monitor/agent-topic/index.md") + ) + legacy_page = document("guides", "agent-topic", "Legacy topic", ["networking"]) + + canonical_rendered = on_page_markdown( + "# Agent topic\n\n본문입니다.\n", + page_namespace(canonical_entry), + { + "docs_dir": str(docs_dir), + "repo_url": "https://github.com/example/devguidesample", + }, + None, + ) + legacy_rendered = on_page_markdown( + "# Legacy topic\n\n본문입니다.\n", + page_namespace(legacy_page), + { + "docs_dir": str(docs_dir), + "repo_url": "https://github.com/example/devguidesample", + }, + None, + ) + + assert 'class="dg-sample-card"' in canonical_rendered + assert "Entry lab" in canonical_rendered + assert 'class="dg-sample-card"' not in legacy_rendered + assert "Entry lab" not in legacy_rendered + + class ReaderPage(HTMLParser): def __init__(self, path: Path) -> None: super().__init__() diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py index a1b2af0..bb852e8 100644 --- a/tests/docs/test_topics.py +++ b/tests/docs/test_topics.py @@ -151,6 +151,45 @@ def test_build_topic_catalog_discovers_canonical_topic_documents_and_samples( ] == ["event-lab"] +def test_build_topic_catalog_does_not_leak_canonical_sample_ownership_to_legacy_aliases( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + write_document( + docs_dir, + "services/azure-monitor/agent-topic/index.md", + "Agent topic", + ) + write_document( + docs_dir, + "services/azure-monitor/agent-topic/setup/index.md", + "Setup", + topic_order=1, + ) + write_document( + docs_dir, + "guides/azure-monitor/agent-topic/index.md", + "Legacy topic", + ) + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/entry-lab", + { + "title": "Entry lab", + "description": "Owned by the canonical entry only.", + "kind": "runnable", + "used_by": ["index"], + }, + ) + + catalog = build_topic_catalog(docs_dir, taxonomy) + + assert [sample.slug for sample in catalog.samples_by_document[PurePosixPath("services/azure-monitor/agent-topic/index.md")]] == [ + "entry-lab" + ] + assert catalog.samples_by_document[PurePosixPath("guides/azure-monitor/agent-topic/index.md")] == () + + @pytest.mark.parametrize( ("case", "expected"), [ From 0fc054f04896a83b4dc8e374d1fa83a49da92540 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 17:03:09 +0900 Subject: [PATCH 06/12] refactor(content): group connected topics with their samples Move the four connected documentation sets into canonical topic packages, preserve legacy URLs with redirects, and colocate their owned samples with explicit manifests. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .gitignore | 2 +- .../custom-vectorization/a10-vs-t4}/index.md | 9 +- .../bge-m3-vs-qwen3}/index.md | 3 + .../custom-web-api}/images/architecture.png | Bin .../custom-web-api}/index.md | 15 +-- .../images/gpu_vllm_rag_architecture.png | Bin .../custom-vectorization/gpu-vllm}/index.md | 19 ++-- .../images/indexer_vs_pushapi.png | Bin .../custom-vectorization}/index.md | 6 +- .../rag-chunking}/index.md | 5 +- .../samples/implementation/README.md | 5 + .../samples/implementation}/bench/Dockerfile | 0 .../implementation}/bench/bench_embed_gpu.py | 0 .../implementation}/bench/bench_qps_sweep.py | 0 .../implementation}/bench/bench_runner.py | 0 .../implementation}/bench/k8s/configmap.yaml | 0 .../bench/k8s/job-bench-concurrency.yaml | 0 .../bench/k8s/job-bench-indexer.yaml | 0 .../bench/k8s/job-bench-push.yaml | 0 .../implementation}/bench/requirements.txt | 0 .../implementation}/embedding-api/Dockerfile | 0 .../implementation}/embedding-api/app.py | 0 .../embedding-api/requirements.txt | 0 .../images/architecture.excalidraw | 0 .../implementation}/images/architecture.png | Bin .../images/architecture_lite.png | Bin .../gpu_vllm_rag_architecture.excalidraw | 0 .../images/gpu_vllm_rag_architecture.png | Bin .../images/indexer_vs_pushapi.png | Bin .../indexer_vs_pushapi.excalidraw | 0 .../implementation}/k8s/cluster-issuer.yaml | 0 .../implementation}/k8s/deployment.yaml | 0 .../samples/implementation}/k8s/ingress.yaml | 0 .../reranker-adapter/Dockerfile | 0 .../implementation}/reranker-adapter/app.py | 0 .../reranker-adapter/requirements.txt | 0 .../samples/implementation/sample.yml | 10 ++ .../implementation}/tei-adapter/Dockerfile | 0 .../implementation}/tei-adapter/app.py | 0 .../tei-adapter/k8s/deployment.yaml | 0 .../tei-adapter/requirements.txt | 0 .../implementation}/vllm-adapter/Dockerfile | 0 .../implementation}/vllm-adapter/app.py | 0 .../vllm-adapter/requirements.txt | 0 .../dynamic-thresholds}/index.md | 5 +- .../azure-sre-agent/event-lab}/index.md | 29 ++--- .../images/agent-reasoning-flow.svg | 0 .../azure-sre-agent-networking-vnet.png | Bin .../images/custom-skill-flow.svg | 0 .../images/diagnose-azure-services.svg | 0 .../azure-sre-agent}/images/github-issue.png | Bin .../images/incident-platform-flow.svg | 0 .../images/incident-response-flow.svg | 0 .../images/knowledge-sources.svg | 0 .../images/managed-connectors-icon-grid.png | Bin .../images/memory-auto-learning.svg | 0 .../images/memory-unified-search.svg | 0 .../images/notification-paths.svg | 0 .../images/operations-hub-overview-tab.png | Bin .../images/permission-flow.svg | 0 .../images/portal-sub-agent-canvas-full.png | Bin .../images/root-cause-analysis.svg | 0 .../images/run-modes-comparison.svg | 0 .../images/s1-agent-conclusion.png | Bin .../images/s1-email-preview.png | Bin .../images/s1-three-panel.png | Bin .../images/sre-agent-process.png | Bin .../incident-runbook}/index.md | 3 + .../azure-monitor/azure-sre-agent}/index.md | 20 ++-- .../azure-sre-agent/results}/index.md | 7 +- .../samples/event-lab}/.env.example | 0 .../samples/event-lab}/.gitignore | 0 .../samples/event-lab/README.md | 14 +++ .../samples/event-lab}/app/.dockerignore | 0 .../samples/event-lab}/app/Dockerfile | 0 .../samples/event-lab}/app/main.py | 0 .../event-lab}/app/requirements-dev.txt | 0 .../samples/event-lab}/app/requirements.txt | 0 .../samples/event-lab}/app/telemetry.py | 0 .../samples/event-lab}/app/tests/conftest.py | 0 .../samples/event-lab}/app/tests/test_main.py | 0 .../event-lab}/app/tests/test_telemetry.py | 0 .../assets/briefing/s1-agent-conclusion.png | Bin .../assets/briefing/s1-three-panel.png | Bin .../assets/briefing/s1-three-panel.svg | 0 .../assets/briefing/sre-agent-process.png | Bin .../assets/briefing/sre-agent-process.svg | 0 .../s1-before-bridge/01-alert-fired.png | Bin .../02-thread-not-created.png | Bin .../03-investigation-missing.png | Bin .../04-conclusion-missing.png | Bin .../s1-before-bridge}/investigation.gif | Bin .../captures/s1-before-bridge/timeline.md | 0 .../captures/s1-before-bridge/timeline.mmd | 0 .../assets/captures/s1/01-alert-fired.png | Bin .../assets/captures/s1/02-thread-created.png | Bin .../assets/captures/s1/03-investigating.png | Bin .../assets/captures/s1/04-investigating.png | Bin .../assets/captures/s1/05-investigating.png | Bin .../assets/captures/s1/06-investigating.png | Bin .../assets/captures/s1/07-conclusion.png | Bin .../assets/captures/s1/investigation.gif | Bin .../event-lab}/assets/captures/s1/timeline.md | 0 .../assets/captures/s1/timeline.mmd | 0 .../assets/captures/s2/01-alert-fired.png | Bin .../assets/captures/s2/02-thread-created.png | Bin .../assets/captures/s2/03-investigating.png | Bin .../assets/captures/s2/04-investigating.png | Bin .../assets/captures/s2/05-investigating.png | Bin .../assets/captures/s2/06-investigating.png | Bin .../assets/captures/s2/07-conclusion.png | Bin .../assets/captures/s2/investigation.gif | Bin .../event-lab}/assets/captures/s2/timeline.md | 0 .../assets/captures/s2/timeline.mmd | 0 .../assets/captures/s3/01-alert-fired.png | Bin .../assets/captures/s3/02-thread-created.png | Bin .../assets/captures/s3/03-investigating.png | Bin .../assets/captures/s3/04-investigating.png | Bin .../assets/captures/s3/05-investigating.png | Bin .../assets/captures/s3/06-investigating.png | Bin .../assets/captures/s3/07-conclusion.png | Bin .../assets/captures/s3/investigation.gif | Bin .../event-lab}/assets/captures/s3/timeline.md | 2 +- .../assets/captures/s3/timeline.mmd | 0 .../assets/notifications/github-issue.json | 0 .../assets/notifications/github-issue.png | Bin .../assets/notifications/s1-email-preview.png | Bin .../assets/notifications/s1-github-issue.md | 2 +- .../notifications/s1-incident-summary.eml | 0 .../notifications/s1-incident-summary.html | 0 .../assets/official/agent-reasoning-flow.svg | 0 .../azure-sre-agent-networking-vnet.png | Bin .../assets/official/custom-skill-flow.svg | 0 .../official/diagnose-azure-services.svg | 0 .../official/incident-platform-flow.svg | 0 .../official/incident-response-flow.svg | 0 .../assets/official/knowledge-sources.svg | 0 .../official/managed-connectors-icon-grid.png | Bin .../assets/official/memory-auto-learning.svg | 0 .../assets/official/memory-unified-search.svg | 0 .../assets/official/notification-paths.svg | 0 .../official/operations-hub-overview-tab.png | Bin .../assets/official/permission-flow.svg | 0 .../official}/portal-complete-setup-page.png | Bin .../portal-incident-response-plans-list.png | Bin .../portal-response-plan-autonomy-step.png | Bin .../official}/portal-setup-status-bar.png | Bin .../official/portal-sub-agent-canvas-full.png | Bin .../assets/official/root-cause-analysis.svg | 0 .../assets/official/run-modes-comparison.svg | 0 .../samples/event-lab}/azure.yaml | 0 .../samples/event-lab}/infra/alerts.bicep | 0 .../samples/event-lab}/infra/lab.bicep | 0 .../samples/event-lab}/infra/main.bicep | 0 .../event-lab}/infra/main.parameters.json | 0 .../event-lab}/infra/observability.bicep | 0 .../infra/tests/test_alerts_bicep.py | 0 .../infra/tests/test_azd_project.py | 7 +- .../infra/tests/test_workload_networking.py | 0 .../samples/event-lab}/infra/workload.bicep | 0 .../samples/event-lab/sample.yml | 14 +++ .../event-lab}/scripts/azd-configure.sh | 0 .../event-lab}/scripts/azd-deploy-app.sh | 0 .../scripts/azd-postprovision-local.sh | 0 .../event-lab}/scripts/capture_agent.py | 0 .../event-lab}/scripts/capture_model.py | 0 .../event-lab}/scripts/cleanup-external.sh | 6 +- .../samples/event-lab}/scripts/common.sh | 2 +- .../scripts/generate_notifications.py | 0 .../samples/event-lab}/scripts/lab-env.sh | 2 +- .../samples/event-lab}/scripts/lab_state.py | 8 +- .../samples/event-lab}/scripts/loadgen.py | 0 .../event-lab}/scripts/query-evidence.sh | 0 .../scripts/render_briefing_assets.py | 0 .../event-lab}/scripts/render_capture.py | 0 .../samples/event-lab}/scripts/score.py | 2 +- .../samples/event-lab}/scripts/setup-venv.sh | 2 +- .../scripts/tests/azd_common_harness.py | 0 .../event-lab}/scripts/tests/azd_fake.py | 0 .../scripts/tests/cleanup_harness.py | 0 .../scripts/tests/deploy_app_harness.py | 0 .../scripts/tests/lab_script_harness.py | 0 .../scripts/tests/published_layout.py | 41 +++++++ .../scripts/tests/test_azd_deploy_app.py | 0 .../event-lab}/scripts/tests/test_azd_env.py | 0 .../scripts/tests/test_azd_hooks.py | 0 .../scripts/tests/test_briefing_assets.py | 0 .../scripts/tests/test_briefing_docs.py | 0 .../scripts/tests/test_capture_agent.py | 0 .../scripts/tests/test_capture_model.py | 0 .../scripts/tests/test_cleanup_external.py | 2 +- .../event-lab}/scripts/tests/test_common.py | 0 .../tests/test_dynamic_threshold_brief.py | 2 +- .../event-lab}/scripts/tests/test_lab_env.py | 0 .../scripts/tests/test_lab_state.py | 22 ++-- .../event-lab}/scripts/tests/test_loadgen.py | 0 .../scripts/tests/test_notifications.py | 0 .../event-lab}/scripts/tests/test_privacy.py | 0 .../scripts/tests/test_query_evidence.py | 0 .../scripts/tests/test_render_capture.py | 0 .../scripts/tests/test_repo_devcontainer.py | 0 .../scripts/tests/test_repo_readme.py | 2 +- .../event-lab}/scripts/tests/test_score.py | 2 +- .../scripts/tests/test_setup_venv.py | 0 .../scenario-blob-permission}/index.md | 9 +- .../scenario-http-500}/index.md | 13 ++- .../scenario-latency}/index.md | 9 +- .../images}/portal-complete-setup-page.png | Bin .../portal-incident-response-plans-list.png | Bin .../portal-response-plan-autonomy-step.png | Bin .../setup/images}/portal-setup-status-bar.png | Bin .../azure-sre-agent/setup}/index.md | 11 +- .../images}/investigation.gif | Bin .../images/s1-investigation.gif | Bin .../images/s2-investigation.gif | Bin .../images/s3-investigation.gif | Bin .../validation-results}/index.md | 25 +++-- .../catch-up-benchmark}/index.md | 8 +- .../hdinsight_monitor_integration_1.png | Bin .../hdinsight-kafka-monitoring}/index.md | 8 +- .../images/kafka-exporter-adv.png | Bin .../images/kafka-exporter-overview.png | Bin .../images/kafka-jmx-broker.png | Bin .../prometheus-grafana}/index.md | 25 +++-- .../samples/deployment/README.md | 4 + .../samples/deployment}/main.bicep | 0 .../samples/deployment}/main.bicepparam | 0 .../samples/deployment}/main.json | 0 .../deployment}/modules/monitoring.bicep | 0 .../samples/deployment/sample.yml | 7 ++ .../samples/monitoring-assets/README.md | 4 + ...t-kafka-dashboard.properties.template.json | 0 .../hdinsight-kafka-workbook.template.json | 0 .../hdinsight_monitor_integration_1.png | Bin .../images/kafka-exporter-adv.png | Bin .../images/kafka-exporter-overview.png | Bin .../images/kafka-jmx-broker.png | Bin .../prometheus-grafana/docker-compose.yml | 0 .../dashboards/kafka-exporter-adv.json | 0 .../grafana/dashboards/kafka-jmx-broker.json | 0 .../provisioning/dashboards/provider.yml | 0 .../provisioning/datasources/prometheus.yml | 0 .../prometheus-grafana/jmx/b0.yml.example | 0 .../prometheus-grafana/jmx/kafka-rules.yml | 0 .../prometheus-grafana/prometheus.yml | 0 .../samples/monitoring-assets/sample.yml | 7 ++ .../images/02-architecture-patterns.svg | 0 .../architecture-patterns}/index.md | 9 +- .../images/05-commerce-blueprint.svg | 0 .../agent-memory/commerce}/index.md | 3 + .../agent-memory/frameworks}/index.md | 7 +- .../microsoft-foundry/agent-memory}/index.md | 33 ++---- .../images/03-memory-pipeline.svg | 0 .../agent-memory/pipeline-retrieval}/index.md | 9 +- .../images/04-production-tiers.svg | 0 .../production-evaluation}/index.md | 7 +- .../samples/research-artifacts/README.md | 4 + .../images/01-memory-taxonomy.svg | 0 .../images/02-architecture-patterns.svg | 0 .../images/03-memory-pipeline.svg | 0 .../images/04-production-tiers.svg | 0 .../images/05-commerce-blueprint.svg | 0 .../samples/research-artifacts/sample.yml | 11 ++ .../taxonomy}/images/01-memory-taxonomy.svg | 0 .../agent-memory/taxonomy}/index.md | 11 +- .../scripts/tests/published_layout.py | 60 ----------- tests/docs/test_public_safety.py | 2 +- tests/docs/test_topics.py | 102 +++++++++++++++++- 268 files changed, 441 insertions(+), 217 deletions(-) rename docs/{research/azure-ai-search/a10-vs-t4-embedding-benchmark => services/azure-ai-search/custom-vectorization/a10-vs-t4}/index.md (97%) rename docs/{research/azure-ai-search/bge-m3-vs-qwen3-embedding => services/azure-ai-search/custom-vectorization/bge-m3-vs-qwen3}/index.md (99%) rename docs/{guides/azure-ai-search/custom-web-api-vectorization => services/azure-ai-search/custom-vectorization/custom-web-api}/images/architecture.png (100%) rename docs/{guides/azure-ai-search/custom-web-api-vectorization => services/azure-ai-search/custom-vectorization/custom-web-api}/index.md (97%) rename docs/{guides/azure-ai-search/gpu-vllm-rag => services/azure-ai-search/custom-vectorization/gpu-vllm}/images/gpu_vllm_rag_architecture.png (100%) rename docs/{guides/azure-ai-search/gpu-vllm-rag => services/azure-ai-search/custom-vectorization/gpu-vllm}/index.md (96%) rename docs/{guides/azure-ai-search/custom-embedding-ingestion => services/azure-ai-search/custom-vectorization}/images/indexer_vs_pushapi.png (100%) rename docs/{guides/azure-ai-search/custom-embedding-ingestion => services/azure-ai-search/custom-vectorization}/index.md (98%) rename docs/{research/azure-ai-search/rag-chunking-strategies => services/azure-ai-search/custom-vectorization/rag-chunking}/index.md (99%) create mode 100644 docs/services/azure-ai-search/custom-vectorization/samples/implementation/README.md rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/Dockerfile (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/bench_embed_gpu.py (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/bench_qps_sweep.py (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/bench_runner.py (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/k8s/configmap.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/k8s/job-bench-concurrency.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/k8s/job-bench-indexer.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/k8s/job-bench-push.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/bench/requirements.txt (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/embedding-api/Dockerfile (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/embedding-api/app.py (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/embedding-api/requirements.txt (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/images/architecture.excalidraw (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/images/architecture.png (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/images/architecture_lite.png (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/images/gpu_vllm_rag_architecture.excalidraw (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/images/gpu_vllm_rag_architecture.png (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/images/indexer_vs_pushapi.png (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/indexer_vs_pushapi.excalidraw (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/k8s/cluster-issuer.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/k8s/deployment.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/k8s/ingress.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/reranker-adapter/Dockerfile (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/reranker-adapter/app.py (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/reranker-adapter/requirements.txt (100%) create mode 100644 docs/services/azure-ai-search/custom-vectorization/samples/implementation/sample.yml rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/tei-adapter/Dockerfile (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/tei-adapter/app.py (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/tei-adapter/k8s/deployment.yaml (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/tei-adapter/requirements.txt (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/vllm-adapter/Dockerfile (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/vllm-adapter/app.py (100%) rename {samples/azure-ai-search/source-material/custom_vectorization => docs/services/azure-ai-search/custom-vectorization/samples/implementation}/vllm-adapter/requirements.txt (100%) rename docs/{guides/azure-monitor/sre-agent-dynamic-thresholds => services/azure-monitor/azure-sre-agent/dynamic-thresholds}/index.md (97%) rename docs/{labs/azure-monitor/sre-agent-event-lab => services/azure-monitor/azure-sre-agent/event-lab}/index.md (92%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/agent-reasoning-flow.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/azure-sre-agent-networking-vnet.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/custom-skill-flow.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/diagnose-azure-services.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/github-issue.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/incident-platform-flow.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/incident-response-flow.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/knowledge-sources.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/managed-connectors-icon-grid.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/memory-auto-learning.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/memory-unified-search.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/notification-paths.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/operations-hub-overview-tab.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/permission-flow.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/portal-sub-agent-canvas-full.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/root-cause-analysis.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/run-modes-comparison.svg (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/s1-agent-conclusion.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/s1-email-preview.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/s1-three-panel.png (100%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/images/sre-agent-process.png (100%) rename docs/{guides/azure-monitor/sre-agent-incident-runbook => services/azure-monitor/azure-sre-agent/incident-runbook}/index.md (98%) rename docs/{guides/azure-monitor/azure-sre-agent-overview => services/azure-monitor/azure-sre-agent}/index.md (97%) rename docs/{labs/azure-monitor/sre-agent-results => services/azure-monitor/azure-sre-agent/results}/index.md (95%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/.env.example (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/.gitignore (100%) create mode 100644 docs/services/azure-monitor/azure-sre-agent/samples/event-lab/README.md rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/.dockerignore (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/Dockerfile (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/main.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/requirements-dev.txt (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/requirements.txt (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/telemetry.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/tests/conftest.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/tests/test_main.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/app/tests/test_telemetry.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/briefing/s1-agent-conclusion.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/briefing/s1-three-panel.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/briefing/s1-three-panel.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/briefing/sre-agent-process.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/briefing/sre-agent-process.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1-before-bridge/01-alert-fired.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1-before-bridge/02-thread-not-created.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1-before-bridge/03-investigation-missing.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1-before-bridge/04-conclusion-missing.png (100%) rename docs/{research/azure-monitor/sre-agent-validation-results/images => services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge}/investigation.gif (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1-before-bridge/timeline.md (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1-before-bridge/timeline.mmd (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/01-alert-fired.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/02-thread-created.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/03-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/04-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/05-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/06-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/07-conclusion.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/investigation.gif (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/timeline.md (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s1/timeline.mmd (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/01-alert-fired.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/02-thread-created.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/03-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/04-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/05-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/06-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/07-conclusion.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/investigation.gif (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/timeline.md (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s2/timeline.mmd (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/01-alert-fired.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/02-thread-created.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/03-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/04-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/05-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/06-investigating.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/07-conclusion.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/investigation.gif (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/timeline.md (98%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/captures/s3/timeline.mmd (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/notifications/github-issue.json (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/notifications/github-issue.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/notifications/s1-email-preview.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/notifications/s1-github-issue.md (92%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/notifications/s1-incident-summary.eml (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/notifications/s1-incident-summary.html (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/agent-reasoning-flow.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/azure-sre-agent-networking-vnet.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/custom-skill-flow.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/diagnose-azure-services.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/incident-platform-flow.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/incident-response-flow.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/knowledge-sources.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/managed-connectors-icon-grid.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/memory-auto-learning.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/memory-unified-search.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/notification-paths.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/operations-hub-overview-tab.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/permission-flow.svg (100%) rename docs/{labs/azure-monitor/sre-agent-event-lab-setup/images => services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official}/portal-complete-setup-page.png (100%) rename docs/{labs/azure-monitor/sre-agent-event-lab-setup/images => services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official}/portal-incident-response-plans-list.png (100%) rename docs/{labs/azure-monitor/sre-agent-event-lab-setup/images => services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official}/portal-response-plan-autonomy-step.png (100%) rename docs/{labs/azure-monitor/sre-agent-event-lab-setup/images => services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official}/portal-setup-status-bar.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/portal-sub-agent-canvas-full.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/root-cause-analysis.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/assets/official/run-modes-comparison.svg (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/azure.yaml (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/alerts.bicep (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/lab.bicep (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/main.bicep (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/main.parameters.json (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/observability.bicep (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/tests/test_alerts_bicep.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/tests/test_azd_project.py (99%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/tests/test_workload_networking.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/infra/workload.bicep (100%) create mode 100644 docs/services/azure-monitor/azure-sre-agent/samples/event-lab/sample.yml rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/azd-configure.sh (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/azd-deploy-app.sh (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/azd-postprovision-local.sh (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/capture_agent.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/capture_model.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/cleanup-external.sh (97%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/common.sh (99%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/generate_notifications.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/lab-env.sh (99%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/lab_state.py (99%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/loadgen.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/query-evidence.sh (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/render_briefing_assets.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/render_capture.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/score.py (99%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/setup-venv.sh (98%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/azd_common_harness.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/azd_fake.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/cleanup_harness.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/deploy_app_harness.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/lab_script_harness.py (100%) create mode 100644 docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/published_layout.py rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_azd_deploy_app.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_azd_env.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_azd_hooks.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_briefing_assets.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_briefing_docs.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_capture_agent.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_capture_model.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_cleanup_external.py (99%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_common.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_dynamic_threshold_brief.py (98%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_lab_env.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_lab_state.py (98%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_loadgen.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_notifications.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_privacy.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_query_evidence.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_render_capture.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_repo_devcontainer.py (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_repo_readme.py (89%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_score.py (99%) rename {samples/azure-monitor/source-material/sre-agent-event-lab => docs/services/azure-monitor/azure-sre-agent/samples/event-lab}/scripts/tests/test_setup_venv.py (100%) rename docs/{labs/azure-monitor/sre-agent-scenario-blob-permission => services/azure-monitor/azure-sre-agent/scenario-blob-permission}/index.md (97%) rename docs/{labs/azure-monitor/sre-agent-scenario-http-500 => services/azure-monitor/azure-sre-agent/scenario-http-500}/index.md (95%) rename docs/{labs/azure-monitor/sre-agent-scenario-latency => services/azure-monitor/azure-sre-agent/scenario-latency}/index.md (97%) rename {samples/azure-monitor/source-material/sre-agent-event-lab/assets/official => docs/services/azure-monitor/azure-sre-agent/setup/images}/portal-complete-setup-page.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab/assets/official => docs/services/azure-monitor/azure-sre-agent/setup/images}/portal-incident-response-plans-list.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab/assets/official => docs/services/azure-monitor/azure-sre-agent/setup/images}/portal-response-plan-autonomy-step.png (100%) rename {samples/azure-monitor/source-material/sre-agent-event-lab/assets/official => docs/services/azure-monitor/azure-sre-agent/setup/images}/portal-setup-status-bar.png (100%) rename docs/{labs/azure-monitor/sre-agent-event-lab-setup => services/azure-monitor/azure-sre-agent/setup}/index.md (96%) rename {samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge => docs/services/azure-monitor/azure-sre-agent/validation-results/images}/investigation.gif (100%) rename docs/{research/azure-monitor/sre-agent-validation-results => services/azure-monitor/azure-sre-agent/validation-results}/images/s1-investigation.gif (100%) rename docs/{research/azure-monitor/sre-agent-validation-results => services/azure-monitor/azure-sre-agent/validation-results}/images/s2-investigation.gif (100%) rename docs/{research/azure-monitor/sre-agent-validation-results => services/azure-monitor/azure-sre-agent/validation-results}/images/s3-investigation.gif (100%) rename docs/{research/azure-monitor/sre-agent-validation-results => services/azure-monitor/azure-sre-agent/validation-results}/index.md (92%) rename docs/{research/azure-hdinsight/kafka-catchup-sku-fetch-benchmark => services/azure-monitor/hdinsight-kafka-monitoring/catch-up-benchmark}/index.md (98%) rename docs/{research/azure-monitor/hdinsight-kafka-monitoring-options => services/azure-monitor/hdinsight-kafka-monitoring}/images/hdinsight_monitor_integration_1.png (100%) rename docs/{research/azure-monitor/hdinsight-kafka-monitoring-options => services/azure-monitor/hdinsight-kafka-monitoring}/index.md (98%) rename docs/{guides/azure-monitor/hdinsight-kafka-prometheus-grafana => services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana}/images/kafka-exporter-adv.png (100%) rename docs/{guides/azure-monitor/hdinsight-kafka-prometheus-grafana => services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana}/images/kafka-exporter-overview.png (100%) rename docs/{guides/azure-monitor/hdinsight-kafka-prometheus-grafana => services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana}/images/kafka-jmx-broker.png (100%) rename docs/{guides/azure-monitor/hdinsight-kafka-prometheus-grafana => services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana}/index.md (84%) create mode 100644 docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/README.md rename {samples/infrastructure/bicep => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment}/main.bicep (100%) rename {samples/infrastructure/bicep => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment}/main.bicepparam (100%) rename {samples/infrastructure/bicep => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment}/main.json (100%) rename {samples/infrastructure/bicep => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment}/modules/monitoring.bicep (100%) create mode 100644 docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/sample.yml create mode 100644 docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/README.md rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/hdinsight-kafka-dashboard.properties.template.json (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/hdinsight-kafka-workbook.template.json (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/images/hdinsight_monitor_integration_1.png (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/images/kafka-exporter-adv.png (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/images/kafka-exporter-overview.png (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/images/kafka-jmx-broker.png (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/docker-compose.yml (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/grafana/dashboards/kafka-exporter-adv.json (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/grafana/dashboards/kafka-jmx-broker.json (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/grafana/provisioning/dashboards/provider.yml (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/grafana/provisioning/datasources/prometheus.yml (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/jmx/b0.yml.example (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/jmx/kafka-rules.yml (100%) rename {samples/azure-monitor/source-material/assets => docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets}/prometheus-grafana/prometheus.yml (100%) create mode 100644 docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/sample.yml rename docs/{research/microsoft-foundry/agent-memory-architecture-patterns => services/microsoft-foundry/agent-memory/architecture-patterns}/images/02-architecture-patterns.svg (100%) rename docs/{research/microsoft-foundry/agent-memory-architecture-patterns => services/microsoft-foundry/agent-memory/architecture-patterns}/index.md (96%) rename docs/{research/microsoft-foundry/agent-memory-commerce => services/microsoft-foundry/agent-memory/commerce}/images/05-commerce-blueprint.svg (100%) rename docs/{research/microsoft-foundry/agent-memory-commerce => services/microsoft-foundry/agent-memory/commerce}/index.md (99%) rename docs/{research/microsoft-foundry/agent-memory-frameworks => services/microsoft-foundry/agent-memory/frameworks}/index.md (98%) rename docs/{research/microsoft-foundry/agent-memory-overview => services/microsoft-foundry/agent-memory}/index.md (70%) rename docs/{research/microsoft-foundry/agent-memory-pipeline-retrieval => services/microsoft-foundry/agent-memory/pipeline-retrieval}/images/03-memory-pipeline.svg (100%) rename docs/{research/microsoft-foundry/agent-memory-pipeline-retrieval => services/microsoft-foundry/agent-memory/pipeline-retrieval}/index.md (97%) rename docs/{research/microsoft-foundry/agent-memory-production-evaluation => services/microsoft-foundry/agent-memory/production-evaluation}/images/04-production-tiers.svg (100%) rename docs/{research/microsoft-foundry/agent-memory-production-evaluation => services/microsoft-foundry/agent-memory/production-evaluation}/index.md (97%) create mode 100644 docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md rename docs/{research/microsoft-foundry/agent-memory-taxonomy => services/microsoft-foundry/agent-memory/samples/research-artifacts}/images/01-memory-taxonomy.svg (100%) rename {samples/microsoft-foundry/memory-artifacts/agent-memory => docs/services/microsoft-foundry/agent-memory/samples/research-artifacts}/images/02-architecture-patterns.svg (100%) rename {samples/microsoft-foundry/memory-artifacts/agent-memory => docs/services/microsoft-foundry/agent-memory/samples/research-artifacts}/images/03-memory-pipeline.svg (100%) rename {samples/microsoft-foundry/memory-artifacts/agent-memory => docs/services/microsoft-foundry/agent-memory/samples/research-artifacts}/images/04-production-tiers.svg (100%) rename {samples/microsoft-foundry/memory-artifacts/agent-memory => docs/services/microsoft-foundry/agent-memory/samples/research-artifacts}/images/05-commerce-blueprint.svg (100%) create mode 100644 docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/sample.yml rename {samples/microsoft-foundry/memory-artifacts/agent-memory => docs/services/microsoft-foundry/agent-memory/taxonomy}/images/01-memory-taxonomy.svg (100%) rename docs/{research/microsoft-foundry/agent-memory-taxonomy => services/microsoft-foundry/agent-memory/taxonomy}/index.md (96%) delete mode 100644 samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/published_layout.py diff --git a/.gitignore b/.gitignore index 9b02242..e4f5233 100644 --- a/.gitignore +++ b/.gitignore @@ -15,6 +15,6 @@ __pycache__/ site/ .worktrees/ .superpowers/ -samples/azure-monitor/source-material/sre-agent-event-lab/evidence/ +docs/services/azure-monitor/azure-sre-agent/samples/event-lab/evidence/ /project/plans/2026-09-12-public-github-pages.md /project/specs/2026-09-12-public-github-pages-design.md diff --git a/docs/research/azure-ai-search/a10-vs-t4-embedding-benchmark/index.md b/docs/services/azure-ai-search/custom-vectorization/a10-vs-t4/index.md similarity index 97% rename from docs/research/azure-ai-search/a10-vs-t4-embedding-benchmark/index.md rename to docs/services/azure-ai-search/custom-vectorization/a10-vs-t4/index.md index 320847a..5c0f5cd 100644 --- a/docs/research/azure-ai-search/a10-vs-t4-embedding-benchmark/index.md +++ b/docs/services/azure-ai-search/custom-vectorization/a10-vs-t4/index.md @@ -17,13 +17,16 @@ tags: - benchmarking - performance published_at: 2026-07-23 +topic_order: 5 +redirect_from: +- research/azure-ai-search/a10-vs-t4-embedding-benchmark/index.md --- # A10 vs T4 임베딩 추론 벤치마크: BGE-m3-ko + TEI (Azure Spot VM) **AI Search + Agent 구성(Indexer 미사용, Push API)에서 TEI로 서빙한 dragonkue/BGE-m3-ko의 추론 성능을 A10·T4에서 실측 비교** -> 관련 문서: [GPU vLLM RAG 가이드](../../../guides/azure-ai-search/gpu-vllm-rag/index.md) | [Custom 임베딩 적재 가이드](../../../guides/azure-ai-search/custom-embedding-ingestion/index.md) | [BGE-M3 vs Qwen3 품질 비교](../bge-m3-vs-qwen3-embedding/index.md) +> 관련 문서: [GPU vLLM RAG 가이드](../gpu-vllm/index.md) | [Custom 임베딩 적재 가이드](../index.md) | [BGE-M3 vs Qwen3 품질 비교](../bge-m3-vs-qwen3/index.md) > > 작성일: 2026-07-22 @@ -66,7 +69,7 @@ published_at: 2026-07-23 - NVadsA10v5 시리즈 중 **full-GPU 프로필(NV36ads, A10-24Q 24GB 단독 점유)** 사용. NV6/12/18ads는 GPU fractional 파티션(1/6~1/2) — 본 결과 적용 불가 - T4는 TEI **Turing 전용 이미지(`turing-1.8`) 필수**. Turing은 TEI [experimental 지원](https://github.com/huggingface/text-embeddings-inference#docker-images), Flash Attention 기본 비활성화 - NVIDIA 드라이버는 Azure VM extension `NvidiaGpuDriverLinux`(Microsoft.HpcCompute)로 설치 — GRID/CUDA 자동 판별. A10은 GRID 드라이버 필수 (수동 CUDA 드라이버 설치 시 vGPU 라이선스 실패) -- 실행 스크립트: [bench/](https://github.com/hellices/devguidesample/tree/main/samples/azure-ai-search/source-material/custom_vectorization/bench) +- 실행 스크립트: [bench/](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench) > ⚠️ **vCPU 격차(4 vs 36)의 결과 왜곡 여부 교차검증 완료.** T4 VM을 NC16as_T4_v3(16 vCPU)로 리사이즈 후 동일 벤치마크 5라운드 재실행: > - 500자 최대 처리량 61.0 texts/s (4 vCPU: 61.3) / 1,000자 22.6 (4 vCPU: 23.4) / 단건 5.86ms (4 vCPU: 5.59ms) — **vCPU 4배 증가에도 측정 오차(±3%) 이내** @@ -244,7 +247,7 @@ Indexer 미사용 구성의 임베딩 호출 경로 2종: ### 쿼리 트래픽 증가 시 증설 기준 — QPS 스윕 실측 -T4 1대(NC4as_T4_v3, TEI turing-1.8, BGE-m3-ko)에 오픈루프 고정 도착률로 단건 쿼리(~40자)를 주입하며 포화 지점을 실측 (30s/단계, 3라운드 스윕 — [bench_qps_sweep.py](https://github.com/hellices/devguidesample/blob/main/samples/azure-ai-search/source-material/custom_vectorization/bench/bench_qps_sweep.py)): +T4 1대(NC4as_T4_v3, TEI turing-1.8, BGE-m3-ko)에 오픈루프 고정 도착률로 단건 쿼리(~40자)를 주입하며 포화 지점을 실측 (30s/단계, 3라운드 스윕 — [bench_qps_sweep.py](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_qps_sweep.py)): | 도착률 (QPS) | p50 | p95 | p99 | GPU util | 판정 | |-------------|-----|-----|-----|----------|------| diff --git a/docs/research/azure-ai-search/bge-m3-vs-qwen3-embedding/index.md b/docs/services/azure-ai-search/custom-vectorization/bge-m3-vs-qwen3/index.md similarity index 99% rename from docs/research/azure-ai-search/bge-m3-vs-qwen3-embedding/index.md rename to docs/services/azure-ai-search/custom-vectorization/bge-m3-vs-qwen3/index.md index bd20a93..7b2e221 100644 --- a/docs/research/azure-ai-search/bge-m3-vs-qwen3-embedding/index.md +++ b/docs/services/azure-ai-search/custom-vectorization/bge-m3-vs-qwen3/index.md @@ -17,6 +17,9 @@ tags: - benchmarking - performance published_at: 2026-05-22 +topic_order: 4 +redirect_from: +- research/azure-ai-search/bge-m3-vs-qwen3-embedding/index.md --- # BGE-M3 vs Qwen3-Embedding-0.6B 벡터 검색 품질 비교 diff --git a/docs/guides/azure-ai-search/custom-web-api-vectorization/images/architecture.png b/docs/services/azure-ai-search/custom-vectorization/custom-web-api/images/architecture.png similarity index 100% rename from docs/guides/azure-ai-search/custom-web-api-vectorization/images/architecture.png rename to docs/services/azure-ai-search/custom-vectorization/custom-web-api/images/architecture.png diff --git a/docs/guides/azure-ai-search/custom-web-api-vectorization/index.md b/docs/services/azure-ai-search/custom-vectorization/custom-web-api/index.md similarity index 97% rename from docs/guides/azure-ai-search/custom-web-api-vectorization/index.md rename to docs/services/azure-ai-search/custom-vectorization/custom-web-api/index.md index 8a9d486..cec6a93 100644 --- a/docs/guides/azure-ai-search/custom-web-api-vectorization/index.md +++ b/docs/services/azure-ai-search/custom-vectorization/custom-web-api/index.md @@ -21,6 +21,9 @@ technologies: tags: - deployment - architecture +topic_order: 2 +redirect_from: +- guides/azure-ai-search/custom-web-api-vectorization/index.md --- # Azure AI Search Custom Web API를 활용한 외부 임베딩 모델 통합 벡터화 가이드 @@ -37,7 +40,7 @@ tags: | 검증 모델 | [BAAI/bge-m3](https://huggingface.co/BAAI/bge-m3), [Qwen/Qwen3-Embedding-0.6B](https://huggingface.co/Qwen/Qwen3-Embedding-0.6B) | | 호스팅 | FastAPI 서버를 Container Apps (TLS 자동) 또는 AKS + cert-manager (Let's Encrypt)로 HTTPS 노출 | | 핵심 검증 | Custom Web API Skill(인덱싱) + Custom Web API Vectorizer(쿼리) 동작 확인 | -| 모델 비교 | [BGE-M3 vs Qwen3-Embedding-0.6B](../../../research/azure-ai-search/bge-m3-vs-qwen3-embedding/index.md) | +| 모델 비교 | [BGE-M3 vs Qwen3-Embedding-0.6B](../bge-m3-vs-qwen3/index.md) | | 인덱서 결과 | 5건 처리 / 0건 실패 | --- @@ -820,7 +823,7 @@ curl -X POST "$SEARCH_URL/indexes/sample-chunk-idx/docs/search?api-version=2024- ### sentence-transformers → TEI 전환 시 차이 -TEI가 sentence-transformers보다 유리한 구조적 이유(dynamic batching, Rust 네이티브 동시성, GPU 최적화)는 [Custom 임베딩 적재 가이드 — 서빙 엔진 비교](../custom-embedding-ingestion/index.md#3-gpu-tei-vs-vllm) 참고. 아래는 이 가이드(CPU 기본 구성) 기준의 실용적 차이: +TEI가 sentence-transformers보다 유리한 구조적 이유(dynamic batching, Rust 네이티브 동시성, GPU 최적화)는 [Custom 임베딩 적재 가이드 — 서빙 엔진 비교](../index.md#3-gpu-tei-vs-vllm) 참고. 아래는 이 가이드(CPU 기본 구성) 기준의 실용적 차이: | | sentence-transformers (현재) | TEI | |---|---|---| @@ -923,10 +926,10 @@ Ingress의 backend 서비스를 `bge-m3-embedding`으로 되돌리면 즉시 sen --- ## 📋 관련 문서 -- [GPU vLLM RAG 가이드](../gpu-vllm-rag/index.md) — T4 GPU에서 vLLM + Push API 대량 적재 + 하이브리드 검색 -- [BGE-M3 vs Qwen3-Embedding-0.6B 비교](../../../research/azure-ai-search/bge-m3-vs-qwen3-embedding/index.md) — 동일 파이프라인에서의 검색 품질 비교 결과 -- [Custom 임베딩 적재 가이드](../custom-embedding-ingestion/index.md) — SKU 선택부터 서빙 엔진까지 의사결정 가이드 -- [청킹 전략 리서치](../../../research/azure-ai-search/rag-chunking-strategies/index.md) — 7가지 최신 RAG 청킹 전략 비교 분석 +- [GPU vLLM RAG 가이드](../gpu-vllm/index.md) — T4 GPU에서 vLLM + Push API 대량 적재 + 하이브리드 검색 +- [BGE-M3 vs Qwen3-Embedding-0.6B 비교](../bge-m3-vs-qwen3/index.md) — 동일 파이프라인에서의 검색 품질 비교 결과 +- [Custom 임베딩 적재 가이드](../index.md) — SKU 선택부터 서빙 엔진까지 의사결정 가이드 +- [청킹 전략 리서치](../rag-chunking/index.md) — 7가지 최신 RAG 청킹 전략 비교 분석 ## 📋 참고 diff --git a/docs/guides/azure-ai-search/gpu-vllm-rag/images/gpu_vllm_rag_architecture.png b/docs/services/azure-ai-search/custom-vectorization/gpu-vllm/images/gpu_vllm_rag_architecture.png similarity index 100% rename from docs/guides/azure-ai-search/gpu-vllm-rag/images/gpu_vllm_rag_architecture.png rename to docs/services/azure-ai-search/custom-vectorization/gpu-vllm/images/gpu_vllm_rag_architecture.png diff --git a/docs/guides/azure-ai-search/gpu-vllm-rag/index.md b/docs/services/azure-ai-search/custom-vectorization/gpu-vllm/index.md similarity index 96% rename from docs/guides/azure-ai-search/gpu-vllm-rag/index.md rename to docs/services/azure-ai-search/custom-vectorization/gpu-vllm/index.md index 5333685..2776de2 100644 --- a/docs/guides/azure-ai-search/gpu-vllm-rag/index.md +++ b/docs/services/azure-ai-search/custom-vectorization/gpu-vllm/index.md @@ -22,13 +22,16 @@ tags: - performance - deployment - architecture +topic_order: 3 +redirect_from: +- guides/azure-ai-search/gpu-vllm-rag/index.md --- # GPU vLLM RAG 가이드: Push API 대량 적재 + 실시간 하이브리드 검색 **T4 GPU에서 vLLM 임베딩 + PIC 청킹을 통합 서빙하고, Push API로 대량 적재 + Custom Vectorizer로 실시간 하이브리드 검색을 수행하는 구성 가이드** -> 관련 문서: [기본 가이드 (CPU, Indexer)](../custom-web-api-vectorization/index.md) | [Custom 임베딩 적재 가이드](../custom-embedding-ingestion/index.md) | [청킹 전략 리서치](../../../research/azure-ai-search/rag-chunking-strategies/index.md) +> 관련 문서: [기본 가이드 (CPU, Indexer)](../custom-web-api/index.md) | [Custom 임베딩 적재 가이드](../index.md) | [청킹 전략 리서치](../rag-chunking/index.md) > > 작성일: 2026-05-22 @@ -151,7 +154,7 @@ curl -X PUT "$SEARCH_URL/indexes/prod-chunk-idx?api-version=2024-07-01" \ ## 2. Push API 파이프라인 -인덱서 대신 Push API로 적재한다. 인덱서의 구조적 한계(deg≤10, 순차 배치, 공용 2h/전용 24h 제한)를 우회하여 GPU 활용률을 극대화한다. ([상세 비교](../custom-embedding-ingestion/index.md)) +인덱서 대신 Push API로 적재한다. 인덱서의 구조적 한계(deg≤10, 순차 배치, 공용 2h/전용 24h 제한)를 우회하여 GPU 활용률을 극대화한다. ([상세 비교](../index.md)) 파이프라인 흐름: **데이터 소스 → PIC 청킹(vLLM-chunk) → 임베딩(vLLM-embed) → Push API(AI Search)** @@ -160,7 +163,7 @@ curl -X PUT "$SEARCH_URL/indexes/prod-chunk-idx?api-version=2024-07-01" \ - 적재: Push API 배치 제한 (요청당 최대 1000건 또는 16MB) - Fallback: PIC 실패 시 원본 텍스트를 단일 청크로 적재 -> Indexer vs Push API의 개념적 비교와 하이브리드 운영 패턴은 [Custom 임베딩 적재 가이드 — 적재 방식](../custom-embedding-ingestion/index.md#2-indexer-vs-push-api) 참고. 실측치(T4 Spot 3대, vLLM 3 replica): 500 docs 적재 147.9s (embed 37.71 c/s). 상세 결과는 [Appendix B](#appendix-b) 참고. +> Indexer vs Push API의 개념적 비교와 하이브리드 운영 패턴은 [Custom 임베딩 적재 가이드 — 적재 방식](../index.md#2-indexer-vs-push-api) 참고. 실측치(T4 Spot 3대, vLLM 3 replica): 500 docs 적재 147.9s (embed 37.71 c/s). 상세 결과는 [Appendix B](#appendix-b) 참고. --- @@ -586,9 +589,9 @@ curl localhost:8081/metrics | grep -E "vllm:(num_requests|gpu_cache)" - [vLLM Embedding Models](https://docs.vllm.ai/en/latest/models/pooling_models.html) - [Qwen3-Embedding 모델 라인업](https://huggingface.co/collections/Qwen/qwen3-embedding-67e5253e22bb421b4fa0ed10) - [PIC — Pseudo-Instruction Chunking](https://aclanthology.org/2025.findings-acl.422/) (ACL-Findings 2025) -- [기본 가이드 (CPU, Indexer)](../custom-web-api-vectorization/index.md) -- [Custom 임베딩 적재 가이드](../custom-embedding-ingestion/index.md) -- [청킹 전략 리서치](../../../research/azure-ai-search/rag-chunking-strategies/index.md) +- [기본 가이드 (CPU, Indexer)](../custom-web-api/index.md) +- [Custom 임베딩 적재 가이드](../index.md) +- [청킹 전략 리서치](../rag-chunking/index.md) --- @@ -602,13 +605,13 @@ curl localhost:8081/metrics | grep -E "vllm:(num_requests|gpu_cache)" | vLLM + BGE-M3 | 0.57B 모델에서 PyTorch overhead가 크다 (23.85 c/s) | | TEI + BGE-M3 | **51.11 c/s로 가장 빠르지만**, MTEB 성능이 Qwen3-4B 대비 낮아 품질·속도 트레이드오프 | | vLLM + Qwen3-Embedding-8B | 8B(16GB)이면 T4 VRAM 전체를 소비, 청킹 LLM 공간 없음 | -| sentence-transformers | 서버 레벨 dynamic batching 미지원, Python 단일 프로세스 동시성 제한 ([상세](../custom-embedding-ingestion/index.md)) | +| sentence-transformers | 서버 레벨 dynamic batching 미지원, Python 단일 프로세스 동시성 제한 ([상세](../index.md)) | vLLM은 PyTorch 기반이라 **Qwen3 아키텍처를 HuggingFace 가중치에서 직접 로딩** 가능하다. TEI(Rust/candle)는 모델별 커널을 별도 구현해야 하므로 신규 아키텍처 지원이 늦다. 단, BERT 계열(BGE-M3)에서는 TEI가 2.1배 빠르다 ([Appendix B](#appendix-b) 참고). ### 청킹: PIC (Pseudo-Instruction Chunking) -[청킹 전략 리서치](../../../research/azure-ai-search/rag-chunking-strategies/index.md)에서 분석한 7가지 전략 중 PIC를 선택한 이유: +[청킹 전략 리서치](../rag-chunking/index.md)에서 분석한 7가지 전략 중 PIC를 선택한 이유: | 전략 | LLM 호출 | GPU 적합도 | 검색 품질 | 인덱싱 속도 | 선택 | |------|---------|-----------|----------|-----------|------| diff --git a/docs/guides/azure-ai-search/custom-embedding-ingestion/images/indexer_vs_pushapi.png b/docs/services/azure-ai-search/custom-vectorization/images/indexer_vs_pushapi.png similarity index 100% rename from docs/guides/azure-ai-search/custom-embedding-ingestion/images/indexer_vs_pushapi.png rename to docs/services/azure-ai-search/custom-vectorization/images/indexer_vs_pushapi.png diff --git a/docs/guides/azure-ai-search/custom-embedding-ingestion/index.md b/docs/services/azure-ai-search/custom-vectorization/index.md similarity index 98% rename from docs/guides/azure-ai-search/custom-embedding-ingestion/index.md rename to docs/services/azure-ai-search/custom-vectorization/index.md index a596958..eb8354e 100644 --- a/docs/guides/azure-ai-search/custom-embedding-ingestion/index.md +++ b/docs/services/azure-ai-search/custom-vectorization/index.md @@ -21,13 +21,15 @@ tags: - architecture - performance - deployment +redirect_from: +- guides/azure-ai-search/custom-embedding-ingestion/index.md --- # Custom 임베딩 적재 가이드: SKU 선택부터 서빙 엔진까지 **Azure AI Search에 벡터를 적재하는 두 가지 경로(Indexer Pull vs Push API)와, GPU 임베딩 서빙 엔진(TEI vs vLLM) 선택 기준** -> 관련 문서: [기본 가이드 (CPU, Indexer)](../custom-web-api-vectorization/index.md) | [GPU vLLM RAG 가이드](../gpu-vllm-rag/index.md) | [청킹 전략 리서치](../../../research/azure-ai-search/rag-chunking-strategies/index.md) +> 관련 문서: [기본 가이드 (CPU, Indexer)](custom-web-api/index.md) | [GPU vLLM RAG 가이드](gpu-vllm/index.md) | [청킹 전략 리서치](rag-chunking/index.md) > > 작성일: 2026-05-22 @@ -293,7 +295,7 @@ TEI / vLLM (추론 서버) (어댑터 필요: 쿼리 시점) ``` -> 어댑터 구현 예시: [tei-adapter](https://github.com/hellices/devguidesample/tree/main/samples/azure-ai-search/source-material/custom_vectorization/tei-adapter) 디렉토리 참고 +> 어댑터 구현 예시: [tei-adapter](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter) 디렉토리 참고 --- diff --git a/docs/research/azure-ai-search/rag-chunking-strategies/index.md b/docs/services/azure-ai-search/custom-vectorization/rag-chunking/index.md similarity index 99% rename from docs/research/azure-ai-search/rag-chunking-strategies/index.md rename to docs/services/azure-ai-search/custom-vectorization/rag-chunking/index.md index 84ad2b9..34618ca 100644 --- a/docs/research/azure-ai-search/rag-chunking-strategies/index.md +++ b/docs/services/azure-ai-search/custom-vectorization/rag-chunking/index.md @@ -16,13 +16,16 @@ tags: - architecture - performance published_at: 2026-05-22 +topic_order: 1 +redirect_from: +- research/azure-ai-search/rag-chunking-strategies/index.md --- # RAG Chunking 전략 리서치 보고서 **Azure AI Search Custom Web API 파이프라인에서 활용 가능한 최신 Chunking 전략, 프레임워크, 논문 정리** -> 작성일: 2026-05-22 | 관련 문서: [Custom Web API 벡터화 가이드](../../../guides/azure-ai-search/custom-web-api-vectorization/index.md) +> 작성일: 2026-05-22 | 관련 문서: [Custom Web API 벡터화 가이드](../custom-web-api/index.md) --- diff --git a/docs/services/azure-ai-search/custom-vectorization/samples/implementation/README.md b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/README.md new file mode 100644 index 0000000..fab11c4 --- /dev/null +++ b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/README.md @@ -0,0 +1,5 @@ +# Custom vectorization implementation + +This runnable sample contains the embedding and reranker adapters, benchmark +scripts, Kubernetes manifests, and architecture source files used by the custom +vectorization topic. diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/Dockerfile b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/Dockerfile similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/Dockerfile rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/Dockerfile diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/bench_embed_gpu.py b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_embed_gpu.py similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/bench_embed_gpu.py rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_embed_gpu.py diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/bench_qps_sweep.py b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_qps_sweep.py similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/bench_qps_sweep.py rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_qps_sweep.py diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/bench_runner.py b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_runner.py similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/bench_runner.py rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_runner.py diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/configmap.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/configmap.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/configmap.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/configmap.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/job-bench-concurrency.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/job-bench-concurrency.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/job-bench-concurrency.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/job-bench-concurrency.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/job-bench-indexer.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/job-bench-indexer.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/job-bench-indexer.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/job-bench-indexer.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/job-bench-push.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/job-bench-push.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/k8s/job-bench-push.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/k8s/job-bench-push.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/bench/requirements.txt b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/requirements.txt similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/bench/requirements.txt rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/requirements.txt diff --git a/samples/azure-ai-search/source-material/custom_vectorization/embedding-api/Dockerfile b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/embedding-api/Dockerfile similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/embedding-api/Dockerfile rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/embedding-api/Dockerfile diff --git a/samples/azure-ai-search/source-material/custom_vectorization/embedding-api/app.py b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/embedding-api/app.py similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/embedding-api/app.py rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/embedding-api/app.py diff --git a/samples/azure-ai-search/source-material/custom_vectorization/embedding-api/requirements.txt b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/embedding-api/requirements.txt similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/embedding-api/requirements.txt rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/embedding-api/requirements.txt diff --git a/samples/azure-ai-search/source-material/custom_vectorization/images/architecture.excalidraw b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/architecture.excalidraw similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/images/architecture.excalidraw rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/architecture.excalidraw diff --git a/samples/azure-ai-search/source-material/custom_vectorization/images/architecture.png b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/architecture.png similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/images/architecture.png rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/architecture.png diff --git a/samples/azure-ai-search/source-material/custom_vectorization/images/architecture_lite.png b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/architecture_lite.png similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/images/architecture_lite.png rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/architecture_lite.png diff --git a/samples/azure-ai-search/source-material/custom_vectorization/images/gpu_vllm_rag_architecture.excalidraw b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/gpu_vllm_rag_architecture.excalidraw similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/images/gpu_vllm_rag_architecture.excalidraw rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/gpu_vllm_rag_architecture.excalidraw diff --git a/samples/azure-ai-search/source-material/custom_vectorization/images/gpu_vllm_rag_architecture.png b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/gpu_vllm_rag_architecture.png similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/images/gpu_vllm_rag_architecture.png rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/gpu_vllm_rag_architecture.png diff --git a/samples/azure-ai-search/source-material/custom_vectorization/images/indexer_vs_pushapi.png b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/indexer_vs_pushapi.png similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/images/indexer_vs_pushapi.png rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/images/indexer_vs_pushapi.png diff --git a/samples/azure-ai-search/source-material/custom_vectorization/indexer_vs_pushapi.excalidraw b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/indexer_vs_pushapi.excalidraw similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/indexer_vs_pushapi.excalidraw rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/indexer_vs_pushapi.excalidraw diff --git a/samples/azure-ai-search/source-material/custom_vectorization/k8s/cluster-issuer.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/k8s/cluster-issuer.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/k8s/cluster-issuer.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/k8s/cluster-issuer.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/k8s/deployment.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/k8s/deployment.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/k8s/deployment.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/k8s/deployment.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/k8s/ingress.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/k8s/ingress.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/k8s/ingress.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/k8s/ingress.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/reranker-adapter/Dockerfile b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/reranker-adapter/Dockerfile similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/reranker-adapter/Dockerfile rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/reranker-adapter/Dockerfile diff --git a/samples/azure-ai-search/source-material/custom_vectorization/reranker-adapter/app.py b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/reranker-adapter/app.py similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/reranker-adapter/app.py rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/reranker-adapter/app.py diff --git a/samples/azure-ai-search/source-material/custom_vectorization/reranker-adapter/requirements.txt b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/reranker-adapter/requirements.txt similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/reranker-adapter/requirements.txt rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/reranker-adapter/requirements.txt diff --git a/docs/services/azure-ai-search/custom-vectorization/samples/implementation/sample.yml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/sample.yml new file mode 100644 index 0000000..77a6742 --- /dev/null +++ b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/sample.yml @@ -0,0 +1,10 @@ +title: Custom vectorization implementation +description: Runnable embedding adapters, benchmarks, and Kubernetes manifests. +kind: runnable +used_by: +- index +- rag-chunking +- custom-web-api +- gpu-vllm +- bge-m3-vs-qwen3 +- a10-vs-t4 diff --git a/samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/Dockerfile b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/Dockerfile similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/Dockerfile rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/Dockerfile diff --git a/samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/app.py b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/app.py similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/app.py rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/app.py diff --git a/samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/k8s/deployment.yaml b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/k8s/deployment.yaml similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/k8s/deployment.yaml rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/k8s/deployment.yaml diff --git a/samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/requirements.txt b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/requirements.txt similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/tei-adapter/requirements.txt rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/tei-adapter/requirements.txt diff --git a/samples/azure-ai-search/source-material/custom_vectorization/vllm-adapter/Dockerfile b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/vllm-adapter/Dockerfile similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/vllm-adapter/Dockerfile rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/vllm-adapter/Dockerfile diff --git a/samples/azure-ai-search/source-material/custom_vectorization/vllm-adapter/app.py b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/vllm-adapter/app.py similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/vllm-adapter/app.py rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/vllm-adapter/app.py diff --git a/samples/azure-ai-search/source-material/custom_vectorization/vllm-adapter/requirements.txt b/docs/services/azure-ai-search/custom-vectorization/samples/implementation/vllm-adapter/requirements.txt similarity index 100% rename from samples/azure-ai-search/source-material/custom_vectorization/vllm-adapter/requirements.txt rename to docs/services/azure-ai-search/custom-vectorization/samples/implementation/vllm-adapter/requirements.txt diff --git a/docs/guides/azure-monitor/sre-agent-dynamic-thresholds/index.md b/docs/services/azure-monitor/azure-sre-agent/dynamic-thresholds/index.md similarity index 97% rename from docs/guides/azure-monitor/sre-agent-dynamic-thresholds/index.md rename to docs/services/azure-monitor/azure-sre-agent/dynamic-thresholds/index.md index ca7de8f..315b99a 100644 --- a/docs/guides/azure-monitor/sre-agent-dynamic-thresholds/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/dynamic-thresholds/index.md @@ -20,6 +20,9 @@ tags: - monitoring - ai-agents - architecture +topic_order: 9 +redirect_from: +- guides/azure-monitor/sre-agent-dynamic-thresholds/index.md --- # Azure Monitor Dynamic Thresholds와 SRE Agent 연계 설계 @@ -80,7 +83,7 @@ query는 `summarize` 결과가 하나 이상의 numeric series를 반환해야 - `ignoreDataBefore`: 정상 telemetry가 안정적으로 쌓이기 시작한 UTC - Action Group: 기존 `ag-sre-agent-event-lab` - Event path(기본): Dynamic alert → Azure Monitor incident platform 연결 → Review 모드 response plan → investigation. 현재 실습이 배포하는 표준 경로이며 Dynamic rule도 같은 경로를 그대로 쓴다. -- Event path(레거시 bridge): Dynamic alert → Action Group → Logic App managed identity → SRE HTTP Trigger → Review-mode investigation. 2026-08-12 실측에 쓰인 legacy 구성이고 기본 실습에는 배포하지 않는다([실측 검증 결과](../../../research/azure-monitor/sre-agent-validation-results/index.md)). +- Event path(레거시 bridge): Dynamic alert → Action Group → Logic App managed identity → SRE HTTP Trigger → Review-mode investigation. 2026-08-12 실측에 쓰인 legacy 구성이고 기본 실습에는 배포하지 않는다([실측 검증 결과](../validation-results/index.md)). 이는 시작점이지 모든 workload의 정답이 아니다. Preview Chart와 incident 결과를 보고 sensitivity와 failing periods를 조정한다. diff --git a/docs/labs/azure-monitor/sre-agent-event-lab/index.md b/docs/services/azure-monitor/azure-sre-agent/event-lab/index.md similarity index 92% rename from docs/labs/azure-monitor/sre-agent-event-lab/index.md rename to docs/services/azure-monitor/azure-sre-agent/event-lab/index.md index e23585e..b9811e3 100644 --- a/docs/labs/azure-monitor/sre-agent-event-lab/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/event-lab/index.md @@ -22,11 +22,14 @@ tags: - ai-agents - monitoring - troubleshooting +topic_order: 1 +redirect_from: +- labs/azure-monitor/sre-agent-event-lab/index.md --- # Azure SRE Agent 이벤트 기반 장애 분석 실습 -Azure Container Apps에 장애를 세 번 주입하고, Azure Monitor 경고를 받은 Azure SRE Agent가 실제로 조사·결론까지 도달하는지 확인합니다. 제품 개요는 [Azure SRE Agent 소개](../../../guides/azure-monitor/azure-sre-agent-overview/index.md)를 먼저 읽어 주세요. +Azure Container Apps에 장애를 세 번 주입하고, Azure Monitor 경고를 받은 Azure SRE Agent가 실제로 조사·결론까지 도달하는지 확인합니다. 제품 개요는 [Azure SRE Agent 소개](../index.md)를 먼저 읽어 주세요. > ⚠️ 이 실습은 실제 Azure 리소스를 만들고 **과금**합니다. 끝나면 반드시 [정리](#_8) 절차로 지우세요. @@ -68,7 +71,7 @@ Azure SRE Agent는 이 실습이 만들지 않습니다. 미리 만들어 둔 Ag az login --use-device-code azd auth login -source ./samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab-env.sh +source ./docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab-env.sh ``` `lab-env.sh`는 `azd`가 게시한 배포 출력만 읽어 리소스 그룹·구독·Container App·Storage 범위 등을 현재 셸에 export하고, 값이 하나라도 없으면 `LAB_READY=0`으로 알려 줍니다. 이후 가이드의 명령은 이 값들을 그대로 사용하므로 단계마다 다시 조회하지 않습니다. 비밀 값은 읽지도 출력하지도 않습니다. @@ -88,7 +91,7 @@ source ./samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab-e 이 실습의 모든 명령은 아래에서 한 번만 진입하는 이 디렉터리를 기준으로 합니다. ```bash -cd samples/azure-monitor/source-material/sre-agent-event-lab +cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab ``` 로컬 검증만 먼저 해 보려면 다음을 실행합니다. `setup-venv.sh`는 `azd up`의 postprovision 단계에서도 실행되므로, 배포를 먼저 한 경우에는 이미 준비된 상태입니다. @@ -134,13 +137,13 @@ postprovision 단계가 실패하면 로컬 환경만 실패한 것입니다. `. ## Azure SRE Agent 설정 -포털에서만 할 수 있는 설정이 남아 있습니다. 저장소 연결, 지식 문서 업로드, **Azure Monitor incident platform** 연결, `Review` 모드 응답 계획, 역할 할당을 [에이전트 설정](../sre-agent-event-lab-setup/index.md)이 순서대로 안내합니다. +포털에서만 할 수 있는 설정이 남아 있습니다. 저장소 연결, 지식 문서 업로드, **Azure Monitor incident platform** 연결, `Review` 모드 응답 계획, 역할 할당을 [에이전트 설정](../setup/index.md)이 순서대로 안내합니다. -기본 실습에는 Logic App bridge를 배포하지 않습니다. 제품 표준 경로는 Azure Monitor를 incident platform으로 연결하는 것이고, 예전 실측에서 쓰던 Action Group + Logic App 인증 경로는 레거시 기록으로만 남아 있습니다([실측 검증 결과](../../../research/azure-monitor/sre-agent-validation-results/index.md)). +기본 실습에는 Logic App bridge를 배포하지 않습니다. 제품 표준 경로는 Azure Monitor를 incident platform으로 연결하는 것이고, 예전 실측에서 쓰던 Action Group + Logic App 인증 경로는 레거시 기록으로만 남아 있습니다([실측 검증 결과](../validation-results/index.md)). ## 정상 상태 확인과 승인 -장애를 주입하기 전에 정상 부하가 Application Insights까지 도달하는지 확인하고, 그 사실을 기록해야 S1이 열립니다. 텔레메트리가 없는 워크로드에 장애를 넣으면 주입한 장애와 원래부터 안 보이던 상태를 구별할 수 없습니다. 명령은 [에이전트 설정](../sre-agent-event-lab-setup/index.md)에 있습니다. +장애를 주입하기 전에 정상 부하가 Application Insights까지 도달하는지 확인하고, 그 사실을 기록해야 S1이 열립니다. 텔레메트리가 없는 워크로드에 장애를 넣으면 주입한 장애와 원래부터 안 보이던 상태를 구별할 수 없습니다. 명령은 [에이전트 설정](../setup/index.md)에 있습니다. ```bash python3 scripts/lab_state.py mark baseline_passed --evidence-dir "${EVIDENCE_DIR}" @@ -159,9 +162,9 @@ python3 scripts/lab_state.py acknowledge-agent | 시나리오 | 주입하는 장애 | 안내 문서 | |---|---|---| -| S1 | HTTP 500 응답 | [S1 — HTTP 500 장애](../sre-agent-scenario-http-500/index.md) | -| S2 | 주문 API 지연 | [S2 — 응답 지연](../sre-agent-scenario-latency/index.md) | -| S3 | Blob 읽기 권한 제거 | [S3 — Blob 권한 장애](../sre-agent-scenario-blob-permission/index.md) | +| S1 | HTTP 500 응답 | [S1 — HTTP 500 장애](../scenario-http-500/index.md) | +| S2 | 주문 API 지연 | [S2 — 응답 지연](../scenario-latency/index.md) | +| S3 | Blob 읽기 권한 제거 | [S3 — Blob 권한 장애](../scenario-blob-permission/index.md) | ## 결과 확인 @@ -169,7 +172,7 @@ python3 scripts/lab_state.py acknowledge-agent app/.venv/bin/python scripts/score.py --evidence-root evidence ``` -채점 기준, 사람이 채워야 하는 판정, 종합 판정 해석은 [결과 채점](../sre-agent-results/index.md)에 있습니다. +채점 기준, 사람이 채워야 하는 판정, 종합 판정 해석은 [결과 채점](../results/index.md)에 있습니다. ## 정리 @@ -208,11 +211,11 @@ az group delete --subscription "${SUBSCRIPTION_ID}" --name "${RESOURCE_GROUP}" - | 증상 | 확인할 곳 | |---|---| | 배포 후 앱이 응답하지 않음 | `azd env get-value AZURE_CONTAINER_APP_FQDN`으로 FQDN을 확인한 뒤 `/healthz` 호출 | -| Agent가 스레드를 만들지 않음 | [에이전트 설정](../sre-agent-event-lab-setup/index.md)의 incident platform·응답 계획 확인 | +| Agent가 스레드를 만들지 않음 | [에이전트 설정](../setup/index.md)의 incident platform·응답 계획 확인 | | 경고가 발생하지 않음 | 시나리오 문서의 "복구 확인" 절 | -| 채점이 `INCOMPLETE` | [결과 채점](../sre-agent-results/index.md)의 수동 판정 절 | +| 채점이 `INCOMPLETE` | [결과 채점](../results/index.md)의 수동 판정 절 | -정적 임계값 대신 Dynamic Threshold로 확장하는 설계는 [Dynamic Thresholds 확장 설계](../../../guides/azure-monitor/sre-agent-dynamic-thresholds/index.md)에 정리해 두었습니다. +정적 임계값 대신 Dynamic Threshold로 확장하는 설계는 [Dynamic Thresholds 확장 설계](../dynamic-thresholds/index.md)에 정리해 두었습니다. ## 공식 자료 diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/agent-reasoning-flow.svg b/docs/services/azure-monitor/azure-sre-agent/images/agent-reasoning-flow.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/agent-reasoning-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/images/agent-reasoning-flow.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/azure-sre-agent-networking-vnet.png b/docs/services/azure-monitor/azure-sre-agent/images/azure-sre-agent-networking-vnet.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/azure-sre-agent-networking-vnet.png rename to docs/services/azure-monitor/azure-sre-agent/images/azure-sre-agent-networking-vnet.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/custom-skill-flow.svg b/docs/services/azure-monitor/azure-sre-agent/images/custom-skill-flow.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/custom-skill-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/images/custom-skill-flow.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/diagnose-azure-services.svg b/docs/services/azure-monitor/azure-sre-agent/images/diagnose-azure-services.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/diagnose-azure-services.svg rename to docs/services/azure-monitor/azure-sre-agent/images/diagnose-azure-services.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/github-issue.png b/docs/services/azure-monitor/azure-sre-agent/images/github-issue.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/github-issue.png rename to docs/services/azure-monitor/azure-sre-agent/images/github-issue.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/incident-platform-flow.svg b/docs/services/azure-monitor/azure-sre-agent/images/incident-platform-flow.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/incident-platform-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/images/incident-platform-flow.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/incident-response-flow.svg b/docs/services/azure-monitor/azure-sre-agent/images/incident-response-flow.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/incident-response-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/images/incident-response-flow.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/knowledge-sources.svg b/docs/services/azure-monitor/azure-sre-agent/images/knowledge-sources.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/knowledge-sources.svg rename to docs/services/azure-monitor/azure-sre-agent/images/knowledge-sources.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/managed-connectors-icon-grid.png b/docs/services/azure-monitor/azure-sre-agent/images/managed-connectors-icon-grid.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/managed-connectors-icon-grid.png rename to docs/services/azure-monitor/azure-sre-agent/images/managed-connectors-icon-grid.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/memory-auto-learning.svg b/docs/services/azure-monitor/azure-sre-agent/images/memory-auto-learning.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/memory-auto-learning.svg rename to docs/services/azure-monitor/azure-sre-agent/images/memory-auto-learning.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/memory-unified-search.svg b/docs/services/azure-monitor/azure-sre-agent/images/memory-unified-search.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/memory-unified-search.svg rename to docs/services/azure-monitor/azure-sre-agent/images/memory-unified-search.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/notification-paths.svg b/docs/services/azure-monitor/azure-sre-agent/images/notification-paths.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/notification-paths.svg rename to docs/services/azure-monitor/azure-sre-agent/images/notification-paths.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/operations-hub-overview-tab.png b/docs/services/azure-monitor/azure-sre-agent/images/operations-hub-overview-tab.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/operations-hub-overview-tab.png rename to docs/services/azure-monitor/azure-sre-agent/images/operations-hub-overview-tab.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/permission-flow.svg b/docs/services/azure-monitor/azure-sre-agent/images/permission-flow.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/permission-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/images/permission-flow.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/portal-sub-agent-canvas-full.png b/docs/services/azure-monitor/azure-sre-agent/images/portal-sub-agent-canvas-full.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/portal-sub-agent-canvas-full.png rename to docs/services/azure-monitor/azure-sre-agent/images/portal-sub-agent-canvas-full.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/root-cause-analysis.svg b/docs/services/azure-monitor/azure-sre-agent/images/root-cause-analysis.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/root-cause-analysis.svg rename to docs/services/azure-monitor/azure-sre-agent/images/root-cause-analysis.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/run-modes-comparison.svg b/docs/services/azure-monitor/azure-sre-agent/images/run-modes-comparison.svg similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/run-modes-comparison.svg rename to docs/services/azure-monitor/azure-sre-agent/images/run-modes-comparison.svg diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/s1-agent-conclusion.png b/docs/services/azure-monitor/azure-sre-agent/images/s1-agent-conclusion.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/s1-agent-conclusion.png rename to docs/services/azure-monitor/azure-sre-agent/images/s1-agent-conclusion.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/s1-email-preview.png b/docs/services/azure-monitor/azure-sre-agent/images/s1-email-preview.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/s1-email-preview.png rename to docs/services/azure-monitor/azure-sre-agent/images/s1-email-preview.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/s1-three-panel.png b/docs/services/azure-monitor/azure-sre-agent/images/s1-three-panel.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/s1-three-panel.png rename to docs/services/azure-monitor/azure-sre-agent/images/s1-three-panel.png diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/images/sre-agent-process.png b/docs/services/azure-monitor/azure-sre-agent/images/sre-agent-process.png similarity index 100% rename from docs/guides/azure-monitor/azure-sre-agent-overview/images/sre-agent-process.png rename to docs/services/azure-monitor/azure-sre-agent/images/sre-agent-process.png diff --git a/docs/guides/azure-monitor/sre-agent-incident-runbook/index.md b/docs/services/azure-monitor/azure-sre-agent/incident-runbook/index.md similarity index 98% rename from docs/guides/azure-monitor/sre-agent-incident-runbook/index.md rename to docs/services/azure-monitor/azure-sre-agent/incident-runbook/index.md index 02973aa..054ba82 100644 --- a/docs/guides/azure-monitor/sre-agent-incident-runbook/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/incident-runbook/index.md @@ -20,6 +20,9 @@ tags: - troubleshooting - monitoring - reliability +topic_order: 8 +redirect_from: +- guides/azure-monitor/sre-agent-incident-runbook/index.md --- # Azure SRE Agent Event Lab Incident Runbook diff --git a/docs/guides/azure-monitor/azure-sre-agent-overview/index.md b/docs/services/azure-monitor/azure-sre-agent/index.md similarity index 97% rename from docs/guides/azure-monitor/azure-sre-agent-overview/index.md rename to docs/services/azure-monitor/azure-sre-agent/index.md index 3dba48f..f09671d 100644 --- a/docs/guides/azure-monitor/azure-sre-agent-overview/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/index.md @@ -20,6 +20,8 @@ tags: - ai-agents - monitoring - troubleshooting +redirect_from: +- guides/azure-monitor/azure-sre-agent-overview/index.md --- # Azure SRE Agent 소개 @@ -262,7 +264,7 @@ Azure SRE Agent는 다음 기능을 제품에서 기본으로 지원합니다. ![Azure SRE Agent의 인시던트 대응 흐름](images/sre-agent-process.png) -[편집 가능한 SVG 보기](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/sre-agent-process.svg) +[편집 가능한 SVG 보기](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/sre-agent-process.svg) 이번 실증에서는 대응 계획을 공개 API로 자동 구성하는 데 제약이 있어 Azure SRE Agent의 HTTP Trigger를 사용했습니다. @@ -301,7 +303,7 @@ Azure Monitor 경고 ![주문 API HTTP 500 실증 요약](images/s1-three-panel.png) -[편집 가능한 SVG 보기](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/s1-three-panel.svg) +[편집 가능한 SVG 보기](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/s1-three-panel.svg) ### 상황 @@ -336,7 +338,7 @@ Azure SRE Agent가 정리한 근본 원인과 조치 방안을 작업 항목으 ![실제 GitHub Issue #43](images/github-issue.png) - [GitHub Issue #43 열기](https://github.com/hellices/devguidesample/issues/43) -- [Issue 본문 보기](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-github-issue.md) +- [Issue 본문 보기](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-github-issue.md) Issue에는 다음 내용을 포함했습니다. @@ -356,8 +358,8 @@ Issue에는 다음 내용을 포함했습니다. ![Outlook 메일 초안](images/s1-email-preview.png) -- [HTML 메일 보기](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-incident-summary.html) -- [RFC 5322 메일 파일 보기](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-incident-summary.eml) +- [HTML 메일 보기](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-incident-summary.html) +- [RFC 5322 메일 파일 보기](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-incident-summary.eml) 실제 운영에서는 Outlook 커넥터의 메일 보내기 작업을 사용할 수 있습니다. @@ -376,7 +378,7 @@ Issue에는 다음 내용을 포함했습니다. | 주문 API 지연 | 성공한 요청의 응답 시간, 외부 종속성, 지연 설정 | `ORDER_DELAY_MS=4000`을 확인했습니다. | | Blob 권한 오류 | 역할 삭제 이력, Blob 403, API 503 | 역할 삭제를 근본 원인으로 확인했습니다. 복구 확인 대상은 한 차례 잘못 선택해 한계로 기록했습니다. | -상세 수치, 시간 순서, 평가 기준은 [실제 동작 검증 결과](../../../research/azure-monitor/sre-agent-validation-results/index.md)에서 확인할 수 있습니다. +상세 수치, 시간 순서, 평가 기준은 [실제 동작 검증 결과](validation-results/index.md)에서 확인할 수 있습니다. ## Dynamic Thresholds와 함께 사용할 수 있나요? @@ -389,7 +391,7 @@ Issue에는 다음 내용을 포함했습니다. 처음에는 기존 고정 임계값을 유지하고, Dynamic Thresholds를 별도의 관찰용 경고로 추가하는 방식을 권장합니다. 충분한 학습 기간을 거친 뒤 오탐과 누락을 비교해 실제 대응 흐름에 연결합니다. -자세한 내용은 [Dynamic Thresholds 연계 가이드](../sre-agent-dynamic-thresholds/index.md)를 참고하세요. +자세한 내용은 [Dynamic Thresholds 연계 가이드](dynamic-thresholds/index.md)를 참고하세요. ## 도입 전에 확인해야 할 사전 조건 @@ -671,5 +673,5 @@ Agent Hooks를 사용하면 에이전트가 결과를 반환하기 직전이나 ### 실증 자료 -- [실제 동작 검증 결과](../../../research/azure-monitor/sre-agent-validation-results/index.md) -- [실험 환경과 재현 방법](../../../labs/azure-monitor/sre-agent-event-lab/index.md) +- [실제 동작 검증 결과](validation-results/index.md) +- [실험 환경과 재현 방법](event-lab/index.md) diff --git a/docs/labs/azure-monitor/sre-agent-results/index.md b/docs/services/azure-monitor/azure-sre-agent/results/index.md similarity index 95% rename from docs/labs/azure-monitor/sre-agent-results/index.md rename to docs/services/azure-monitor/azure-sre-agent/results/index.md index f34b272..79eb1a0 100644 --- a/docs/labs/azure-monitor/sre-agent-results/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/results/index.md @@ -21,6 +21,9 @@ tags: - ai-agents - monitoring - diagnostics +topic_order: 6 +redirect_from: +- labs/azure-monitor/sre-agent-results/index.md --- # 05. 결과 읽기와 채점 @@ -36,7 +39,7 @@ tags: ## 실행 명령 ```bash -cd samples/azure-monitor/source-material/sre-agent-event-lab +cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab app/.venv/bin/python scripts/score.py --evidence-root evidence ``` @@ -118,4 +121,4 @@ python3 scripts/generate_notifications.py \ azd down --purge ``` -정리 훅이 무엇을 지우는지, 확인 프롬프트에서 취소하면 무엇이 남는지는 [README의 정리 절](../sre-agent-event-lab/index.md)에 있습니다. +정리 훅이 무엇을 지우는지, 확인 프롬프트에서 취소하면 무엇이 남는지는 [README의 정리 절](../event-lab/index.md)에 있습니다. diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/.env.example b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/.env.example similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/.env.example rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/.env.example diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/.gitignore b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/.gitignore similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/.gitignore rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/.gitignore diff --git a/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/README.md b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/README.md new file mode 100644 index 0000000..25549e6 --- /dev/null +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/README.md @@ -0,0 +1,14 @@ +# Azure SRE Agent event lab + +This runnable sample contains the application, infrastructure, scenario scripts, +captured evidence, and notification assets used by the Azure SRE Agent topic. + +From the repository root: + +```bash +cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab +azd up +``` + +Follow the [event lab instructions](../../event-lab/index.md) for setup, +scenario execution, validation, and cleanup. diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/.dockerignore b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/.dockerignore similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/.dockerignore rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/.dockerignore diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/Dockerfile b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/Dockerfile similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/Dockerfile rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/Dockerfile diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/main.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/main.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/main.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/main.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/requirements-dev.txt b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/requirements-dev.txt similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/requirements-dev.txt rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/requirements-dev.txt diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/requirements.txt b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/requirements.txt similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/requirements.txt rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/requirements.txt diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/telemetry.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/telemetry.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/telemetry.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/telemetry.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/tests/conftest.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/tests/conftest.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/tests/conftest.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/tests/conftest.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/tests/test_main.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/tests/test_main.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/tests/test_main.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/tests/test_main.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/app/tests/test_telemetry.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/tests/test_telemetry.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/app/tests/test_telemetry.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/app/tests/test_telemetry.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/s1-agent-conclusion.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/s1-agent-conclusion.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/s1-agent-conclusion.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/s1-agent-conclusion.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/s1-three-panel.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/s1-three-panel.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/s1-three-panel.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/s1-three-panel.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/s1-three-panel.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/s1-three-panel.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/s1-three-panel.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/s1-three-panel.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/sre-agent-process.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/sre-agent-process.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/sre-agent-process.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/sre-agent-process.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/sre-agent-process.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/sre-agent-process.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/briefing/sre-agent-process.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/briefing/sre-agent-process.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/01-alert-fired.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/01-alert-fired.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/01-alert-fired.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/01-alert-fired.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/02-thread-not-created.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/02-thread-not-created.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/02-thread-not-created.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/02-thread-not-created.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/03-investigation-missing.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/03-investigation-missing.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/03-investigation-missing.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/03-investigation-missing.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/04-conclusion-missing.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/04-conclusion-missing.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/04-conclusion-missing.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/04-conclusion-missing.png diff --git a/docs/research/azure-monitor/sre-agent-validation-results/images/investigation.gif b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/investigation.gif similarity index 100% rename from docs/research/azure-monitor/sre-agent-validation-results/images/investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/investigation.gif diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/timeline.md b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/timeline.md similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/timeline.md rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/timeline.md diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/timeline.mmd b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/timeline.mmd similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/timeline.mmd rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1-before-bridge/timeline.mmd diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/01-alert-fired.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/01-alert-fired.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/01-alert-fired.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/01-alert-fired.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/02-thread-created.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/02-thread-created.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/02-thread-created.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/02-thread-created.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/03-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/03-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/03-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/03-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/04-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/04-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/04-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/04-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/05-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/05-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/05-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/05-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/06-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/06-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/06-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/06-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/07-conclusion.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/07-conclusion.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/07-conclusion.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/07-conclusion.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/investigation.gif b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/investigation.gif similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/investigation.gif diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/timeline.md b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/timeline.md similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/timeline.md rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/timeline.md diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/timeline.mmd b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/timeline.mmd similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/timeline.mmd rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/timeline.mmd diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/01-alert-fired.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/01-alert-fired.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/01-alert-fired.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/01-alert-fired.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/02-thread-created.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/02-thread-created.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/02-thread-created.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/02-thread-created.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/03-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/03-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/03-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/03-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/04-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/04-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/04-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/04-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/05-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/05-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/05-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/05-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/06-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/06-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/06-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/06-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/07-conclusion.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/07-conclusion.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/07-conclusion.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/07-conclusion.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/investigation.gif b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/investigation.gif similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/investigation.gif diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/timeline.md b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/timeline.md similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/timeline.md rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/timeline.md diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/timeline.mmd b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/timeline.mmd similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/timeline.mmd rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/timeline.mmd diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/01-alert-fired.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/01-alert-fired.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/01-alert-fired.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/01-alert-fired.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/02-thread-created.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/02-thread-created.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/02-thread-created.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/02-thread-created.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/03-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/03-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/03-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/03-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/04-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/04-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/04-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/04-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/05-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/05-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/05-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/05-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/06-investigating.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/06-investigating.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/06-investigating.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/06-investigating.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/07-conclusion.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/07-conclusion.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/07-conclusion.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/07-conclusion.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/investigation.gif b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/investigation.gif similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/investigation.gif diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/timeline.md b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/timeline.md similarity index 98% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/timeline.md rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/timeline.md index 9fbc61e..0e2e07b 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/timeline.md +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/timeline.md @@ -28,4 +28,4 @@ | 2026-08-12T08:46:03.604102Z | 232s | investigating | sre-agent | **Evaluating KQL issues** I'm working through a problem with KQL where I'm trying to use `union kind=outer dependencies, requests`, but I suspect there are issues with different columns. The app-insights CLI might be referencing outdated table names, leading to invalid property errors. I think I can query requests between 8:42:45 and 8:45:30 and aggregate them separately from dependencies. Currently, there’s a 503 error and the container health is false, even though one replica is ready. I’ll consider mitigation options without a restart and check logs for errors. | | 2026-08-12T08:46:04.820660Z | 233s | investigating | sre-agent | **Analyzing query for failures** I need to run two queries to check for failures after adding a role. The current time is 08:45, and I want to specifically query the timestamp from the `dependencies` table. The KQL I'm thinking of is `dependencies \| where timestamp... \| summarize total=count(), failures=countif(resultCode == '403'), lastFailure=maxif(timestamp, resultCode == "403")`. I'm wondering if `maxif` is supported, and I might also simplify it to just check for `resultCode=="403"` since 8:42:45. I need to run a separate query for the requests with a 503 error and then check the role assignment state to ensure it’s processed correctly. | | 2026-08-12T08:46:06.560018Z | 235s | investigating | sre-agent | The role assignment is present, but recovery has not completed: at `08:45 UTC`, the public `/api/documents` endpoint still returns `503` while the replica remains ready. I’m separating post-restore dependency and request telemetry to distinguish RBAC propagation from a second fault. | -| 2026-08-12T08:46:37.172586Z | 266s | conclusion | sre-agent | ## Incident summary - **Alert:** `[SRE-LAB-S3] Blob dependency failures exceeded` (Sev2), fired **2026-08-12 08:42:11 UTC**. - **Affected path:** `GET /api/documents` on `ca-sre-event-lab`; Blob target `stexample00000000/documents`. - **Onset:** first `503` at **08:40:08.363 UTC**; first Blob `403` at **08:40:08.375 UTC**. ## Root cause The workload managed identity `` lost its container-scoped **Storage Blob Data Reader** assignment at **08:40:07.988 UTC**. The storage call then failed with `AuthorizationPermissionMismatch`, which the app surfaced as `503`. ## Evidence - Activity Log shows `roleAssignments/delete` for the `documents` container at **08:40:07.988 UTC**. - A representative trace shows `list_blobs` failing against Blob Storage with `403` and `AuthorizationPermissionMismatch`. - The alert window contained **60** Blob `403` failures. - The role was restored at **08:42:48.660 UTC**; current assignment is `Storage Blob Data Reader` at the original container scope. ## Current status Recovery is **still propagating**: a Blob `403` occurred at **08:45:25 UTC**, and the external endpoint returned `503` at approximately **08:45 UTC**. The Container App revision is otherwise running with one ready replica. ## Smallest safe mitigation No additional change is recommended: the least-privilege role has already been restored at the correct scope. Allow RBAC propagation, then recheck `/api/documents` and Blob `403` telemetry. Do not restart or redeploy solely for this issue. The connected repository contains managed-identity Blob-client guidance but not this deployed lab workload’s source: [bench_runner.py](https://github.com/hellices/devguidesample/blob/main/samples/azure-ai-search/source-material/custom_vectorization/bench/bench_runner.py#L49). | +| 2026-08-12T08:46:37.172586Z | 266s | conclusion | sre-agent | ## Incident summary - **Alert:** `[SRE-LAB-S3] Blob dependency failures exceeded` (Sev2), fired **2026-08-12 08:42:11 UTC**. - **Affected path:** `GET /api/documents` on `ca-sre-event-lab`; Blob target `stexample00000000/documents`. - **Onset:** first `503` at **08:40:08.363 UTC**; first Blob `403` at **08:40:08.375 UTC**. ## Root cause The workload managed identity `` lost its container-scoped **Storage Blob Data Reader** assignment at **08:40:07.988 UTC**. The storage call then failed with `AuthorizationPermissionMismatch`, which the app surfaced as `503`. ## Evidence - Activity Log shows `roleAssignments/delete` for the `documents` container at **08:40:07.988 UTC**. - A representative trace shows `list_blobs` failing against Blob Storage with `403` and `AuthorizationPermissionMismatch`. - The alert window contained **60** Blob `403` failures. - The role was restored at **08:42:48.660 UTC**; current assignment is `Storage Blob Data Reader` at the original container scope. ## Current status Recovery is **still propagating**: a Blob `403` occurred at **08:45:25 UTC**, and the external endpoint returned `503` at approximately **08:45 UTC**. The Container App revision is otherwise running with one ready replica. ## Smallest safe mitigation No additional change is recommended: the least-privilege role has already been restored at the correct scope. Allow RBAC propagation, then recheck `/api/documents` and Blob `403` telemetry. Do not restart or redeploy solely for this issue. The connected repository contains managed-identity Blob-client guidance but not this deployed lab workload’s source: [bench_runner.py](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-ai-search/custom-vectorization/samples/implementation/bench/bench_runner.py#L49). | diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/timeline.mmd b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/timeline.mmd similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/timeline.mmd rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/timeline.mmd diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/github-issue.json b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/github-issue.json similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/github-issue.json rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/github-issue.json diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/github-issue.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/github-issue.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/github-issue.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/github-issue.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-email-preview.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-email-preview.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-email-preview.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-email-preview.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-github-issue.md b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-github-issue.md similarity index 92% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-github-issue.md rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-github-issue.md index cd68f0f..41177c5 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-github-issue.md +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-github-issue.md @@ -43,5 +43,5 @@ Resolved. A succeeding revision uses `FAILURE_MODE=none`, receives traffic, and ## Tracking - Agent thread ID: `` -- Detailed validation appendix: [Azure SRE Agent validation results](https://github.com/hellices/devguidesample/blob/main/docs/research/azure-monitor/sre-agent-validation-results/index.md) +- Detailed validation appendix: [Azure SRE Agent validation results](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/validation-results/index.md) - Generated from actual Azure SRE Agent evidence; no resource change was executed by the Agent. diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-incident-summary.eml b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-incident-summary.eml similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-incident-summary.eml rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-incident-summary.eml diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-incident-summary.html b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-incident-summary.html similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/notifications/s1-incident-summary.html rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/notifications/s1-incident-summary.html diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/agent-reasoning-flow.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/agent-reasoning-flow.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/agent-reasoning-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/agent-reasoning-flow.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/azure-sre-agent-networking-vnet.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/azure-sre-agent-networking-vnet.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/azure-sre-agent-networking-vnet.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/azure-sre-agent-networking-vnet.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/custom-skill-flow.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/custom-skill-flow.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/custom-skill-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/custom-skill-flow.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/diagnose-azure-services.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/diagnose-azure-services.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/diagnose-azure-services.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/diagnose-azure-services.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/incident-platform-flow.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/incident-platform-flow.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/incident-platform-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/incident-platform-flow.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/incident-response-flow.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/incident-response-flow.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/incident-response-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/incident-response-flow.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/knowledge-sources.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/knowledge-sources.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/knowledge-sources.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/knowledge-sources.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/managed-connectors-icon-grid.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/managed-connectors-icon-grid.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/managed-connectors-icon-grid.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/managed-connectors-icon-grid.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/memory-auto-learning.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/memory-auto-learning.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/memory-auto-learning.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/memory-auto-learning.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/memory-unified-search.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/memory-unified-search.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/memory-unified-search.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/memory-unified-search.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/notification-paths.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/notification-paths.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/notification-paths.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/notification-paths.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/operations-hub-overview-tab.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/operations-hub-overview-tab.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/operations-hub-overview-tab.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/operations-hub-overview-tab.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/permission-flow.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/permission-flow.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/permission-flow.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/permission-flow.svg diff --git a/docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-complete-setup-page.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-complete-setup-page.png similarity index 100% rename from docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-complete-setup-page.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-complete-setup-page.png diff --git a/docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-incident-response-plans-list.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-incident-response-plans-list.png similarity index 100% rename from docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-incident-response-plans-list.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-incident-response-plans-list.png diff --git a/docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-response-plan-autonomy-step.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-response-plan-autonomy-step.png similarity index 100% rename from docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-response-plan-autonomy-step.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-response-plan-autonomy-step.png diff --git a/docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-setup-status-bar.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-setup-status-bar.png similarity index 100% rename from docs/labs/azure-monitor/sre-agent-event-lab-setup/images/portal-setup-status-bar.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-setup-status-bar.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-sub-agent-canvas-full.png b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-sub-agent-canvas-full.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-sub-agent-canvas-full.png rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/portal-sub-agent-canvas-full.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/root-cause-analysis.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/root-cause-analysis.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/root-cause-analysis.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/root-cause-analysis.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/run-modes-comparison.svg b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/run-modes-comparison.svg similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/run-modes-comparison.svg rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/official/run-modes-comparison.svg diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/azure.yaml b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/azure.yaml similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/azure.yaml rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/azure.yaml diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/alerts.bicep b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/alerts.bicep similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/alerts.bicep rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/alerts.bicep diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/lab.bicep b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/lab.bicep similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/lab.bicep rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/lab.bicep diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/main.bicep b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/main.bicep similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/main.bicep rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/main.bicep diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/main.parameters.json b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/main.parameters.json similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/main.parameters.json rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/main.parameters.json diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/observability.bicep b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/observability.bicep similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/observability.bicep rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/observability.bicep diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/tests/test_alerts_bicep.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/tests/test_alerts_bicep.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/tests/test_alerts_bicep.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/tests/test_alerts_bicep.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/tests/test_azd_project.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/tests/test_azd_project.py similarity index 99% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/tests/test_azd_project.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/tests/test_azd_project.py index f6d8755..a8804b2 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/tests/test_azd_project.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/tests/test_azd_project.py @@ -6,13 +6,14 @@ LAB_ROOT = Path(__file__).parents[2] -REPO_ROOT = Path(__file__).parents[6] +REPO_ROOT = Path(__file__).parents[8] LAB_PAGE = ( REPO_ROOT / "docs" - / "labs" + / "services" / "azure-monitor" - / "sre-agent-event-lab" + / "azure-sre-agent" + / "event-lab" / "index.md" ) PLACEHOLDER_IMAGE = "mcr.microsoft.com/azuredocs/containerapps-helloworld:latest" diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/tests/test_workload_networking.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/tests/test_workload_networking.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/tests/test_workload_networking.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/tests/test_workload_networking.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/infra/workload.bicep b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/workload.bicep similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/infra/workload.bicep rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/infra/workload.bicep diff --git a/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/sample.yml b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/sample.yml new file mode 100644 index 0000000..5c2b8a9 --- /dev/null +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/sample.yml @@ -0,0 +1,14 @@ +title: Azure SRE Agent event lab +description: Deployable lab and evidence assets for the Azure SRE Agent scenarios. +kind: runnable +used_by: +- index +- event-lab +- setup +- scenario-http-500 +- scenario-latency +- scenario-blob-permission +- results +- validation-results +- incident-runbook +- dynamic-thresholds diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/azd-configure.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/azd-configure.sh similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/azd-configure.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/azd-configure.sh diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/azd-deploy-app.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/azd-deploy-app.sh similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/azd-deploy-app.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/azd-deploy-app.sh diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/azd-postprovision-local.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/azd-postprovision-local.sh similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/azd-postprovision-local.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/azd-postprovision-local.sh diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/capture_agent.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/capture_agent.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/capture_agent.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/capture_agent.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/capture_model.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/capture_model.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/capture_model.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/capture_model.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/cleanup-external.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/cleanup-external.sh similarity index 97% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/cleanup-external.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/cleanup-external.sh index 2610c4d..3792f28 100755 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/cleanup-external.sh +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/cleanup-external.sh @@ -160,7 +160,7 @@ if ! RECORDED_ASSIGNMENTS="$(jq -r ' | join("|") ' "${CLEANUP_SETUP_FILE}" 2>/dev/null)"; then echo "Agent setup evidence is not valid JSON: ${CLEANUP_SETUP_FILE}" >&2 - echo "Rewrite evidence/agent-setup.json as shown in docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md, then run: python3 scripts/lab_state.py acknowledge-agent" >&2 + echo "Rewrite evidence/agent-setup.json as shown in docs/services/azure-monitor/azure-sre-agent/setup/index.md, then run: python3 scripts/lab_state.py acknowledge-agent" >&2 exit 1 fi readonly RECORDED_ASSIGNMENTS @@ -260,12 +260,12 @@ while IFS='|' read -r assignment_key assignment_id principal_key expected_princi echo "${assignment_key} is empty for principal ${expected_principal_id:-unknown}." >&2 echo "Find the live ID: az role assignment list --assignee-object-id ${expected_principal_id:-} --role \"Monitoring Contributor\" --scope ${SUBSCRIPTION_SCOPE} --query \"[0].id\" -o tsv" >&2 echo "If no assignment is returned and teardown should continue, clear both ${assignment_key} and ${principal_key} in the evidence file." >&2 - echo "Update evidence/agent-setup.json as shown in docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md, then run: python3 scripts/lab_state.py acknowledge-agent" >&2 + echo "Update evidence/agent-setup.json as shown in docs/services/azure-monitor/azure-sre-agent/setup/index.md, then run: python3 scripts/lab_state.py acknowledge-agent" >&2 exit 1 fi if [[ -z "${expected_principal_id}" ]]; then echo "Incomplete Agent setup evidence: ${assignment_id} was recorded without ${principal_key}." >&2 - echo "Update evidence/agent-setup.json as shown in docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md, then run: python3 scripts/lab_state.py acknowledge-agent" >&2 + echo "Update evidence/agent-setup.json as shown in docs/services/azure-monitor/azure-sre-agent/setup/index.md, then run: python3 scripts/lab_state.py acknowledge-agent" >&2 exit 1 fi case "${VERIFIED_ASSIGNMENT_IDS}" in diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/common.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/common.sh similarity index 99% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/common.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/common.sh index c1d189f..2414726 100755 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/common.sh +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/common.sh @@ -274,7 +274,7 @@ evidence_dir_path() { # create_evidence_dir SCENARIO -- name it and create it in one step, for # callers that write into it immediately and have nothing left to refuse # them (the baseline step in -# `docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md`). +# `docs/services/azure-monitor/azure-sre-agent/setup/index.md`). create_evidence_dir() { local directory directory="$(evidence_dir_path "$1")" diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/generate_notifications.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/generate_notifications.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/generate_notifications.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/generate_notifications.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab-env.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab-env.sh similarity index 99% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab-env.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab-env.sh index 958322f..1667eb0 100755 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab-env.sh +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab-env.sh @@ -2,7 +2,7 @@ # Resolves the lab's configuration once and exports it into the current # shell. Source it; do not execute it: # -# cd samples/azure-monitor/source-material/sre-agent-event-lab +# cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab # source ./scripts/lab-env.sh # # Every value here is a name, an ID or a URL that `azd provision` already diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab_state.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab_state.py similarity index 99% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab_state.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab_state.py index 6afeb9e..9868c1e 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/lab_state.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab_state.py @@ -178,9 +178,9 @@ def terminal_state(events: Iterable[Dict[str, Any]]) -> str: # messages name it instead of a command, because the lab is run by hand: # there is no script that performs a scenario. SCENARIO_GUIDES = { - "s1": "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md", - "s2": "docs/labs/azure-monitor/sre-agent-scenario-latency/index.md", - "s3": "docs/labs/azure-monitor/sre-agent-scenario-blob-permission/index.md", + "s1": "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md", + "s2": "docs/services/azure-monitor/azure-sre-agent/scenario-latency/index.md", + "s3": "docs/services/azure-monitor/azure-sre-agent/scenario-blob-permission/index.md", } @@ -491,7 +491,7 @@ def _remedy(self, missing: Sequence[str]) -> str: remedies = { "baseline_passed": ( "Run the baseline steps in " - "docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md, then: " + "docs/services/azure-monitor/azure-sre-agent/setup/index.md, then: " "lab_state.py mark baseline_passed" ), "agent_setup_acknowledged": "Run: lab_state.py acknowledge-agent", diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/loadgen.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/loadgen.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/loadgen.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/loadgen.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/query-evidence.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/query-evidence.sh similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/query-evidence.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/query-evidence.sh diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/render_briefing_assets.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/render_briefing_assets.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/render_briefing_assets.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/render_briefing_assets.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/render_capture.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/render_capture.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/render_capture.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/render_capture.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/score.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/score.py similarity index 99% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/score.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/score.py index c7d3161..203bbba 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/score.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/score.py @@ -333,7 +333,7 @@ def main(argv: Optional[Sequence[str]] = None) -> int: if not any(state.capture_status(scenario) for scenario in SCENARIOS): print( "No captured scenario evidence in {0}. Run the s1 steps in " - "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md, " + "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md, " "capture included.".format(evidence_root), file=sys.stderr, ) diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/setup-venv.sh b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/setup-venv.sh similarity index 98% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/setup-venv.sh rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/setup-venv.sh index 4536ed8..8f586f2 100755 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/setup-venv.sh +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/setup-venv.sh @@ -6,7 +6,7 @@ set -euo pipefail # by `-r requirements.txt` at the top of `requirements-dev.txt`), Pillow for # `render_capture.py`'s PNG/GIF rendering, and pytest/httpx for `app/tests`. # The capture step in each scenario guide and -# `docs/labs/azure-monitor/sre-agent-results/index.md`'s +# `docs/services/azure-monitor/azure-sre-agent/results/index.md`'s # notification step both # run under this interpreter. # diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/azd_common_harness.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/azd_common_harness.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/azd_common_harness.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/azd_common_harness.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/azd_fake.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/azd_fake.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/azd_fake.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/azd_fake.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/cleanup_harness.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/cleanup_harness.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/cleanup_harness.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/cleanup_harness.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/deploy_app_harness.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/deploy_app_harness.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/deploy_app_harness.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/deploy_app_harness.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/lab_script_harness.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/lab_script_harness.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/lab_script_harness.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/lab_script_harness.py diff --git a/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/published_layout.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/published_layout.py new file mode 100644 index 0000000..3079352 --- /dev/null +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/published_layout.py @@ -0,0 +1,41 @@ +"""Canonical repository paths for the SRE lab's published documentation.""" + +from __future__ import annotations + +from pathlib import Path + + +REPO_ROOT = Path(__file__).parents[8] +LAB_ROOT = Path(__file__).parents[2] +DOCS_ROOT = REPO_ROOT / "docs" +TOPIC_ROOT = DOCS_ROOT / "services" / "azure-monitor" / "azure-sre-agent" + +README = TOPIC_ROOT / "event-lab" / "index.md" +GUIDE_PATHS = { + "01-agent-setup.md": TOPIC_ROOT / "setup" / "index.md", + "02-scenario-s1.md": TOPIC_ROOT / "scenario-http-500" / "index.md", + "03-scenario-s2.md": TOPIC_ROOT / "scenario-latency" / "index.md", + "04-scenario-s3.md": TOPIC_ROOT / "scenario-blob-permission" / "index.md", + "05-results.md": TOPIC_ROOT / "results" / "index.md", +} + + +class PublishedGuideDirectory: + """Provide the former directory interface over published page bundles.""" + + def __truediv__(self, name: str | Path) -> Path: + return GUIDE_PATHS[str(name)] + + def glob(self, pattern: str): + if pattern != "*.md": + return iter(()) + return iter(GUIDE_PATHS.values()) + + +GUIDES = PublishedGuideDirectory() +RESULTS_GUIDE = GUIDE_PATHS["05-results.md"] +RUNBOOK = TOPIC_ROOT / "incident-runbook" / "index.md" +DYNAMIC_THRESHOLDS = TOPIC_ROOT / "dynamic-thresholds" / "index.md" +VALIDATION_RESULTS = TOPIC_ROOT / "validation-results" / "index.md" +BRIEFING = TOPIC_ROOT / "index.md" +OFFICIAL_ASSETS = LAB_ROOT / "assets" / "official" diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_azd_deploy_app.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_azd_deploy_app.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_azd_deploy_app.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_azd_deploy_app.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_azd_env.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_azd_env.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_azd_env.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_azd_env.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_azd_hooks.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_azd_hooks.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_azd_hooks.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_azd_hooks.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_briefing_assets.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_briefing_assets.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_briefing_assets.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_briefing_assets.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_briefing_docs.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_briefing_docs.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_briefing_docs.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_briefing_docs.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_capture_agent.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_capture_agent.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_capture_agent.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_capture_agent.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_capture_model.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_capture_model.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_capture_model.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_capture_model.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_cleanup_external.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_cleanup_external.py similarity index 99% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_cleanup_external.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_cleanup_external.py index f2c161e..eda3c01 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_cleanup_external.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_cleanup_external.py @@ -419,7 +419,7 @@ def test_cleanup_refuses_malformed_evidence(tmp_path): run = run_cleanup(tmp_path, ["--yes"], raw_evidence="{not json at all") assert run.returncode != 0 - assert "docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md" in run.stderr + assert "docs/services/azure-monitor/azure-sre-agent/setup/index.md" in run.stderr assert "agent-setup.json" in run.stderr assert "role assignment delete" not in run.az_calls diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_common.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_common.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_common.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_common.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_dynamic_threshold_brief.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_dynamic_threshold_brief.py similarity index 98% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_dynamic_threshold_brief.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_dynamic_threshold_brief.py index 05d1825..4fa4b32 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_dynamic_threshold_brief.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_dynamic_threshold_brief.py @@ -5,7 +5,7 @@ from PIL import Image -REPO_ROOT = Path(__file__).parents[6] +REPO_ROOT = Path(__file__).parents[8] BRIEF = REPO_ROOT / "docs" / "research" / "azure-monitor" / "dynamic-thresholds-brief" / "index.md" ASSET = BRIEF.parent / "images" / "dynamic-threshold-preview-chart.png" ARTICLE = "https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-dynamic-thresholds" diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_lab_env.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_lab_env.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_lab_env.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_lab_env.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_lab_state.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_lab_state.py similarity index 98% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_lab_state.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_lab_state.py index 3b2eb1d..799d5d2 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_lab_state.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_lab_state.py @@ -51,9 +51,9 @@ def test_every_scenario_has_a_guide_to_send_an_operator_to(): import lab_state expected = { - "s1": "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md", - "s2": "docs/labs/azure-monitor/sre-agent-scenario-latency/index.md", - "s3": "docs/labs/azure-monitor/sre-agent-scenario-blob-permission/index.md", + "s1": "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md", + "s2": "docs/services/azure-monitor/azure-sre-agent/scenario-latency/index.md", + "s3": "docs/services/azure-monitor/azure-sre-agent/scenario-blob-permission/index.md", } assert lab_state.SCENARIO_GUIDES == expected assert set(lab_state.SCENARIO_GUIDES) == set(lab_state.SCENARIOS) @@ -582,7 +582,7 @@ def test_the_refusal_lists_every_blocker_earliest_first(tmp_path): assert message.index("s2") < message.index("s3"), message assert "running" in message and "failed" in message assert "mark-failed s2" in message - assert "docs/labs/azure-monitor/sre-agent-scenario-blob-permission/index.md" in message + assert "docs/services/azure-monitor/azure-sre-agent/scenario-blob-permission/index.md" in message def test_a_repair_is_refused_while_an_earlier_run_is_still_running(tmp_path): @@ -614,7 +614,7 @@ def test_the_refusal_names_the_blocking_scenario_its_status_and_a_remedy(tmp_pat message = str(refusal.value) assert "s2" in message assert "failed" in message - assert "docs/labs/azure-monitor/sre-agent-scenario-latency/index.md" in message, message + assert "docs/services/azure-monitor/azure-sre-agent/scenario-latency/index.md" in message, message def test_the_refusal_for_a_running_scenario_names_how_to_end_it(tmp_path): @@ -646,7 +646,7 @@ def test_the_ordered_remedy_never_tells_an_operator_to_restart_a_running_run(tmp message = str(refusal.value) assert "s1_recovered" in message - assert "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md" not in message, message + assert "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md" not in message, message assert "mark-failed s1" in message, message @@ -790,16 +790,16 @@ def test_a_conclusion_cannot_be_recorded_against_a_run_that_never_recovered( ( "running", "mark-failed s1", - "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md", + "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md", ), ( "failed", - "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md", + "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md", "mark-failed s1", ), ( None, - "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md", + "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md", "mark-failed s1", ), ), @@ -1233,7 +1233,7 @@ def test_cli_evidence_dir_without_a_run_names_the_command_to_run(tmp_path): result = run_cli(tmp_path / "state.json", ["evidence-dir", "s1"]) assert result.returncode == 1 - assert "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md" in result.stderr + assert "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md" in result.stderr assert "Traceback" not in result.stderr @@ -1307,7 +1307,7 @@ def test_cli_require_run_refuses_every_scenario_while_one_run_is_unfinished(tmp_ assert refused.returncode == 1, refused.stdout assert "s3" in refused.stderr assert "failed" in refused.stderr - assert "docs/labs/azure-monitor/sre-agent-scenario-blob-permission/index.md" in refused.stderr + assert "docs/services/azure-monitor/azure-sre-agent/scenario-blob-permission/index.md" in refused.stderr assert "Traceback" not in refused.stderr assert run_cli(path, ["require-run", "s3"]).returncode == 0 diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_loadgen.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_loadgen.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_loadgen.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_loadgen.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_notifications.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_notifications.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_notifications.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_notifications.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_privacy.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_privacy.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_privacy.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_privacy.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_query_evidence.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_query_evidence.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_query_evidence.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_query_evidence.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_render_capture.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_render_capture.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_render_capture.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_render_capture.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_repo_devcontainer.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_repo_devcontainer.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_repo_devcontainer.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_repo_devcontainer.py diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_repo_readme.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_repo_readme.py similarity index 89% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_repo_readme.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_repo_readme.py index 1995068..7579ec4 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_repo_readme.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_repo_readme.py @@ -4,7 +4,7 @@ ROOT_README = REPO_ROOT / "README.md" -SAMPLE_ROOT = "samples/azure-monitor/source-material/sre-agent-event-lab" +SAMPLE_ROOT = "docs/services/azure-monitor/azure-sre-agent/samples/event-lab" def test_root_readme_routes_readers_to_the_searchable_pages_site(): diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_score.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_score.py similarity index 99% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_score.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_score.py index 98c99cf..e58f3af 100644 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_score.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_score.py @@ -412,5 +412,5 @@ def test_cli_without_any_state_explains_what_to_run_first(tmp_path): result = run_cli(tmp_path) assert result.returncode == 1 - assert "docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md" in result.stderr + assert "docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md" in result.stderr assert "Traceback" not in result.stderr diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_setup_venv.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_setup_venv.py similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/test_setup_venv.py rename to docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_setup_venv.py diff --git a/docs/labs/azure-monitor/sre-agent-scenario-blob-permission/index.md b/docs/services/azure-monitor/azure-sre-agent/scenario-blob-permission/index.md similarity index 97% rename from docs/labs/azure-monitor/sre-agent-scenario-blob-permission/index.md rename to docs/services/azure-monitor/azure-sre-agent/scenario-blob-permission/index.md index c1158e4..83362ef 100644 --- a/docs/labs/azure-monitor/sre-agent-scenario-blob-permission/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/scenario-blob-permission/index.md @@ -21,6 +21,9 @@ tags: - ai-agents - authorization - monitoring +topic_order: 5 +redirect_from: +- labs/azure-monitor/sre-agent-scenario-blob-permission/index.md --- # 04. S3 — Blob 권한 제거 장애 @@ -29,7 +32,7 @@ tags: ## 시작 조건 -- [S2 — 응답 지연](../sre-agent-scenario-latency/index.md)의 S2가 복구되고 캡처가 `conclusion`으로 끝났습니다. +- [S2 — 응답 지연](../scenario-latency/index.md)의 S2가 복구되고 캡처가 `conclusion`으로 끝났습니다. - `evidence/state.json`에 `s2_recovered`와 `s2_captured`가 있습니다. - 다른 시나리오의 실행이 `running`이나 `failed`로 남아 있지 않습니다. S1을 다시 돌리다 실패한 채로 두면 S2 기록이 멀쩡해도 S3는 거부됩니다. - 역할 할당을 만들고 지울 권한이 그대로 있습니다. @@ -41,7 +44,7 @@ tags: Codespaces에서 이 저장소를 열었다면 `az login`을 마친 뒤 아래 한 줄로 이번 실습에 필요한 값이 모두 셸에 준비됩니다. 여기서부터 마지막 `record-capture`까지는 같은 셸에서 실행합니다. ```bash -cd samples/azure-monitor/source-material/sre-agent-event-lab +cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab source ./scripts/lab-env.sh ``` @@ -315,4 +318,4 @@ az role assignment create \ ## 다음 단계 -수집한 근거를 채점합니다: [결과 채점](../sre-agent-results/index.md) +수집한 근거를 채점합니다: [결과 채점](../results/index.md) diff --git a/docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md b/docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md similarity index 95% rename from docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md rename to docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md index 6693443..8db25a9 100644 --- a/docs/labs/azure-monitor/sre-agent-scenario-http-500/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/scenario-http-500/index.md @@ -21,6 +21,9 @@ tags: - ai-agents - troubleshooting - monitoring +topic_order: 3 +redirect_from: +- labs/azure-monitor/sre-agent-scenario-http-500/index.md --- # 02. S1 — HTTP 500 장애 @@ -29,7 +32,7 @@ tags: ## 시작 조건 -- [에이전트 설정](../sre-agent-event-lab-setup/index.md)을 마쳤고 `evidence/state.json`에 `baseline_passed`와 `agent_setup_acknowledged`가 기록되어 있습니다. +- [에이전트 설정](../setup/index.md)을 마쳤고 `evidence/state.json`에 `baseline_passed`와 `agent_setup_acknowledged`가 기록되어 있습니다. - 현재 활성 구독이 azd 환경의 구독과 같습니다. 이 두 가지는 `evidence/state.json`을 통해 강제됩니다. 아래 "수동 실행"의 첫 단계인 `lab_state.py begin-run`이 순서와 중복 실행을 함께 확인합니다. @@ -45,7 +48,7 @@ tags: Codespaces에서 이 저장소를 열었다면 `az login`을 마친 뒤 아래 한 줄로 이번 실습에 필요한 값이 모두 셸에 준비됩니다. 여기서부터 마지막 `record-capture`까지는 같은 셸에서 실행합니다. ```bash -cd samples/azure-monitor/source-material/sre-agent-event-lab +cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab source ./scripts/lab-env.sh ``` @@ -349,9 +352,9 @@ fi | `conclusion-missing` | 조사는 했지만 결론에 도달하지 못했습니다 | 막힙니다 | | `thread-not-created` | 경고가 Agent에 도달하지 못했습니다 | 막힙니다 | -성공은 `conclusion` 하나뿐입니다. 부분 성공은 결론이 나왔지만 내용이 얕은 경우이며, 이때도 상태는 `conclusion`이고 점수는 [결과 채점](../sre-agent-results/index.md)에서 갈립니다. 빈 성공 화면을 만들지 않고 누락 상태와 마지막 확인 시각을 그대로 그림에 남깁니다. +성공은 `conclusion` 하나뿐입니다. 부분 성공은 결론이 나왔지만 내용이 얕은 경우이며, 이때도 상태는 `conclusion`이고 점수는 [결과 채점](../results/index.md)에서 갈립니다. 빈 성공 화면을 만들지 않고 누락 상태와 마지막 확인 시각을 그대로 그림에 남깁니다. -`thread-not-created`가 나오면 [에이전트 설정](../sre-agent-event-lab-setup/index.md)의 incident platform과 응답 계획부터 다시 확인합니다. +`thread-not-created`가 나오면 [에이전트 설정](../setup/index.md)의 incident platform과 응답 계획부터 다시 확인합니다. ## 복구 확인 @@ -372,4 +375,4 @@ azd env get-value AZURE_CONTAINER_APP_FQDN ## 다음 단계 -지연 장애로 넘어갑니다: [S2 — 응답 지연](../sre-agent-scenario-latency/index.md) +지연 장애로 넘어갑니다: [S2 — 응답 지연](../scenario-latency/index.md) diff --git a/docs/labs/azure-monitor/sre-agent-scenario-latency/index.md b/docs/services/azure-monitor/azure-sre-agent/scenario-latency/index.md similarity index 97% rename from docs/labs/azure-monitor/sre-agent-scenario-latency/index.md rename to docs/services/azure-monitor/azure-sre-agent/scenario-latency/index.md index 2b505e2..50925b2 100644 --- a/docs/labs/azure-monitor/sre-agent-scenario-latency/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/scenario-latency/index.md @@ -21,6 +21,9 @@ tags: - ai-agents - latency - monitoring +topic_order: 4 +redirect_from: +- labs/azure-monitor/sre-agent-scenario-latency/index.md --- # 03. S2 — 응답 지연 장애 @@ -29,7 +32,7 @@ tags: ## 시작 조건 -- [S1 — HTTP 500 장애](../sre-agent-scenario-http-500/index.md)의 S1이 복구되고 캡처가 `conclusion`으로 끝났습니다. +- [S1 — HTTP 500 장애](../scenario-http-500/index.md)의 S1이 복구되고 캡처가 `conclusion`으로 끝났습니다. - `evidence/state.json`에 `s1_recovered`와 `s1_captured`가 있습니다. - 다른 시나리오의 실행이 `running`이나 `failed`로 남아 있지 않습니다. 하나라도 남아 있으면 S2도 거부되고, 거부 메시지가 막고 있는 시나리오와 해결 명령을 알려 줍니다. - 워크로드가 정상이고 S1 경고가 해제되어 있습니다. @@ -41,7 +44,7 @@ S1과 같은 구조이며, 바뀌는 것은 주입 값과 부하 조건뿐입니 Codespaces에서 이 저장소를 열었다면 `az login`을 마친 뒤 아래 한 줄로 이번 실습에 필요한 값이 모두 셸에 준비됩니다. 여기서부터 마지막 `record-capture`까지는 같은 셸에서 실행합니다. ```bash -cd samples/azure-monitor/source-material/sre-agent-event-lab +cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab source ./scripts/lab-env.sh ``` @@ -325,4 +328,4 @@ fi ## 다음 단계 -권한 장애로 넘어갑니다: [S3 — Blob 권한 장애](../sre-agent-scenario-blob-permission/index.md) +권한 장애로 넘어갑니다: [S3 — Blob 권한 장애](../scenario-blob-permission/index.md) diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-complete-setup-page.png b/docs/services/azure-monitor/azure-sre-agent/setup/images/portal-complete-setup-page.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-complete-setup-page.png rename to docs/services/azure-monitor/azure-sre-agent/setup/images/portal-complete-setup-page.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-incident-response-plans-list.png b/docs/services/azure-monitor/azure-sre-agent/setup/images/portal-incident-response-plans-list.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-incident-response-plans-list.png rename to docs/services/azure-monitor/azure-sre-agent/setup/images/portal-incident-response-plans-list.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-response-plan-autonomy-step.png b/docs/services/azure-monitor/azure-sre-agent/setup/images/portal-response-plan-autonomy-step.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-response-plan-autonomy-step.png rename to docs/services/azure-monitor/azure-sre-agent/setup/images/portal-response-plan-autonomy-step.png diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-setup-status-bar.png b/docs/services/azure-monitor/azure-sre-agent/setup/images/portal-setup-status-bar.png similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/official/portal-setup-status-bar.png rename to docs/services/azure-monitor/azure-sre-agent/setup/images/portal-setup-status-bar.png diff --git a/docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md b/docs/services/azure-monitor/azure-sre-agent/setup/index.md similarity index 96% rename from docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md rename to docs/services/azure-monitor/azure-sre-agent/setup/index.md index 14c2e43..7fde52e 100644 --- a/docs/labs/azure-monitor/sre-agent-event-lab-setup/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/setup/index.md @@ -21,6 +21,9 @@ tags: - ai-agents - deployment - monitoring +topic_order: 2 +redirect_from: +- labs/azure-monitor/sre-agent-event-lab-setup/index.md --- # 01. Azure SRE Agent 설정 @@ -30,13 +33,13 @@ tags: ## 시작 조건 - **이 저장소를 본인 계정으로 fork했습니다.** Agent에 연결하는 저장소는 fork여야 합니다. 아래 "연결할 원본"에서 설명하듯 조사 결과 이슈가 연결된 저장소에 생성되므로, 원본 저장소를 연결하면 참가자 전원의 이슈가 한곳에 쌓입니다. -- [README](../sre-agent-event-lab/index.md)의 `azd up`이 성공했고 `/healthz`가 HTTP 200을 반환합니다. +- [README](../event-lab/index.md)의 `azd up`이 성공했고 `/healthz`가 HTTP 200을 반환합니다. - `https://sre.azure.com`에 로그인할 수 있고, 대상 구독에 Azure SRE Agent가 **Running** 상태로 하나 있습니다. - 역할을 만들 수 있는 권한(Owner 또는 User Access Administrator)이 있습니다. - 아래 값을 손에 들고 시작합니다. ```bash -cd samples/azure-monitor/source-material/sre-agent-event-lab +cd docs/services/azure-monitor/azure-sre-agent/samples/event-lab source ./scripts/lab-env.sh ``` @@ -62,7 +65,7 @@ Agent를 열면 위쪽 상태 표시줄이 아직 연결하지 않은 데이터 |---|---|---| | Code | **본인이 fork한 저장소**와 브랜치 (`source ./scripts/lab-env.sh`가 출력한 `Repository` 값) | 조사 결론이 코드와 최근 변경을 짚게 합니다 | | Azure resources | `lab-env.sh`가 출력한 `Resource group` 값 | 메트릭·리소스 상태·Activity Log를 읽습니다 | -| Knowledge files | [인시던트 대응 런북](../../../guides/azure-monitor/sre-agent-incident-runbook/index.md) | 조사 순서와 금지 사항을 팀 규칙으로 강제합니다 | +| Knowledge files | [인시던트 대응 런북](../incident-runbook/index.md) | 조사 순서와 금지 사항을 팀 규칙으로 강제합니다 | | Incidents | Azure Monitor | 경고를 자동으로 받아 조사 스레드를 엽니다 | 저장소는 [Connect source code](https://learn.microsoft.com/azure/sre-agent/connect-source-code)로 연결합니다. 이슈·PR 조작까지 맡기려면 [GitHub connector](https://learn.microsoft.com/azure/sre-agent/setup-github-connector)를 추가로 설정하되, 토큰 값은 포털 입력창에만 넣고 이 저장소의 어떤 파일에도 남기지 않습니다. @@ -261,4 +264,4 @@ python3 scripts/lab_state.py acknowledge-agent ## 다음 단계 -첫 장애를 주입합니다: [S1 — HTTP 500 장애](../sre-agent-scenario-http-500/index.md) +첫 장애를 주입합니다: [S1 — HTTP 500 장애](../scenario-http-500/index.md) diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/investigation.gif b/docs/services/azure-monitor/azure-sre-agent/validation-results/images/investigation.gif similarity index 100% rename from samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1-before-bridge/investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/validation-results/images/investigation.gif diff --git a/docs/research/azure-monitor/sre-agent-validation-results/images/s1-investigation.gif b/docs/services/azure-monitor/azure-sre-agent/validation-results/images/s1-investigation.gif similarity index 100% rename from docs/research/azure-monitor/sre-agent-validation-results/images/s1-investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/validation-results/images/s1-investigation.gif diff --git a/docs/research/azure-monitor/sre-agent-validation-results/images/s2-investigation.gif b/docs/services/azure-monitor/azure-sre-agent/validation-results/images/s2-investigation.gif similarity index 100% rename from docs/research/azure-monitor/sre-agent-validation-results/images/s2-investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/validation-results/images/s2-investigation.gif diff --git a/docs/research/azure-monitor/sre-agent-validation-results/images/s3-investigation.gif b/docs/services/azure-monitor/azure-sre-agent/validation-results/images/s3-investigation.gif similarity index 100% rename from docs/research/azure-monitor/sre-agent-validation-results/images/s3-investigation.gif rename to docs/services/azure-monitor/azure-sre-agent/validation-results/images/s3-investigation.gif diff --git a/docs/research/azure-monitor/sre-agent-validation-results/index.md b/docs/services/azure-monitor/azure-sre-agent/validation-results/index.md similarity index 92% rename from docs/research/azure-monitor/sre-agent-validation-results/index.md rename to docs/services/azure-monitor/azure-sre-agent/validation-results/index.md index 0a11046..dd79e2d 100644 --- a/docs/research/azure-monitor/sre-agent-validation-results/index.md +++ b/docs/services/azure-monitor/azure-sre-agent/validation-results/index.md @@ -17,15 +17,18 @@ tags: - monitoring - diagnostics published_at: 2026-08-15 +topic_order: 7 +redirect_from: +- research/azure-monitor/sre-agent-validation-results/index.md --- # Azure SRE Agent 실제 동작 검증 결과 -> 제품 개요와 실사용 패턴은 [Azure SRE Agent 소개 자료](../../../guides/azure-monitor/azure-sre-agent-overview/index.md)를 먼저 참고한다. +> 제품 개요와 실사용 패턴은 [Azure SRE Agent 소개 자료](../index.md)를 먼저 참고한다. > > 이 문서는 S1/S2/S3 시나리오에서 측정한 수치, timeline, evidence, 한계를 정리한다. > -> **기록 시점 주의.** 아래 결과는 azd 재구성 이전에 손으로 구축한 실습(2026-08-12)의 측정치다. 여기 적힌 `rg-sre-agent-event-lab-krc` 같은 리소스 그룹과 리소스 이름, Action Group + Logic App bridge는 모두 그때의 환경이고, 현재 실습의 `azd up`은 이 이름들을 만들지 않는다. 지금 실행하는 절차와 실제로 배포되는 구성은 [현재 실습 문서](../../../labs/azure-monitor/sre-agent-event-lab/index.md)를 따르고, 이 문서는 그 절차로 무엇을 관찰할 수 있었는지 보여 주는 과거 기록으로 읽는다. +> **기록 시점 주의.** 아래 결과는 azd 재구성 이전에 손으로 구축한 실습(2026-08-12)의 측정치다. 여기 적힌 `rg-sre-agent-event-lab-krc` 같은 리소스 그룹과 리소스 이름, Action Group + Logic App bridge는 모두 그때의 환경이고, 현재 실습의 `azd up`은 이 이름들을 만들지 않는다. 지금 실행하는 절차와 실제로 배포되는 구성은 [현재 실습 문서](../event-lab/index.md)를 따르고, 이 문서는 그 절차로 무엇을 관찰할 수 있었는지 보여 주는 과거 기록으로 읽는다. - 실행일: 2026-08-12 | 리전: Korea Central | 구독: 비식별화 - 목표: Azure Monitor 경고를 Azure SRE Agent가 자동 수신해 원인과 안전한 완화책을 올바르게 도출하는지 실증 @@ -137,9 +140,9 @@ published_at: 2026-08-15 ![S1 SRE Agent investigation](images/s1-investigation.gif) -- [결론 frame](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/07-conclusion.png) -- [실제 event timeline](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/timeline.md) -- [Mermaid sequence source](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s1/timeline.mmd) +- [결론 frame](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/07-conclusion.png) +- [실제 event timeline](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/timeline.md) +- [Mermaid sequence source](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s1/timeline.mmd) - 원본 evidence: `monitor/sre-agent-event-lab/evidence/s1-20260812T080606Z/` (Git 제외) - Agent thread: `` @@ -179,9 +182,9 @@ published_at: 2026-08-15 ![S2 SRE Agent investigation](images/s2-investigation.gif) -- [결론 frame](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/07-conclusion.png) -- [실제 event timeline](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/timeline.md) -- [Mermaid sequence source](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s2/timeline.mmd) +- [결론 frame](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/07-conclusion.png) +- [실제 event timeline](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/timeline.md) +- [Mermaid sequence source](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s2/timeline.mmd) - 원본 evidence: `monitor/sre-agent-event-lab/evidence/s2-20260812T081539Z/` (Git 제외) - Agent thread: `` @@ -221,9 +224,9 @@ Container App workload identity의 테스트 Blob container data-plane read 역 ![S3 SRE Agent investigation](images/s3-investigation.gif) -- [결론 frame](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/07-conclusion.png) -- [실제 event timeline](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/timeline.md) -- [Mermaid sequence source](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/sre-agent-event-lab/assets/captures/s3/timeline.mmd) +- [결론 frame](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/07-conclusion.png) +- [실제 event timeline](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/timeline.md) +- [Mermaid sequence source](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/assets/captures/s3/timeline.mmd) - 원본 evidence: `monitor/sre-agent-event-lab/evidence/s3-20260812T084004Z/` (Git 제외) - Agent thread: `` diff --git a/docs/research/azure-hdinsight/kafka-catchup-sku-fetch-benchmark/index.md b/docs/services/azure-monitor/hdinsight-kafka-monitoring/catch-up-benchmark/index.md similarity index 98% rename from docs/research/azure-hdinsight/kafka-catchup-sku-fetch-benchmark/index.md rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/catch-up-benchmark/index.md index 77cdf13..4c86b0f 100644 --- a/docs/research/azure-hdinsight/kafka-catchup-sku-fetch-benchmark/index.md +++ b/docs/services/azure-monitor/hdinsight-kafka-monitoring/catch-up-benchmark/index.md @@ -1,5 +1,6 @@ --- services: +- azure-monitor - azure-hdinsight official_sources: - title: Azure HDInsight documentation @@ -16,6 +17,9 @@ tags: - benchmarking - performance published_at: 2026-07-31 +topic_order: 2 +redirect_from: +- research/azure-hdinsight/kafka-catchup-sku-fetch-benchmark/index.md --- # HDInsight Kafka lag/catch-up 벤치마크 — broker SKU / consumer fetch size @@ -285,8 +289,8 @@ az hdinsight delete -g rg-example-japaneast-01 -n hdi-example-japaneast-01 --yes ## 관련 문서 -- [HDInsight Kafka 모니터링 방식 비교](../../azure-monitor/hdinsight-kafka-monitoring-options/index.md) — Azure Monitor·Log Analytics·Ambari·진단 설정 개요. -- [Prometheus + Grafana 대시보드 구성](../../../guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md) — broker JMX·kafka-exporter(partition별 lag) 대시보드 구성. +- [HDInsight Kafka 모니터링 방식 비교](../index.md) — Azure Monitor·Log Analytics·Ambari·진단 설정 개요. +- [Prometheus + Grafana 대시보드 구성](../prometheus-grafana/index.md) — broker JMX·kafka-exporter(partition별 lag) 대시보드 구성. --- diff --git a/docs/research/azure-monitor/hdinsight-kafka-monitoring-options/images/hdinsight_monitor_integration_1.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/images/hdinsight_monitor_integration_1.png similarity index 100% rename from docs/research/azure-monitor/hdinsight-kafka-monitoring-options/images/hdinsight_monitor_integration_1.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/images/hdinsight_monitor_integration_1.png diff --git a/docs/research/azure-monitor/hdinsight-kafka-monitoring-options/index.md b/docs/services/azure-monitor/hdinsight-kafka-monitoring/index.md similarity index 98% rename from docs/research/azure-monitor/hdinsight-kafka-monitoring-options/index.md rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/index.md index a446f30..d9433ee 100644 --- a/docs/research/azure-monitor/hdinsight-kafka-monitoring-options/index.md +++ b/docs/services/azure-monitor/hdinsight-kafka-monitoring/index.md @@ -17,6 +17,8 @@ tags: - monitoring - observability published_at: 2026-07-10 +redirect_from: +- research/azure-monitor/hdinsight-kafka-monitoring-options/index.md --- # HDInsight Kafka 모니터링 방식 비교 (Ambari / Monitor Integration / JMX Exporter / Kafka Exporter) @@ -28,7 +30,7 @@ published_at: 2026-07-10 > - **노드 리소스 · 클러스터 상태 · 장기 로그** → Ambari + Monitor Integration (HDInsight 기본, 추가 설치 없음) > - **브로커/토픽 처리량 · JVM internals · Consumer Group Lag** → HDInsight 기본 도구 **관측 불가** > - → **JMX Exporter + Kafka Exporter (+Prometheus/Grafana)** 도입 권장 -> - 설치·대시보드 구성: **[Prometheus + Grafana 구성 가이드](../../../guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md)** +> - 설치·대시보드 구성: **[Prometheus + Grafana 구성 가이드](prometheus-grafana/index.md)** ## 1. 관측 항목 → 조회 도구 매핑 @@ -98,7 +100,7 @@ O = 기본 제공 / △ = 조건부·간접 제공 / X = 제공 안 함 ### JMX Exporter / Kafka Exporter (오픈소스, 직접 구성) — 권장 HDInsight 기본 미제공 → 수동 설치. 둘 다 **Prometheus 스크래핑 + Grafana 시각화** 조합. -설치·대시보드: **[Prometheus + Grafana 구성 가이드](../../../guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md)** +설치·대시보드: **[Prometheus + Grafana 구성 가이드](prometheus-grafana/index.md)** - **JMX Exporter** — 브로커 JVM MBean을 Prometheus 형식으로 노출. **JVM internals**(Heap/GC/스레드) + **브로커/토픽/파티션 지표**(BytesIn/Out, Under-Replicated Partitions 등). @@ -238,7 +240,7 @@ HDInsightKafkaMetrics > **권장 목표 상태**: Monitor Integration으로 노드/클러스터 baseline 확보 + > **브로커/토픽 상세·JVM internals·Consumer Lag은 JMX/Kafka Exporter로 관측**. -> → 설치·대시보드: **[Prometheus + Grafana 구성 가이드](../../../guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md)** +> → 설치·대시보드: **[Prometheus + Grafana 구성 가이드](prometheus-grafana/index.md)** --- diff --git a/docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/images/kafka-exporter-adv.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/images/kafka-exporter-adv.png similarity index 100% rename from docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/images/kafka-exporter-adv.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/images/kafka-exporter-adv.png diff --git a/docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/images/kafka-exporter-overview.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/images/kafka-exporter-overview.png similarity index 100% rename from docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/images/kafka-exporter-overview.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/images/kafka-exporter-overview.png diff --git a/docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/images/kafka-jmx-broker.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/images/kafka-jmx-broker.png similarity index 100% rename from docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/images/kafka-jmx-broker.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/images/kafka-jmx-broker.png diff --git a/docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md b/docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/index.md similarity index 84% rename from docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/index.md index 980ff8e..7d27f1c 100644 --- a/docs/guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md +++ b/docs/services/azure-monitor/hdinsight-kafka-monitoring/prometheus-grafana/index.md @@ -22,18 +22,21 @@ tags: - monitoring - observability - deployment +topic_order: 1 +redirect_from: +- guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md --- # HDInsight Kafka JMX Exporter / Kafka Exporter 설치 및 Grafana 대시보드 구성 **전제: HDInsight Kafka 클러스터 + Prometheus + Grafana 기구성.** -도구별 커버 범위·선택 근거("Why") → [HDInsight Kafka 모니터링 방식 비교](../../../research/azure-monitor/hdinsight-kafka-monitoring-options/index.md). +도구별 커버 범위·선택 근거("Why") → [HDInsight Kafka 모니터링 방식 비교](../index.md). > **문서 성격**: JMX Exporter·Kafka Exporter의 정식 사용법은 각 오픈소스 공식 문서([9절 출처](#9)) 기준. > 이 문서는 그 위에서 **HDInsight 환경(원격 JMX 9999, Private Link 등)에 맞춰 실전 구성한 요약본**. > 아래 Grafana 대시보드도 커뮤니티 대시보드(7589) 외에는 **본 환경 지표에 맞춰 개별 구성**한 것 → 참고용, 환경별 조정 필요. -참조 설정·대시보드 파일: [`assets/prometheus-grafana/`](https://github.com/hellices/devguidesample/tree/main/samples/azure-monitor/source-material/assets/prometheus-grafana) +참조 설정·대시보드 파일: [`assets/prometheus-grafana/`](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana) ``` assets/prometheus-grafana/ @@ -122,9 +125,9 @@ for i in 0 1 2; do done ``` -- 변환 룰: [`jmx/kafka-rules.yml`](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/jmx/kafka-rules.yml) +- 변환 룰: [`jmx/kafka-rules.yml`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/jmx/kafka-rules.yml) (처리량 BytesIn/Out·MessagesIn, ReplicaManager URP/ISR, Controller, RequestMetrics 지연, JVM Heap/GC/Thread 등 16개) -- `hostPort`만 브로커별 상이, 룰 내용 동일. 예시: [`jmx/b0.yml.example`](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/jmx/b0.yml.example) +- `hostPort`만 브로커별 상이, 룰 내용 동일. 예시: [`jmx/b0.yml.example`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/jmx/b0.yml.example) ### 3.2 Kafka Exporter (Consumer Lag) @@ -145,7 +148,7 @@ kafka-exporter: ### 3.3 일괄 기동 (docker-compose) -두 Exporter + Prometheus + Grafana 일괄 기동: [`docker-compose.yml`](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/docker-compose.yml). +두 Exporter + Prometheus + Grafana 일괄 기동: [`docker-compose.yml`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/docker-compose.yml). ``, `` 실제 값 치환 후: ```bash @@ -156,7 +159,7 @@ docker compose ps # kafka-exporter, jmx-b0/b1/b2, prometheus, grafana = U ### 3.4 Prometheus 스크래핑 -[`prometheus.yml`](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/prometheus.yml): `kafka-exporter:9308` + +[`prometheus.yml`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/prometheus.yml): `kafka-exporter:9308` + `jmx-b0/b1/b2:9404` 스크래핑. JMX 잡에 `broker` 라벨 부여 → 브로커 구분. **기존 Prometheus 존재 시** 이 `scrape_configs` 두 블록만 추가 후 reload. @@ -168,8 +171,8 @@ docker compose ps # kafka-exporter, jmx-b0/b1/b2, prometheus, grafana = U docker-compose가 Grafana에 자동 주입: -- 데이터소스: [`grafana/provisioning/datasources/prometheus.yml`](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/provisioning/datasources/prometheus.yml) (uid `prometheus`) -- 대시보드 폴더: [`grafana/provisioning/dashboards/provider.yml`](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/provisioning/dashboards/provider.yml) → `Kafka` 폴더 +- 데이터소스: [`grafana/provisioning/datasources/prometheus.yml`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/provisioning/datasources/prometheus.yml) (uid `prometheus`) +- 대시보드 폴더: [`grafana/provisioning/dashboards/provider.yml`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/provisioning/dashboards/provider.yml) → `Kafka` 폴더 - `grafana/dashboards/*.json` 자동 로드 **기존 Grafana 존재 시** 아래 대시보드 Dashboards → Import + 데이터소스 지정. @@ -179,8 +182,8 @@ docker-compose가 Grafana에 자동 주입: | 대시보드 | 출처 | 지표 | |----------|------|---------| | **Kafka Exporter Overview** | Grafana.com **7589** (공식 커뮤니티) | 메시지 생산율, Consumer Group Lag, 토픽 파티션 수 | -| **HDInsight Kafka - Exporter 상세** | 커스텀 ([kafka-exporter-adv.json](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/dashboards/kafka-exporter-adv.json)) | 컨슈머 그룹 **멤버 수(0=컨슈머 다운)**, Lag 상위 파티션, 언더리플리케이션·ISR·브로커별 리더 분포, 토픽별 보관 메시지 수 | -| **HDInsight Kafka - Broker (JMX Exporter)** | 커스텀 ([kafka-jmx-broker.json](https://github.com/hellices/devguidesample/blob/main/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/dashboards/kafka-jmx-broker.json)) | 브로커별 처리량(BytesIn/Out·MessagesIn), URP, ActiveController, 요청 지연, JVM Heap·스레드 | +| **HDInsight Kafka - Exporter 상세** | 커스텀 ([kafka-exporter-adv.json](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/dashboards/kafka-exporter-adv.json)) | 컨슈머 그룹 **멤버 수(0=컨슈머 다운)**, Lag 상위 파티션, 언더리플리케이션·ISR·브로커별 리더 분포, 토픽별 보관 메시지 수 | +| **HDInsight Kafka - Broker (JMX Exporter)** | 커스텀 ([kafka-jmx-broker.json](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/dashboards/kafka-jmx-broker.json)) | 브로커별 처리량(BytesIn/Out·MessagesIn), URP, ActiveController, 요청 지연, JVM Heap·스레드 | **Kafka Exporter Overview(7589)** = 커뮤니티 대시보드 → 파일 아닌 ID로 import. Grafana UI → Dashboards → **Import** → ID `7589` → 데이터소스 `Prometheus`. @@ -204,7 +207,7 @@ Prometheus(`:9090`) 쿼리로 확인. ## 6. 대시보드 화면 -> 렌더링 이미지는 이 문서 번들의 `images/` 디렉터리에 아래 파일명으로 두면 자동 표시됩니다. 원본 자료는 [`samples/azure-monitor/source-material/assets/images/`](https://github.com/hellices/devguidesample/tree/main/samples/azure-monitor/source-material/assets/images)에서 확인할 수 있습니다. +> 렌더링 이미지는 이 문서 번들의 `images/` 디렉터리에 아래 파일명으로 두면 자동 표시됩니다. 원본 자료는 [`samples/monitoring-assets/images/`](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images)에서 확인할 수 있습니다. ### 6.1 Kafka Exporter Overview (7589) diff --git a/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/README.md b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/README.md new file mode 100644 index 0000000..6f47e71 --- /dev/null +++ b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/README.md @@ -0,0 +1,4 @@ +# HDInsight Kafka deployment artifacts + +This artifact sample contains the Bicep templates and generated template used +for the HDInsight Kafka monitoring environment. diff --git a/samples/infrastructure/bicep/main.bicep b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/main.bicep similarity index 100% rename from samples/infrastructure/bicep/main.bicep rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/main.bicep diff --git a/samples/infrastructure/bicep/main.bicepparam b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/main.bicepparam similarity index 100% rename from samples/infrastructure/bicep/main.bicepparam rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/main.bicepparam diff --git a/samples/infrastructure/bicep/main.json b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/main.json similarity index 100% rename from samples/infrastructure/bicep/main.json rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/main.json diff --git a/samples/infrastructure/bicep/modules/monitoring.bicep b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/modules/monitoring.bicep similarity index 100% rename from samples/infrastructure/bicep/modules/monitoring.bicep rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/modules/monitoring.bicep diff --git a/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/sample.yml b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/sample.yml new file mode 100644 index 0000000..990a79c --- /dev/null +++ b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/deployment/sample.yml @@ -0,0 +1,7 @@ +title: HDInsight Kafka deployment artifacts +description: Bicep templates used by the HDInsight Kafka monitoring topic. +kind: artifact +used_by: +- index +- prometheus-grafana +- catch-up-benchmark diff --git a/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/README.md b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/README.md new file mode 100644 index 0000000..db0d880 --- /dev/null +++ b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/README.md @@ -0,0 +1,4 @@ +# HDInsight Kafka monitoring assets + +This artifact sample contains Prometheus and Grafana configuration, Azure +Monitor templates, dashboards, and reference images for the monitoring topic. diff --git a/samples/azure-monitor/source-material/assets/hdinsight-kafka-dashboard.properties.template.json b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/hdinsight-kafka-dashboard.properties.template.json similarity index 100% rename from samples/azure-monitor/source-material/assets/hdinsight-kafka-dashboard.properties.template.json rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/hdinsight-kafka-dashboard.properties.template.json diff --git a/samples/azure-monitor/source-material/assets/hdinsight-kafka-workbook.template.json b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/hdinsight-kafka-workbook.template.json similarity index 100% rename from samples/azure-monitor/source-material/assets/hdinsight-kafka-workbook.template.json rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/hdinsight-kafka-workbook.template.json diff --git a/samples/azure-monitor/source-material/assets/images/hdinsight_monitor_integration_1.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/hdinsight_monitor_integration_1.png similarity index 100% rename from samples/azure-monitor/source-material/assets/images/hdinsight_monitor_integration_1.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/hdinsight_monitor_integration_1.png diff --git a/samples/azure-monitor/source-material/assets/images/kafka-exporter-adv.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/kafka-exporter-adv.png similarity index 100% rename from samples/azure-monitor/source-material/assets/images/kafka-exporter-adv.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/kafka-exporter-adv.png diff --git a/samples/azure-monitor/source-material/assets/images/kafka-exporter-overview.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/kafka-exporter-overview.png similarity index 100% rename from samples/azure-monitor/source-material/assets/images/kafka-exporter-overview.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/kafka-exporter-overview.png diff --git a/samples/azure-monitor/source-material/assets/images/kafka-jmx-broker.png b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/kafka-jmx-broker.png similarity index 100% rename from samples/azure-monitor/source-material/assets/images/kafka-jmx-broker.png rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/images/kafka-jmx-broker.png diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/docker-compose.yml b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/docker-compose.yml similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/docker-compose.yml rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/docker-compose.yml diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/dashboards/kafka-exporter-adv.json b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/dashboards/kafka-exporter-adv.json similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/dashboards/kafka-exporter-adv.json rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/dashboards/kafka-exporter-adv.json diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/dashboards/kafka-jmx-broker.json b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/dashboards/kafka-jmx-broker.json similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/dashboards/kafka-jmx-broker.json rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/dashboards/kafka-jmx-broker.json diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/provisioning/dashboards/provider.yml b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/provisioning/dashboards/provider.yml similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/provisioning/dashboards/provider.yml rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/provisioning/dashboards/provider.yml diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/provisioning/datasources/prometheus.yml b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/provisioning/datasources/prometheus.yml similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/grafana/provisioning/datasources/prometheus.yml rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/grafana/provisioning/datasources/prometheus.yml diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/jmx/b0.yml.example b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/jmx/b0.yml.example similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/jmx/b0.yml.example rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/jmx/b0.yml.example diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/jmx/kafka-rules.yml b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/jmx/kafka-rules.yml similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/jmx/kafka-rules.yml rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/jmx/kafka-rules.yml diff --git a/samples/azure-monitor/source-material/assets/prometheus-grafana/prometheus.yml b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/prometheus.yml similarity index 100% rename from samples/azure-monitor/source-material/assets/prometheus-grafana/prometheus.yml rename to docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/prometheus-grafana/prometheus.yml diff --git a/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/sample.yml b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/sample.yml new file mode 100644 index 0000000..1a8aefc --- /dev/null +++ b/docs/services/azure-monitor/hdinsight-kafka-monitoring/samples/monitoring-assets/sample.yml @@ -0,0 +1,7 @@ +title: HDInsight Kafka monitoring assets +description: Prometheus, Grafana, workbook, dashboard, and reference image assets. +kind: artifact +used_by: +- index +- prometheus-grafana +- catch-up-benchmark diff --git a/docs/research/microsoft-foundry/agent-memory-architecture-patterns/images/02-architecture-patterns.svg b/docs/services/microsoft-foundry/agent-memory/architecture-patterns/images/02-architecture-patterns.svg similarity index 100% rename from docs/research/microsoft-foundry/agent-memory-architecture-patterns/images/02-architecture-patterns.svg rename to docs/services/microsoft-foundry/agent-memory/architecture-patterns/images/02-architecture-patterns.svg diff --git a/docs/research/microsoft-foundry/agent-memory-architecture-patterns/index.md b/docs/services/microsoft-foundry/agent-memory/architecture-patterns/index.md similarity index 96% rename from docs/research/microsoft-foundry/agent-memory-architecture-patterns/index.md rename to docs/services/microsoft-foundry/agent-memory/architecture-patterns/index.md index 9967a61..d942097 100644 --- a/docs/research/microsoft-foundry/agent-memory-architecture-patterns/index.md +++ b/docs/services/microsoft-foundry/agent-memory/architecture-patterns/index.md @@ -16,6 +16,9 @@ tags: - ai-agents - architecture published_at: 2026-08-24 +topic_order: 2 +redirect_from: +- research/microsoft-foundry/agent-memory-architecture-patterns/index.md --- # 02. 아키텍처 패턴 — 어떤 구조로 담을 것인가 @@ -243,7 +246,7 @@ CPU 캐시 계층(L1/L2/메인메모리)에서 착안했다. 접근 빈도·최 | **Phase 3** | + Tiered (HOT/WARM) + Graph-Augmented | 지연·비용이 실제 문제가 되고, 상품·브랜드 관계 추천이 필요해질 때. COLD는 그 다음 | | **Phase 4** | 필요 시 Full Cognitive | 라우터 도입은 저장소가 3개 이상, 오라우팅 모니터링 체계가 갖춰진 후 | -이 Phase 구분은 [06. 커머스 적용 설계 §10 로드맵](../agent-memory-commerce/index.md)과 동일한 기준이다. **티어링을 Phase 2로 당기지 않는 것**이 핵심이다 — 저장소를 나누기 전에 retention 정책과 평가 체계가 먼저 서야 한다. +이 Phase 구분은 [06. 커머스 적용 설계 §10 로드맵](../commerce/index.md)과 동일한 기준이다. **티어링을 Phase 2로 당기지 않는 것**이 핵심이다 — 저장소를 나누기 전에 retention 정책과 평가 체계가 먼저 서야 한다. **Full Cognitive를 처음부터 짓지 말 것.** 이 패턴의 최대 약점으로 지목되는 것이 "오버엔지니어링 위험"이며, 라우터 오분류는 **조용히 실패한다**(데이터가 엉뚱한 저장소에 들어가 영영 검색되지 않음). 자체 프레임워크를 운영 중인 팀이라면 라우팅 계층을 얹기 전에 로깅·평가 체계부터 갖추는 편이 안전하다. @@ -251,8 +254,8 @@ CPU 캐시 계층(L1/L2/메인메모리)에서 착안했다. 접근 빈도·최 ## 다음 문서 -- [03. 파이프라인과 검색](../agent-memory-pipeline-retrieval/index.md) — 각 패턴 내부에서 데이터가 흐르는 방식 -- [05. 프로덕션과 평가](../agent-memory-production-evaluation/index.md) — Tiered 패턴의 운영 구현 +- [03. 파이프라인과 검색](../pipeline-retrieval/index.md) — 각 패턴 내부에서 데이터가 흐르는 방식 +- [05. 프로덕션과 평가](../production-evaluation/index.md) — Tiered 패턴의 운영 구현 --- diff --git a/docs/research/microsoft-foundry/agent-memory-commerce/images/05-commerce-blueprint.svg b/docs/services/microsoft-foundry/agent-memory/commerce/images/05-commerce-blueprint.svg similarity index 100% rename from docs/research/microsoft-foundry/agent-memory-commerce/images/05-commerce-blueprint.svg rename to docs/services/microsoft-foundry/agent-memory/commerce/images/05-commerce-blueprint.svg diff --git a/docs/research/microsoft-foundry/agent-memory-commerce/index.md b/docs/services/microsoft-foundry/agent-memory/commerce/index.md similarity index 99% rename from docs/research/microsoft-foundry/agent-memory-commerce/index.md rename to docs/services/microsoft-foundry/agent-memory/commerce/index.md index 019ae80..a0eb172 100644 --- a/docs/research/microsoft-foundry/agent-memory-commerce/index.md +++ b/docs/services/microsoft-foundry/agent-memory/commerce/index.md @@ -16,6 +16,9 @@ tags: - ai-agents - architecture published_at: 2026-08-24 +topic_order: 6 +redirect_from: +- research/microsoft-foundry/agent-memory-commerce/index.md --- # 06. 커머스 적용 설계 — 실시간 추천과 개인 맞춤 구매 유도 diff --git a/docs/research/microsoft-foundry/agent-memory-frameworks/index.md b/docs/services/microsoft-foundry/agent-memory/frameworks/index.md similarity index 98% rename from docs/research/microsoft-foundry/agent-memory-frameworks/index.md rename to docs/services/microsoft-foundry/agent-memory/frameworks/index.md index b4c6040..4968cfd 100644 --- a/docs/research/microsoft-foundry/agent-memory-frameworks/index.md +++ b/docs/services/microsoft-foundry/agent-memory/frameworks/index.md @@ -16,6 +16,9 @@ tags: - ai-agents - architecture published_at: 2026-08-24 +topic_order: 4 +redirect_from: +- research/microsoft-foundry/agent-memory-frameworks/index.md --- # 04. 프레임워크 · 플랫폼 비교 — 만들 것인가 가져올 것인가 @@ -221,8 +224,8 @@ TTL / Decay 정책 ┃ ## 다음 문서 -- [05. 프로덕션과 평가](../agent-memory-production-evaluation/index.md) -- [06. 커머스 적용 설계](../agent-memory-commerce/index.md) +- [05. 프로덕션과 평가](../production-evaluation/index.md) +- [06. 커머스 적용 설계](../commerce/index.md) --- diff --git a/docs/research/microsoft-foundry/agent-memory-overview/index.md b/docs/services/microsoft-foundry/agent-memory/index.md similarity index 70% rename from docs/research/microsoft-foundry/agent-memory-overview/index.md rename to docs/services/microsoft-foundry/agent-memory/index.md index 57bc232..4d059a1 100644 --- a/docs/research/microsoft-foundry/agent-memory-overview/index.md +++ b/docs/services/microsoft-foundry/agent-memory/index.md @@ -16,6 +16,8 @@ tags: - ai-agents - architecture published_at: 2026-08-24 +redirect_from: +- research/microsoft-foundry/agent-memory-overview/index.md --- # Agent Memory 종합 리서치 @@ -37,34 +39,21 @@ published_at: 2026-08-24 --- -## 문서 구성 - -| 문서 | 내용 | 대상 | -|------|------|------| -| **[01. 메모리 분류 체계](../agent-memory-taxonomy/index.md)** | Agent Memory **8유형 통합 정의**, 유형별 **저장소 선택지**와 Azure 매핑, Retention 정책, 30기법 6패밀리 지도 | 전원 | -| **[02. 아키텍처 패턴](../agent-memory-architecture-patterns/index.md)** | Single-Store / Dual-Store / Tiered / Graph-Augmented / Full Cognitive 5패턴, 비교표, 선택 결정 트리 | 아키텍트 | -| **[03. 파이프라인과 검색](../agent-memory-pipeline-retrieval/index.md)** | 쓰기 경로(추출→중복·모순 해소→라우팅) / 읽기 경로(hybrid search→RRF→rerank→MMR→temporal), 단계별 지연 비용 | 개발자 | -| **[04. 프레임워크 비교](../agent-memory-frameworks/index.md)** | Mem0 · Zep · Graphiti · Letta(MemGPT) · Cognee · Azure AI Search, **자체 구현 vs 도입 판단 기준** | 의사결정자 | -| **[05. 프로덕션과 평가](../agent-memory-production-evaluation/index.md)** | Tiered storage, PII·GDPR, TTL·샤딩·관측성·비용, 평가 지표, LoCoMo/LongMemEval 벤치마크 | SRE / 개발자 | -| **[06. 커머스 적용 설계](../agent-memory-commerce/index.md)** | **메모리 스키마 · 지연 예산 · 개인화 강도 단계화 · 안티패턴 · Phase 0~4 로드맵 · 기술+비즈니스 지표** | 전원 (핵심) | - ---- - ## 다이어그램 | 파일 | 내용 | |------|------| -| [images/01-memory-taxonomy.svg](https://github.com/hellices/devguidesample/blob/main/samples/microsoft-foundry/memory-artifacts/agent-memory/images/01-memory-taxonomy.svg) | 6패밀리 30기법 전체 지도 | -| [images/02-architecture-patterns.svg](https://github.com/hellices/devguidesample/blob/main/samples/microsoft-foundry/memory-artifacts/agent-memory/images/02-architecture-patterns.svg) | 5가지 아키텍처 패턴 비교 | -| [images/03-memory-pipeline.svg](https://github.com/hellices/devguidesample/blob/main/samples/microsoft-foundry/memory-artifacts/agent-memory/images/03-memory-pipeline.svg) | 쓰기 경로 / 읽기 경로 분리 | -| [images/04-production-tiers.svg](https://github.com/hellices/devguidesample/blob/main/samples/microsoft-foundry/memory-artifacts/agent-memory/images/04-production-tiers.svg) | 프로덕션 계층 저장 + 가드레일 | -| [images/05-commerce-blueprint.svg](https://github.com/hellices/devguidesample/blob/main/samples/microsoft-foundry/memory-artifacts/agent-memory/images/05-commerce-blueprint.svg) | B2C 커머스 메모리 블루프린트 | +| [images/01-memory-taxonomy.svg](https://github.com/hellices/devguidesample/blob/main/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/01-memory-taxonomy.svg) | 6패밀리 30기법 전체 지도 | +| [images/02-architecture-patterns.svg](https://github.com/hellices/devguidesample/blob/main/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/02-architecture-patterns.svg) | 5가지 아키텍처 패턴 비교 | +| [images/03-memory-pipeline.svg](https://github.com/hellices/devguidesample/blob/main/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/03-memory-pipeline.svg) | 쓰기 경로 / 읽기 경로 분리 | +| [images/04-production-tiers.svg](https://github.com/hellices/devguidesample/blob/main/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/04-production-tiers.svg) | 프로덕션 계층 저장 + 가드레일 | +| [images/05-commerce-blueprint.svg](https://github.com/hellices/devguidesample/blob/main/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/05-commerce-blueprint.svg) | B2C 커머스 메모리 블루프린트 | --- -## 읽는 순서 +## 목적별 빠른 경로 -**시간이 없다면** → [06. 커머스 적용 설계](../agent-memory-commerce/index.md) 만 읽는다. 나머지 문서의 결론이 여기 수렴한다. +**시간이 없다면** → [06. 커머스 적용 설계](commerce/index.md) 만 읽는다. 나머지 문서의 결론이 여기 수렴한다. **설계를 시작한다면** ``` @@ -88,7 +77,7 @@ published_at: 2026-08-24 | **3** | HOT/WARM 티어링, Structured RAG, Product Graph, 관측성 | 규모에서의 지연·비용 통제 | | **4** | Memory Routing, Procedural, Self-Reflection, COLD 아카이브 | 선택적 고도화 | -상세는 [06. 커머스 적용 설계 §10](../agent-memory-commerce/index.md) 참조. +상세는 [06. 커머스 적용 설계 §10](commerce/index.md) 참조. --- @@ -116,6 +105,6 @@ published_at: 2026-08-24 | 11 | [A Survey on the Memory Mechanism of LLM based Agents (arXiv:2404.13501)](https://arxiv.org/abs/2404.13501) | 학술적 분류 체계 · [정리 저장소](https://github.com/nuster1128/LLM_Agent_Memory_Survey) | | 12 | [GDPR Article 17 — Right to erasure](https://gdpr-info.eu/art-17-gdpr/) | 전 계층 삭제 요구사항 | -> **자료 활용 원칙.** 문서 본문의 서술은 1차 자료 2건을 기준으로 구성했고, 그 안에서 언급되거나 개념의 출처가 되는 논문을 확인해 근거 문헌으로 분리했다. 표의 모든 링크는 실제 접속해 제목·저자·연도를 확인했다. 다만 RRF(SIGIR 2009)와 MMR(SIGIR 1998)은 ACM DL 유료 문헌이라 [03. 파이프라인과 검색](../agent-memory-pipeline-retrieval/index.md)에 서지 정보만 표기했다. +> **자료 활용 원칙.** 문서 본문의 서술은 1차 자료 2건을 기준으로 구성했고, 그 안에서 언급되거나 개념의 출처가 되는 논문을 확인해 근거 문헌으로 분리했다. 표의 모든 링크는 실제 접속해 제목·저자·연도를 확인했다. 다만 RRF(SIGIR 2009)와 MMR(SIGIR 1998)은 ACM DL 유료 문헌이라 [03. 파이프라인과 검색](pipeline-retrieval/index.md)에 서지 정보만 표기했다. 문서별 상세 참고 자료는 각 문서 하단에 있다. diff --git a/docs/research/microsoft-foundry/agent-memory-pipeline-retrieval/images/03-memory-pipeline.svg b/docs/services/microsoft-foundry/agent-memory/pipeline-retrieval/images/03-memory-pipeline.svg similarity index 100% rename from docs/research/microsoft-foundry/agent-memory-pipeline-retrieval/images/03-memory-pipeline.svg rename to docs/services/microsoft-foundry/agent-memory/pipeline-retrieval/images/03-memory-pipeline.svg diff --git a/docs/research/microsoft-foundry/agent-memory-pipeline-retrieval/index.md b/docs/services/microsoft-foundry/agent-memory/pipeline-retrieval/index.md similarity index 97% rename from docs/research/microsoft-foundry/agent-memory-pipeline-retrieval/index.md rename to docs/services/microsoft-foundry/agent-memory/pipeline-retrieval/index.md index a555503..69af8c2 100644 --- a/docs/research/microsoft-foundry/agent-memory-pipeline-retrieval/index.md +++ b/docs/services/microsoft-foundry/agent-memory/pipeline-retrieval/index.md @@ -17,6 +17,9 @@ tags: - ai-agents - architecture published_at: 2026-08-24 +topic_order: 3 +redirect_from: +- research/microsoft-foundry/agent-memory-pipeline-retrieval/index.md --- # 03. 파이프라인과 검색 — 쓰기 경로 / 읽기 경로 @@ -94,7 +97,7 @@ Ebbinghaus 망각 곡선(1885)의 exponential decay를 적용한다. S(t) = S₀ · e^(−λ · t) ``` -- λ가 클수록 빨리 잊는다. **half-life는 도메인과 기억 유형에 따라 수십 분에서 수백 일까지 벌어진다** — 단일 값을 쓰면 안 된다. 유형별 권장치는 [01. 메모리 분류 체계의 Retention 정책 표](../agent-memory-taxonomy/index.md)와 [06. 커머스 적용 설계 §6](../agent-memory-commerce/index.md) 참조 +- λ가 클수록 빨리 잊는다. **half-life는 도메인과 기억 유형에 따라 수십 분에서 수백 일까지 벌어진다** — 단일 값을 쓰면 안 된다. 유형별 권장치는 [01. 메모리 분류 체계의 Retention 정책 표](../taxonomy/index.md)와 [06. 커머스 적용 설계 §6](../commerce/index.md) 참조 - **접근 시 강화(reinforcement)**: 검색될 때마다 강도 부스트 → 자주 유용한 기억은 오래 살아남음 - **프루닝 임계값**: 미만이면 soft delete(아카이브) 또는 hard delete - **저장 압력 모니터**가 임계값을 동적으로 조정 → 용량 한계 근접 시 더 공격적으로 망각 @@ -235,8 +238,8 @@ LLM이 **잘못된 가상 답변**을 생성하면, 검색은 정답이 아니 ## 다음 문서 -- [04. 프레임워크 비교](../agent-memory-frameworks/index.md) — 직접 만들 것인가 가져다 쓸 것인가 -- [05. 프로덕션과 평가](../agent-memory-production-evaluation/index.md) — 이 파이프라인을 규모에서 운영하기 +- [04. 프레임워크 비교](../frameworks/index.md) — 직접 만들 것인가 가져다 쓸 것인가 +- [05. 프로덕션과 평가](../production-evaluation/index.md) — 이 파이프라인을 규모에서 운영하기 --- diff --git a/docs/research/microsoft-foundry/agent-memory-production-evaluation/images/04-production-tiers.svg b/docs/services/microsoft-foundry/agent-memory/production-evaluation/images/04-production-tiers.svg similarity index 100% rename from docs/research/microsoft-foundry/agent-memory-production-evaluation/images/04-production-tiers.svg rename to docs/services/microsoft-foundry/agent-memory/production-evaluation/images/04-production-tiers.svg diff --git a/docs/research/microsoft-foundry/agent-memory-production-evaluation/index.md b/docs/services/microsoft-foundry/agent-memory/production-evaluation/index.md similarity index 97% rename from docs/research/microsoft-foundry/agent-memory-production-evaluation/index.md rename to docs/services/microsoft-foundry/agent-memory/production-evaluation/index.md index 263d33d..3fbb651 100644 --- a/docs/research/microsoft-foundry/agent-memory-production-evaluation/index.md +++ b/docs/services/microsoft-foundry/agent-memory/production-evaluation/index.md @@ -16,6 +16,9 @@ tags: - ai-agents - reliability published_at: 2026-08-24 +topic_order: 5 +redirect_from: +- research/microsoft-foundry/agent-memory-production-evaluation/index.md --- # 05. 프로덕션 운영과 평가 @@ -201,7 +204,7 @@ demote → M턴 미접근 | relevance score 하락 | 세션 종료 | decay sco **1번과 2번을 건너뛰면 이후 모든 최적화가 추측이 된다.** -이 순서는 [06. 커머스 적용 설계 §10 로드맵](../agent-memory-commerce/index.md)의 Phase 0(1~4) → Phase 2(5) → Phase 3(6) → Phase 4(7)에 그대로 대응한다. +이 순서는 [06. 커머스 적용 설계 §10 로드맵](../commerce/index.md)의 Phase 0(1~4) → Phase 2(5) → Phase 3(6) → Phase 4(7)에 그대로 대응한다. --- @@ -222,7 +225,7 @@ demote → M턴 미접근 | relevance score 하락 | 세션 종료 | decay sco ## 다음 문서 -- [06. 커머스 적용 설계](../agent-memory-commerce/index.md) +- [06. 커머스 적용 설계](../commerce/index.md) --- diff --git a/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md new file mode 100644 index 0000000..c150ccb --- /dev/null +++ b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md @@ -0,0 +1,4 @@ +# Agent Memory research artifacts + +This sample contains the editable SVG diagrams referenced by the Agent Memory +topic package. diff --git a/docs/research/microsoft-foundry/agent-memory-taxonomy/images/01-memory-taxonomy.svg b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/01-memory-taxonomy.svg similarity index 100% rename from docs/research/microsoft-foundry/agent-memory-taxonomy/images/01-memory-taxonomy.svg rename to docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/01-memory-taxonomy.svg diff --git a/samples/microsoft-foundry/memory-artifacts/agent-memory/images/02-architecture-patterns.svg b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/02-architecture-patterns.svg similarity index 100% rename from samples/microsoft-foundry/memory-artifacts/agent-memory/images/02-architecture-patterns.svg rename to docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/02-architecture-patterns.svg diff --git a/samples/microsoft-foundry/memory-artifacts/agent-memory/images/03-memory-pipeline.svg b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/03-memory-pipeline.svg similarity index 100% rename from samples/microsoft-foundry/memory-artifacts/agent-memory/images/03-memory-pipeline.svg rename to docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/03-memory-pipeline.svg diff --git a/samples/microsoft-foundry/memory-artifacts/agent-memory/images/04-production-tiers.svg b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/04-production-tiers.svg similarity index 100% rename from samples/microsoft-foundry/memory-artifacts/agent-memory/images/04-production-tiers.svg rename to docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/04-production-tiers.svg diff --git a/samples/microsoft-foundry/memory-artifacts/agent-memory/images/05-commerce-blueprint.svg b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/05-commerce-blueprint.svg similarity index 100% rename from samples/microsoft-foundry/memory-artifacts/agent-memory/images/05-commerce-blueprint.svg rename to docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/images/05-commerce-blueprint.svg diff --git a/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/sample.yml b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/sample.yml new file mode 100644 index 0000000..61fc348 --- /dev/null +++ b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/sample.yml @@ -0,0 +1,11 @@ +title: Agent Memory research artifacts +description: Diagrams supporting the Agent Memory research topic. +kind: artifact +used_by: +- index +- taxonomy +- architecture-patterns +- pipeline-retrieval +- frameworks +- production-evaluation +- commerce diff --git a/samples/microsoft-foundry/memory-artifacts/agent-memory/images/01-memory-taxonomy.svg b/docs/services/microsoft-foundry/agent-memory/taxonomy/images/01-memory-taxonomy.svg similarity index 100% rename from samples/microsoft-foundry/memory-artifacts/agent-memory/images/01-memory-taxonomy.svg rename to docs/services/microsoft-foundry/agent-memory/taxonomy/images/01-memory-taxonomy.svg diff --git a/docs/research/microsoft-foundry/agent-memory-taxonomy/index.md b/docs/services/microsoft-foundry/agent-memory/taxonomy/index.md similarity index 96% rename from docs/research/microsoft-foundry/agent-memory-taxonomy/index.md rename to docs/services/microsoft-foundry/agent-memory/taxonomy/index.md index dec9b91..a4167e4 100644 --- a/docs/research/microsoft-foundry/agent-memory-taxonomy/index.md +++ b/docs/services/microsoft-foundry/agent-memory/taxonomy/index.md @@ -16,6 +16,9 @@ tags: - ai-agents - architecture published_at: 2026-08-24 +topic_order: 1 +redirect_from: +- research/microsoft-foundry/agent-memory-taxonomy/index.md --- # 01. 메모리 분류 체계 — 무엇을 기억할 것인가 @@ -141,7 +144,7 @@ published_at: 2026-08-24 | Procedural / Persona | **No decay**, 버전 관리 | — | | Cold Archive | **Retention period** (규제 기준) | 3~5년 | -관련 개념은 [03. 파이프라인과 검색](../agent-memory-pipeline-retrieval/index.md)에서 Temporal Memory · Forgetting & Decay · Consolidation으로 자세히 다룬다. +관련 개념은 [03. 파이프라인과 검색](../pipeline-retrieval/index.md)에서 Temporal Memory · Forgetting & Decay · Consolidation으로 자세히 다룬다. --- @@ -168,7 +171,7 @@ published_at: 2026-08-24 ## 커머스 관점 우선순위 -실시간 추천 + 개인 맞춤 구매 유도라는 목표에 비춰 기법의 실효 순위를 매기면 다음과 같다. Phase 번호는 [06. 커머스 적용 설계 §10 로드맵](../agent-memory-commerce/index.md)과 같은 기준을 쓴다. +실시간 추천 + 개인 맞춤 구매 유도라는 목표에 비춰 기법의 실효 순위를 매기면 다음과 같다. Phase 번호는 [06. 커머스 적용 설계 §10 로드맵](../commerce/index.md)과 같은 기준을 쓴다. ### 선행 필수 (Phase 0) | 기법 | 이유 | @@ -211,8 +214,8 @@ published_at: 2026-08-24 ## 다음 문서 -- [02. 아키텍처 패턴](../agent-memory-architecture-patterns/index.md) — 이 메모리들을 어떤 구조로 담을 것인가 -- [06. 커머스 적용 설계](../agent-memory-commerce/index.md) — 실시간 추천/구매 유도로 직결되는 설계 +- [02. 아키텍처 패턴](../architecture-patterns/index.md) — 이 메모리들을 어떤 구조로 담을 것인가 +- [06. 커머스 적용 설계](../commerce/index.md) — 실시간 추천/구매 유도로 직결되는 설계 --- diff --git a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/published_layout.py b/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/published_layout.py deleted file mode 100644 index fdd1d63..0000000 --- a/samples/azure-monitor/source-material/sre-agent-event-lab/scripts/tests/published_layout.py +++ /dev/null @@ -1,60 +0,0 @@ -"""Canonical repository paths for the SRE lab's published documentation.""" - -from __future__ import annotations - -from pathlib import Path - - -REPO_ROOT = Path(__file__).parents[6] -LAB_ROOT = Path(__file__).parents[2] -DOCS_ROOT = REPO_ROOT / "docs" - -README = DOCS_ROOT / "labs" / "azure-monitor" / "sre-agent-event-lab" / "index.md" -GUIDE_PATHS = { - "01-agent-setup.md": ( - DOCS_ROOT / "labs" / "azure-monitor" / "sre-agent-event-lab-setup" / "index.md" - ), - "02-scenario-s1.md": ( - DOCS_ROOT / "labs" / "azure-monitor" / "sre-agent-scenario-http-500" / "index.md" - ), - "03-scenario-s2.md": ( - DOCS_ROOT / "labs" / "azure-monitor" / "sre-agent-scenario-latency" / "index.md" - ), - "04-scenario-s3.md": ( - DOCS_ROOT - / "labs" - / "azure-monitor" - / "sre-agent-scenario-blob-permission" - / "index.md" - ), - "05-results.md": ( - DOCS_ROOT / "labs" / "azure-monitor" / "sre-agent-results" / "index.md" - ), -} - - -class PublishedGuideDirectory: - """Provide the former directory interface over published page bundles.""" - - def __truediv__(self, name: str | Path) -> Path: - return GUIDE_PATHS[str(name)] - - def glob(self, pattern: str): - if pattern != "*.md": - return iter(()) - return iter(GUIDE_PATHS.values()) - - -GUIDES = PublishedGuideDirectory() -RESULTS_GUIDE = GUIDE_PATHS["05-results.md"] -RUNBOOK = DOCS_ROOT / "guides" / "azure-monitor" / "sre-agent-incident-runbook" / "index.md" -DYNAMIC_THRESHOLDS = ( - DOCS_ROOT / "guides" / "azure-monitor" / "sre-agent-dynamic-thresholds" / "index.md" -) -VALIDATION_RESULTS = ( - DOCS_ROOT / "research" / "azure-monitor" / "sre-agent-validation-results" / "index.md" -) -BRIEFING = ( - DOCS_ROOT / "guides" / "azure-monitor" / "azure-sre-agent-overview" / "index.md" -) -OFFICIAL_ASSETS = LAB_ROOT / "assets" / "official" diff --git a/tests/docs/test_public_safety.py b/tests/docs/test_public_safety.py index 929184f..7b1866c 100644 --- a/tests/docs/test_public_safety.py +++ b/tests/docs/test_public_safety.py @@ -28,7 +28,7 @@ def test_git_ignores_local_state_without_hiding_shared_inputs(tmp_path: Path) -> "docs/guides/example/.DS_Store", "sim-env.json", "samples/example/sim-env.json", - "samples/azure-monitor/source-material/sre-agent-event-lab/evidence/run.json", + "docs/services/azure-monitor/azure-sre-agent/samples/event-lab/evidence/run.json", *COMPLETED_PLAN_PATHS, } shared_paths = { diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py index bb852e8..45ab8bd 100644 --- a/tests/docs/test_topics.py +++ b/tests/docs/test_topics.py @@ -6,10 +6,17 @@ import pytest import yaml -from scripts.docs.content import DocumentFormatError, validate_document +from scripts.docs.content import ( + DocumentFormatError, + load_taxonomy, + validate_document, +) from scripts.docs.topics import build_topic_catalog +ROOT = Path(__file__).parents[2] + + @pytest.fixture def taxonomy() -> dict: return { @@ -401,3 +408,96 @@ def test_build_topic_catalog_preserves_all_legacy_paths_sharing_one_topic_key( } assert catalog.by_document[guide_path] == topic assert catalog.by_document[lab_path] == topic + + +def test_repository_connected_topics_have_canonical_layout() -> None: + expected = { + ("microsoft-foundry", "agent-memory"): { + "slugs": [ + "index", + "taxonomy", + "architecture-patterns", + "pipeline-retrieval", + "frameworks", + "production-evaluation", + "commerce", + ], + "redirects": [ + "research/microsoft-foundry/agent-memory-overview/index.md", + "research/microsoft-foundry/agent-memory-taxonomy/index.md", + "research/microsoft-foundry/agent-memory-architecture-patterns/index.md", + "research/microsoft-foundry/agent-memory-pipeline-retrieval/index.md", + "research/microsoft-foundry/agent-memory-frameworks/index.md", + "research/microsoft-foundry/agent-memory-production-evaluation/index.md", + "research/microsoft-foundry/agent-memory-commerce/index.md", + ], + }, + ("azure-monitor", "azure-sre-agent"): { + "slugs": [ + "index", + "event-lab", + "setup", + "scenario-http-500", + "scenario-latency", + "scenario-blob-permission", + "results", + "validation-results", + "incident-runbook", + "dynamic-thresholds", + ], + "redirects": [ + "guides/azure-monitor/azure-sre-agent-overview/index.md", + "labs/azure-monitor/sre-agent-event-lab/index.md", + "labs/azure-monitor/sre-agent-event-lab-setup/index.md", + "labs/azure-monitor/sre-agent-scenario-http-500/index.md", + "labs/azure-monitor/sre-agent-scenario-latency/index.md", + "labs/azure-monitor/sre-agent-scenario-blob-permission/index.md", + "labs/azure-monitor/sre-agent-results/index.md", + "research/azure-monitor/sre-agent-validation-results/index.md", + "guides/azure-monitor/sre-agent-incident-runbook/index.md", + "guides/azure-monitor/sre-agent-dynamic-thresholds/index.md", + ], + }, + ("azure-ai-search", "custom-vectorization"): { + "slugs": [ + "index", + "rag-chunking", + "custom-web-api", + "gpu-vllm", + "bge-m3-vs-qwen3", + "a10-vs-t4", + ], + "redirects": [ + "guides/azure-ai-search/custom-embedding-ingestion/index.md", + "research/azure-ai-search/rag-chunking-strategies/index.md", + "guides/azure-ai-search/custom-web-api-vectorization/index.md", + "guides/azure-ai-search/gpu-vllm-rag/index.md", + "research/azure-ai-search/bge-m3-vs-qwen3-embedding/index.md", + "research/azure-ai-search/a10-vs-t4-embedding-benchmark/index.md", + ], + }, + ("azure-monitor", "hdinsight-kafka-monitoring"): { + "slugs": ["index", "prometheus-grafana", "catch-up-benchmark"], + "redirects": [ + "research/azure-monitor/hdinsight-kafka-monitoring-options/index.md", + "guides/azure-monitor/hdinsight-kafka-prometheus-grafana/index.md", + "research/azure-hdinsight/kafka-catchup-sku-fetch-benchmark/index.md", + ], + }, + } + catalog = build_topic_catalog( + ROOT / "docs", load_taxonomy(ROOT / "docs-taxonomy.yml") + ) + + for topic_key, topic_expected in expected.items(): + topic = catalog.topics[topic_key] + slugs = [ + "index" if member == topic.entry else member.relative_path.parts[-2] + for member in topic.members + ] + + assert slugs == topic_expected["slugs"] + assert "topic_order" not in topic.entry.metadata + assert [ + member.metadata.get("redirect_from") for member in topic.members + ] == [[redirect] for redirect in topic_expected["redirects"]] From 54ced8e74664dff643ffcac0359ad2d54a7299d5 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 17:12:02 +0900 Subject: [PATCH 07/12] fix(docs): validate links across mixed layouts Share canonical and legacy public-page discovery with the link validator so migrated topic pages are checked while topic samples remain excluded. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- scripts/docs/content.py | 15 ++++++++++++--- scripts/docs/validate_links.py | 18 ++++++++---------- tests/docs/test_validators.py | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 52 insertions(+), 13 deletions(-) diff --git a/scripts/docs/content.py b/scripts/docs/content.py index 805f7d1..e6c99b7 100644 --- a/scripts/docs/content.py +++ b/scripts/docs/content.py @@ -128,10 +128,10 @@ def _is_canonical_document_path(relative_path: PurePosixPath) -> bool: return all(KEBAB_CASE.fullmatch(slug) for slug in slugs) -def iter_public_documents( +def iter_public_document_paths( docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True -) -> Iterable[Document]: - """Yield page-bundle documents from configured public collections.""" +) -> Iterable[Path]: + """Yield canonical and legacy public page-bundle paths.""" root = Path(docs_dir) candidate_paths: list[Path] = [] @@ -153,6 +153,15 @@ def iter_public_documents( candidate_paths.append(path) for path in sorted(candidate_paths, key=lambda item: item.relative_to(root).as_posix()): + yield path + + +def iter_public_documents( + docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True +) -> Iterable[Document]: + """Yield page-bundle documents from configured public collections.""" + root = Path(docs_dir) + for path in iter_public_document_paths(root, taxonomy, include_legacy=include_legacy): yield load_document(path, docs_dir=root) diff --git a/scripts/docs/validate_links.py b/scripts/docs/validate_links.py index cc5209f..f0c135b 100644 --- a/scripts/docs/validate_links.py +++ b/scripts/docs/validate_links.py @@ -7,7 +7,6 @@ from html.parser import HTMLParser from pathlib import Path import sys -from typing import Any, Iterable, Mapping from urllib.parse import unquote, urlparse from markdown import Markdown @@ -17,7 +16,13 @@ if str(REPO_ROOT) not in sys.path: sys.path.insert(0, str(REPO_ROOT)) -from scripts.docs.content import DocumentFormatError, ValidationResult, load_document, load_taxonomy +from scripts.docs.content import ( + DocumentFormatError, + ValidationResult, + iter_public_document_paths, + load_document, + load_taxonomy, +) @dataclass(frozen=True) @@ -45,13 +50,6 @@ def handle_starttag(self, tag: str, attrs: list[tuple[str, str | None]]) -> None self.links.append(_RenderedLink(target, alt_text)) -def _candidate_paths(docs_dir: Path, taxonomy: Mapping[str, Any]) -> Iterable[Path]: - for config in taxonomy.get("collections", {}).values(): - collection = docs_dir / config["path"] - if collection.is_dir(): - yield from sorted(collection.rglob("index.md")) - - def _resolve_target(page: Path, docs_dir: Path, raw_target: str) -> Path | None: target = raw_target.removeprefix("<").removesuffix(">") if target.startswith("#"): @@ -83,7 +81,7 @@ def validate_repository(repo_root: Path | str) -> ValidationResult: ) errors: list[str] = [] count = 0 - for page in _candidate_paths(docs_dir, taxonomy): + for page in iter_public_document_paths(docs_dir, taxonomy): count += 1 relative = page.relative_to(root).as_posix() try: diff --git a/tests/docs/test_validators.py b/tests/docs/test_validators.py index 1feea3f..227bd9f 100644 --- a/tests/docs/test_validators.py +++ b/tests/docs/test_validators.py @@ -234,6 +234,38 @@ def test_link_gate_reports_invalid_front_matter(tmp_path: Path) -> None: assert any("YAML front matter" in error for error in result.errors) +def test_link_gate_validates_mixed_layout_pages_without_topic_samples( + tmp_path: Path, +) -> None: + root = make_repository(tmp_path) + topic = root / "docs" / "services" / "aks" / "network-diagnosis" + topic.mkdir(parents=True) + (topic / "index.md").write_text( + canonical_guide("Overview"), + encoding="utf-8", + ) + (topic / "setup").mkdir() + (topic / "setup" / "index.md").write_text( + canonical_guide("Setup", topic_order=1) + + "\n[broken canonical link](missing-child.md)\n", + encoding="utf-8", + ) + sample = topic / "samples" / "example" + sample.mkdir(parents=True) + (sample / "index.md").write_text( + canonical_guide("Sample") + "\n[ignored sample link](missing-sample.md)\n", + encoding="utf-8", + ) + + result = validate_links.validate_repository(root) + + assert result.document_count == 3 + assert result.errors == [ + "docs/services/aks/network-diagnosis/setup/index.md: " + "target does not exist: missing-child.md" + ] + + def test_metadata_gate_reports_topic_catalog_errors_once_per_path(tmp_path: Path) -> None: root = make_repository(tmp_path) topic = root / "docs" / "services" / "aks" / "network-diagnosis" From 7bcf0771b459823889593fab25e7417eac878bde Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 17:21:26 +0900 Subject: [PATCH 08/12] refactor(content): colocate documents and samples by topic Move the remaining standalone bundles and owned samples into canonical topic packages, relocate the Oryx fixture, and update redirects and path references. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/oryx-python-build-test.yml | 6 +- .gitignore | 2 +- .../nodejs-file-io-cpu/index.md | 2 + .../eventual-consistency-reindex/index.md | 4 +- .../samples/reproduction/README.md | 4 + .../samples/reproduction}/repro.py | 0 .../samples/reproduction/sample.yml | 5 + .../images/portal_ko_microsoft.png | Bin .../images/portal_standard_lucene.png | Bin .../korean-analyzer-comparison/index.md | 2 + .../samples}/analyzer-comparison/.env.example | 0 .../samples}/analyzer-comparison/.gitignore | 0 .../samples/analyzer-comparison/README.md | 4 + .../analyzer-comparison/analyzer_test.py | 0 .../analyzer-comparison/images/.gitkeep | 0 .../images/index_analyzer_type.png | Bin .../images/portal_ko_microsoft.png | Bin .../images/portal_standard_lucene.png | Bin .../analyzer-comparison/requirements.txt | 0 .../samples/analyzer-comparison/sample.yml | 5 + .../analyzer-comparison/sample_data.json | 0 .../analyzer-comparison/synonym_test.py | 0 .../sse-response-buffering/index.md | 2 + .../waf-path-ip-allowlist/index.md | 2 + .../response-time-optimization/index.md | 2 + .../portal-cli-limitations/index.md | 2 + .../nodejs-client-optimization/index.md | 3 +- .../nodejs-dns-lookup-bottleneck/index.md | 2 + .../point-read-optimization/index.md | 2 + .../blue-green-upgrade/index.md | 2 + .../samples/nodejs-simulation/README.md | 4 + .../samples/nodejs-simulation}/app/Dockerfile | 0 .../nodejs-simulation}/app/dbHandler.js | 0 .../nodejs-simulation}/app/package.json | 0 .../samples/nodejs-simulation}/app/server.js | 0 .../nodejs-simulation}/infra/main.bicep | 0 .../nodejs-simulation}/infra/main.bicepparam | 0 .../nodejs-simulation}/k8s/deployment.yaml | 0 .../nodejs-simulation}/mysql_change.png | Bin .../samples/nodejs-simulation/sample.yml | 5 + .../scripts/01-deploy-infra.ps1 | 0 .../scripts/02-setup-db.ps1 | 0 .../scripts/02b-setup-replication.ps1 | 0 .../scripts/03-build-push.ps1 | 0 .../scripts/04-watch-logs.ps1 | 0 .../nodejs-simulation}/scripts/05-cutover.ps1 | 0 .../scripts/06-rollback-or-cleanup.ps1 | 0 .../scripts/run-3-cutovers.ps1 | 0 .../simulation-architecture.excalidraw | 0 .../simulation-cutover.excalidraw | 0 .../nodejs-read-write-routing/index.md | 2 + .../argocd-image-updater-acr/index.md | 2 + .../authorization-troubleshooting/index.md | 2 + .../cni-overlay-nsg/index.md | 2 + .../file-io-throttling/index.md | 2 + .../kaito-open-source-model/index.md | 2 + .../netapp-files-cpu-io-wait/index.md | 2 + .../pod-affinity-distribution/index.md | 2 + .../images/01_query_latency.png | Bin .../images/02_pod_runtime.png | Bin .../images/pod_db_query_latency.png | Bin .../images/result_01.png | Bin .../images/result_02.png | Bin .../images/result_pod_runtime.png | Bin .../pod-database-query-latency/index.md | 2 + .../observed-results}/01_query_latency.png | Bin .../observed-results}/02_pod_runtime.png | Bin .../samples/observed-results/README.md | 4 + .../pod_db_query_latency.excalidraw | 0 .../pod_db_query_latency.png | Bin .../samples/observed-results}/result_01.png | Bin .../samples/observed-results}/result_02.png | Bin .../observed-results}/result_pod_runtime.png | Bin .../samples/observed-results/sample.yml | 5 + .../pod-scheduling-agent-pools/index.md | 2 + .../images/anf-create-bucket.png | Bin .../images/anf-create-certificate.png | Bin .../pyroscope-anf-s3/images/architecture.png | Bin .../pyroscope-anf-s3/images/pyroscope_ui.png | Bin .../pyroscope-anf-s3/index.md | 6 +- .../pyroscope-chat-profiling/Dockerfile | 0 .../pyroscope-chat-profiling/README.md | 4 + .../samples}/pyroscope-chat-profiling/app.py | 0 .../pyroscope-chat-profiling/deploy.sh | 0 .../pyroscope-chat-profiling/deployment.yaml | 0 .../images/anf-create-bucket.png | Bin .../images/anf-create-certificate.png | Bin .../images/architecture.excalidraw | 0 .../images/architecture.png | Bin .../images/pyroscope_ui.png | Bin .../pyroscope-chat-profiling/requirements.txt | 0 .../pyroscope-chat-profiling/sample.yml | 5 + .../samples}/pyroscope-chat-profiling/test.py | 0 .../images/leak-leaks.png | Bin .../python-memory-leak-memray/index.md | 12 +- .../samples}/memray-leak-profiling/Dockerfile | 0 .../samples/memray-leak-profiling/README.md | 4 + .../samples}/memray-leak-profiling/app.py | 0 .../memray-leak-profiling/debug/Dockerfile | 0 .../k8s/leaky-agent.yaml | 0 .../memray-leak-profiling/k8s/loadgen.yaml | 0 .../samples}/memray-leak-profiling/loadgen.py | 0 .../reports/leak-flamegraph.html | 0 .../reports/leak-leaks.html | 0 .../reports/leak-leaks.png | Bin .../memray-leak-profiling/requirements.txt | 0 .../samples/memray-leak-profiling/sample.yml | 5 + .../remote-cluster-local-development/index.md | 24 +-- .../samples/local-development-loop/README.md | 4 + .../k8s/echo-service.yaml | 0 .../local/local-server.py | 0 .../local/mirrord.json | 0 .../samples/local-development-loop/sample.yml | 5 + .../spot-h100-kaito/index.md | 2 + .../workload-identity-databricks/index.md | 2 + .../images/01-test-list.png | Bin .../images/02-run-summary.png | Bin .../images/03-request-statistics.png | Bin .../images/04-client-side-metrics.png | Bin .../images/05-server-side-metrics.png | Bin .../images/06-engine-health.png | Bin .../images/07-compare-select.png | Bin .../images/08-compare-result.png | Bin .../locust-appgw-aks-private/index.md | 2 + .../cluster-failover-recovery/index.md | 4 +- .../samples/nodejs-cluster/README.md | 4 + .../nodejs-cluster}/cluster_example/README.md | 0 .../cluster_example/healthCheck.js | 0 .../cluster_example/package-lock.json | 0 .../cluster_example/package.json | 0 .../cluster_example/redisClient.js | 0 .../nodejs-cluster}/cluster_example/routes.js | 0 .../nodejs-cluster}/cluster_example/server.js | 0 .../cluster_failover_recovery.excalidraw | 0 .../samples/nodejs-cluster/sample.yml | 5 + .../aks-private-opentelemetry/index.md | 2 + .../samples/event-lab/scripts/lab_state.py | 2 +- .../tests/test_dynamic_threshold_brief.py | 4 +- .../dynamic-threshold-preview-chart.png | Bin .../dynamic-thresholds-brief/index.md | 2 + .../images/ptu_architecture.png | Bin .../adaptive-ptu-load-balancing/index.md | 14 +- .../samples/runbooks/README.md | 3 + .../runbooks}/ptu_architecture.excalidraw | 0 .../samples/runbooks}/ptu_architecture.png | Bin .../samples/runbooks}/render_excalidraw.py | 0 .../runbooks/adaptive_tpm_quota_controller.py | 0 ...optional_adaptive_tpm_quota_controller.ps1 | 0 .../runbooks}/runbooks/requirements.txt | 0 .../samples/runbooks/sample.yml | 5 + .../images/architecture.png | Bin .../mobile-resumable-upload-tus/index.md | 6 +- .../samples/spring-application}/.gitignore | 0 .../samples/spring-application/README.md | 4 + .../architecture.excalidraw | 0 .../spring-application}/architecture.png | Bin .../samples/spring-application}/pom.xml | 0 .../samples/spring-application/sample.yml | 5 + .../scripts/make-test-file.sh | 0 .../spring-application}/scripts/tus_client.py | 0 .../scripts/verify-blob.sh | 0 .../com/example/upload/UploadApplication.java | 0 .../com/example/upload/config/BlobConfig.java | 0 .../com/example/upload/tus/TusController.java | 0 .../com/example/upload/tus/TusFilter.java | 0 .../example/upload/tus/TusUploadService.java | 0 .../src/main/resources/application.yml | 0 .../agent-framework-2026/index.md | 2 + .../samples/research-artifacts/README.md | 5 +- .../codex-closed-network/index.md | 2 + .../foundry-local-air-gapped/index.md | 2 + .../images/hybrid-architecture.png | Bin .../gpt-memory-layer/index.md | 4 +- .../samples/architecture/README.md | 5 + .../hybrid-architecture.excalidraw | 0 .../architecture}/hybrid-architecture.png | Bin .../samples/architecture/sample.yml | 5 + .../source-material/images/01-test-list.png | Bin 312426 -> 0 bytes .../source-material/images/02-run-summary.png | Bin 348938 -> 0 bytes .../images/03-request-statistics.png | Bin 141993 -> 0 bytes .../images/04-client-side-metrics.png | Bin 397803 -> 0 bytes .../images/05-server-side-metrics.png | Bin 206213 -> 0 bytes .../images/06-engine-health.png | Bin 397153 -> 0 bytes .../images/07-compare-select.png | Bin 190242 -> 0 bytes .../images/08-compare-result.png | Bin 342578 -> 0 bytes .../azure-openai/ptu-load-balancing/README.md | 3 - .../memory-artifacts/README.md | 180 ------------------ scripts/docs/validate_public_safety.py | 2 +- tests/docs/test_public_safety.py | 43 +++-- tests/docs/test_topics.py | 97 ++++++++++ .../fixtures/oryx-python-app}/app.py | 0 .../oryx-python-app}/requirements.txt | 0 192 files changed, 331 insertions(+), 243 deletions(-) rename docs/{guides => services}/application-development/nodejs-file-io-cpu/index.md (97%) rename docs/{cases => services}/azure-ai-search/eventual-consistency-reindex/index.md (97%) create mode 100644 docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/README.md rename {samples/azure-ai-search/source-material => docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction}/repro.py (100%) create mode 100644 docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/sample.yml rename docs/{guides => services}/azure-ai-search/korean-analyzer-comparison/images/portal_ko_microsoft.png (100%) rename docs/{guides => services}/azure-ai-search/korean-analyzer-comparison/images/portal_standard_lucene.png (100%) rename docs/{guides => services}/azure-ai-search/korean-analyzer-comparison/index.md (99%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/.env.example (100%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/.gitignore (100%) create mode 100644 docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/README.md rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/analyzer_test.py (100%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/images/.gitkeep (100%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/images/index_analyzer_type.png (100%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/images/portal_ko_microsoft.png (100%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/images/portal_standard_lucene.png (100%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/requirements.txt (100%) create mode 100644 docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/sample.yml rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/sample_data.json (100%) rename {samples/azure-ai-search => docs/services/azure-ai-search/korean-analyzer-comparison/samples}/analyzer-comparison/synonym_test.py (100%) rename docs/{guides => services}/azure-application-gateway/sse-response-buffering/index.md (98%) rename docs/{guides => services}/azure-application-gateway/waf-path-ip-allowlist/index.md (99%) rename docs/{guides => services}/azure-architecture/response-time-optimization/index.md (96%) rename docs/{guides => services}/azure-automation/portal-cli-limitations/index.md (98%) rename docs/{guides => services}/azure-cosmos-db/nodejs-client-optimization/index.md (99%) rename docs/{guides => services}/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md (97%) rename docs/{guides => services}/azure-cosmos-db/point-read-optimization/index.md (99%) rename docs/{guides => services}/azure-database-for-mysql/blue-green-upgrade/index.md (99%) create mode 100644 docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/README.md rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/app/Dockerfile (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/app/dbHandler.js (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/app/package.json (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/app/server.js (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/infra/main.bicep (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/infra/main.bicepparam (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/k8s/deployment.yaml (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/mysql_change.png (100%) create mode 100644 docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/sample.yml rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/01-deploy-infra.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/02-setup-db.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/02b-setup-replication.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/03-build-push.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/04-watch-logs.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/05-cutover.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/06-rollback-or-cleanup.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/scripts/run-3-cutovers.ps1 (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/simulation-architecture.excalidraw (100%) rename {samples/azure-database-for-mysql/source-material/nodejs/simulation => docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation}/simulation-cutover.excalidraw (100%) rename docs/{guides => services}/azure-database-for-mysql/nodejs-read-write-routing/index.md (98%) rename docs/{guides => services}/azure-kubernetes-service/argocd-image-updater-acr/index.md (99%) rename docs/{guides => services}/azure-kubernetes-service/authorization-troubleshooting/index.md (99%) rename docs/{guides => services}/azure-kubernetes-service/cni-overlay-nsg/index.md (99%) rename docs/{cases => services}/azure-kubernetes-service/file-io-throttling/index.md (97%) rename docs/{guides => services}/azure-kubernetes-service/kaito-open-source-model/index.md (99%) rename docs/{cases => services}/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md (99%) rename docs/{guides => services}/azure-kubernetes-service/pod-affinity-distribution/index.md (97%) rename docs/{cases => services}/azure-kubernetes-service/pod-database-query-latency/images/01_query_latency.png (100%) rename docs/{cases => services}/azure-kubernetes-service/pod-database-query-latency/images/02_pod_runtime.png (100%) rename docs/{cases => services}/azure-kubernetes-service/pod-database-query-latency/images/pod_db_query_latency.png (100%) rename docs/{cases => services}/azure-kubernetes-service/pod-database-query-latency/images/result_01.png (100%) rename docs/{cases => services}/azure-kubernetes-service/pod-database-query-latency/images/result_02.png (100%) rename docs/{cases => services}/azure-kubernetes-service/pod-database-query-latency/images/result_pod_runtime.png (100%) rename docs/{cases => services}/azure-kubernetes-service/pod-database-query-latency/index.md (99%) rename {samples/azure-kubernetes-service/source-material/pod_db_query_latency => docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results}/01_query_latency.png (100%) rename {samples/azure-kubernetes-service/source-material/pod_db_query_latency => docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results}/02_pod_runtime.png (100%) create mode 100644 docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/README.md rename {samples/azure-kubernetes-service/source-material/pod_db_query_latency => docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results}/pod_db_query_latency.excalidraw (100%) rename {samples/azure-kubernetes-service/source-material/pod_db_query_latency => docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results}/pod_db_query_latency.png (100%) rename {samples/azure-kubernetes-service/source-material/pod_db_query_latency => docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results}/result_01.png (100%) rename {samples/azure-kubernetes-service/source-material/pod_db_query_latency => docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results}/result_02.png (100%) rename {samples/azure-kubernetes-service/source-material/pod_db_query_latency => docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results}/result_pod_runtime.png (100%) create mode 100644 docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/sample.yml rename docs/{guides => services}/azure-kubernetes-service/pod-scheduling-agent-pools/index.md (97%) rename docs/{guides => services}/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-bucket.png (100%) rename docs/{guides => services}/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-certificate.png (100%) rename docs/{guides => services}/azure-kubernetes-service/pyroscope-anf-s3/images/architecture.png (100%) rename docs/{guides => services}/azure-kubernetes-service/pyroscope-anf-s3/images/pyroscope_ui.png (100%) rename docs/{guides => services}/azure-kubernetes-service/pyroscope-anf-s3/index.md (96%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/Dockerfile (100%) create mode 100644 docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/README.md rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/app.py (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/deploy.sh (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/deployment.yaml (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/images/anf-create-bucket.png (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/images/anf-create-certificate.png (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/images/architecture.excalidraw (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/images/architecture.png (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/images/pyroscope_ui.png (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/requirements.txt (100%) create mode 100644 docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/sample.yml rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples}/pyroscope-chat-profiling/test.py (100%) rename docs/{guides => services}/azure-kubernetes-service/python-memory-leak-memray/images/leak-leaks.png (100%) rename docs/{guides => services}/azure-kubernetes-service/python-memory-leak-memray/index.md (93%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/Dockerfile (100%) create mode 100644 docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/README.md rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/app.py (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/debug/Dockerfile (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/k8s/leaky-agent.yaml (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/k8s/loadgen.yaml (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/loadgen.py (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/reports/leak-flamegraph.html (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/reports/leak-leaks.html (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/reports/leak-leaks.png (100%) rename {samples/azure-kubernetes-service/source-material => docs/services/azure-kubernetes-service/python-memory-leak-memray/samples}/memray-leak-profiling/requirements.txt (100%) create mode 100644 docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/sample.yml rename docs/{guides => services}/azure-kubernetes-service/remote-cluster-local-development/index.md (87%) create mode 100644 docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/README.md rename {samples/azure-kubernetes-service/source-material/local_dev_loop => docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop}/k8s/echo-service.yaml (100%) rename {samples/azure-kubernetes-service/source-material/local_dev_loop => docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop}/local/local-server.py (100%) rename {samples/azure-kubernetes-service/source-material/local_dev_loop => docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop}/local/mirrord.json (100%) create mode 100644 docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/sample.yml rename docs/{guides => services}/azure-kubernetes-service/spot-h100-kaito/index.md (99%) rename docs/{guides => services}/azure-kubernetes-service/workload-identity-databricks/index.md (99%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/01-test-list.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/02-run-summary.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/03-request-statistics.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/04-client-side-metrics.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/05-server-side-metrics.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/06-engine-health.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/07-compare-select.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/images/08-compare-result.png (100%) rename docs/{guides => services}/azure-load-testing/locust-appgw-aks-private/index.md (99%) rename docs/{cases => services}/azure-managed-redis/cluster-failover-recovery/index.md (97%) create mode 100644 docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/README.md rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_example/README.md (100%) rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_example/healthCheck.js (100%) rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_example/package-lock.json (100%) rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_example/package.json (100%) rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_example/redisClient.js (100%) rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_example/routes.js (100%) rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_example/server.js (100%) rename {samples/azure-managed-redis/source-material/nodejs => docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster}/cluster_failover_recovery.excalidraw (100%) create mode 100644 docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/sample.yml rename docs/{guides => services}/azure-monitor/aks-private-opentelemetry/index.md (99%) rename docs/{research => services}/azure-monitor/dynamic-thresholds-brief/images/dynamic-threshold-preview-chart.png (100%) rename docs/{research => services}/azure-monitor/dynamic-thresholds-brief/index.md (98%) rename docs/{guides => services}/azure-openai/adaptive-ptu-load-balancing/images/ptu_architecture.png (100%) rename docs/{guides => services}/azure-openai/adaptive-ptu-load-balancing/index.md (95%) create mode 100644 docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/README.md rename {samples/azure-openai/ptu-load-balancing => docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks}/ptu_architecture.excalidraw (100%) rename {samples/azure-openai/ptu-load-balancing => docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks}/ptu_architecture.png (100%) rename {samples/azure-openai/ptu-load-balancing => docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks}/render_excalidraw.py (100%) rename {samples/azure-openai/ptu-load-balancing => docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks}/runbooks/adaptive_tpm_quota_controller.py (100%) rename {samples/azure-openai/ptu-load-balancing => docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks}/runbooks/optional_adaptive_tpm_quota_controller.ps1 (100%) rename {samples/azure-openai/ptu-load-balancing => docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks}/runbooks/requirements.txt (100%) create mode 100644 docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/sample.yml rename docs/{guides => services}/azure-storage/mobile-resumable-upload-tus/images/architecture.png (100%) rename docs/{guides => services}/azure-storage/mobile-resumable-upload-tus/index.md (97%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/.gitignore (100%) create mode 100644 docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/README.md rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/architecture.excalidraw (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/architecture.png (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/pom.xml (100%) create mode 100644 docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/sample.yml rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/scripts/make-test-file.sh (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/scripts/tus_client.py (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/scripts/verify-blob.sh (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/src/main/java/com/example/upload/UploadApplication.java (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/src/main/java/com/example/upload/config/BlobConfig.java (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/src/main/java/com/example/upload/tus/TusController.java (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/src/main/java/com/example/upload/tus/TusFilter.java (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/src/main/java/com/example/upload/tus/TusUploadService.java (100%) rename {samples/azure-storage/source-material/spring-resumable-upload => docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application}/src/main/resources/application.yml (100%) rename docs/{research => services}/microsoft-foundry/agent-framework-2026/index.md (99%) rename docs/{guides => services}/microsoft-foundry/codex-closed-network/index.md (98%) rename docs/{guides => services}/microsoft-foundry/foundry-local-air-gapped/index.md (99%) rename docs/{guides => services}/microsoft-foundry/gpt-memory-layer/images/hybrid-architecture.png (100%) rename docs/{guides => services}/microsoft-foundry/gpt-memory-layer/index.md (98%) create mode 100644 docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/README.md rename {samples/microsoft-foundry/memory-artifacts => docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture}/hybrid-architecture.excalidraw (100%) rename {samples/microsoft-foundry/memory-artifacts => docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture}/hybrid-architecture.png (100%) create mode 100644 docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/sample.yml delete mode 100644 samples/azure-load-testing/source-material/images/01-test-list.png delete mode 100644 samples/azure-load-testing/source-material/images/02-run-summary.png delete mode 100644 samples/azure-load-testing/source-material/images/03-request-statistics.png delete mode 100644 samples/azure-load-testing/source-material/images/04-client-side-metrics.png delete mode 100644 samples/azure-load-testing/source-material/images/05-server-side-metrics.png delete mode 100644 samples/azure-load-testing/source-material/images/06-engine-health.png delete mode 100644 samples/azure-load-testing/source-material/images/07-compare-select.png delete mode 100644 samples/azure-load-testing/source-material/images/08-compare-result.png delete mode 100644 samples/azure-openai/ptu-load-balancing/README.md delete mode 100644 samples/microsoft-foundry/memory-artifacts/README.md rename {samples/azure-app-service/oryx-test => tests/fixtures/oryx-python-app}/app.py (100%) rename {samples/azure-app-service/oryx-test => tests/fixtures/oryx-python-app}/requirements.txt (100%) diff --git a/.github/workflows/oryx-python-build-test.yml b/.github/workflows/oryx-python-build-test.yml index 5f1240c..f1a7b7b 100644 --- a/.github/workflows/oryx-python-build-test.yml +++ b/.github/workflows/oryx-python-build-test.yml @@ -3,7 +3,7 @@ name: Oryx Python 3.11 Build Test on: push: paths: - - 'samples/azure-app-service/oryx-test/**' + - 'tests/fixtures/oryx-python-app/**' - '.github/workflows/oryx-python-build-test.yml' workflow_dispatch: @@ -20,7 +20,7 @@ jobs: - name: Oryx build Python 3.11 run: | docker run --rm \ - -v ${{ github.workspace }}/samples/azure-app-service/oryx-test:/app \ + -v ${{ github.workspace }}/tests/fixtures/oryx-python-app:/app \ mcr.microsoft.com/oryx/build:github-actions-debian-bullseye \ oryx build /app \ --platform python \ @@ -29,4 +29,4 @@ jobs: - name: Verify build output run: | echo "=== Build output ===" - ls -la ./samples/azure-app-service/oryx-test/ + ls -la ./tests/fixtures/oryx-python-app/ diff --git a/.gitignore b/.gitignore index e4f5233..1fbe0ff 100644 --- a/.gitignore +++ b/.gitignore @@ -15,6 +15,6 @@ __pycache__/ site/ .worktrees/ .superpowers/ -docs/services/azure-monitor/azure-sre-agent/samples/event-lab/evidence/ +docs/services/**/samples/**/evidence/ /project/plans/2026-09-12-public-github-pages.md /project/specs/2026-09-12-public-github-pages-design.md diff --git a/docs/guides/application-development/nodejs-file-io-cpu/index.md b/docs/services/application-development/nodejs-file-io-cpu/index.md similarity index 97% rename from docs/guides/application-development/nodejs-file-io-cpu/index.md rename to docs/services/application-development/nodejs-file-io-cpu/index.md index 60327b2..25c276b 100644 --- a/docs/guides/application-development/nodejs-file-io-cpu/index.md +++ b/docs/services/application-development/nodejs-file-io-cpu/index.md @@ -20,6 +20,8 @@ tags: - performance - diagnostics - development +redirect_from: +- guides/application-development/nodejs-file-io-cpu/index.md --- # Node.js 서버 CPU 오버헤드 분석 및 개선 방안 diff --git a/docs/cases/azure-ai-search/eventual-consistency-reindex/index.md b/docs/services/azure-ai-search/eventual-consistency-reindex/index.md similarity index 97% rename from docs/cases/azure-ai-search/eventual-consistency-reindex/index.md rename to docs/services/azure-ai-search/eventual-consistency-reindex/index.md index ab12d5e..0f088ea 100644 --- a/docs/cases/azure-ai-search/eventual-consistency-reindex/index.md +++ b/docs/services/azure-ai-search/eventual-consistency-reindex/index.md @@ -16,6 +16,8 @@ tags: - reliability - troubleshooting occurred_at: 2026-04-17 +redirect_from: +- cases/azure-ai-search/eventual-consistency-reindex/index.md --- # Azure AI Search 버전 기반 재색인의 Eventual Consistency 이슈 @@ -171,7 +173,7 @@ Step 3가 완전히 결정적이 되고 replica lag의 영향을 받지 않습 ## 직접 재현해 보기 -자급식 재현 스크립트: [repro.py](https://github.com/hellices/devguidesample/blob/main/samples/azure-ai-search/source-material/repro.py). Azure AI Search 서비스가 미리 준비되어 있어야 합니다. +자급식 재현 스크립트: [repro.py](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/repro.py). Azure AI Search 서비스가 미리 준비되어 있어야 합니다. ```bash # 1. Azure AI Search 서비스 생성 (35k 문서면 Basic 도 충분. diff --git a/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/README.md b/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/README.md new file mode 100644 index 0000000..2078106 --- /dev/null +++ b/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/README.md @@ -0,0 +1,4 @@ +# Eventual consistency reproduction + +Run `repro.py` against an Azure AI Search service to reproduce the indexing +and reindexing behavior described by the case. diff --git a/samples/azure-ai-search/source-material/repro.py b/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/repro.py similarity index 100% rename from samples/azure-ai-search/source-material/repro.py rename to docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/repro.py diff --git a/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/sample.yml b/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/sample.yml new file mode 100644 index 0000000..3aa19f5 --- /dev/null +++ b/docs/services/azure-ai-search/eventual-consistency-reindex/samples/reproduction/sample.yml @@ -0,0 +1,5 @@ +title: Eventual consistency reproduction +description: Runnable script that reproduces the indexing consistency scenario. +kind: runnable +used_by: +- index diff --git a/docs/guides/azure-ai-search/korean-analyzer-comparison/images/portal_ko_microsoft.png b/docs/services/azure-ai-search/korean-analyzer-comparison/images/portal_ko_microsoft.png similarity index 100% rename from docs/guides/azure-ai-search/korean-analyzer-comparison/images/portal_ko_microsoft.png rename to docs/services/azure-ai-search/korean-analyzer-comparison/images/portal_ko_microsoft.png diff --git a/docs/guides/azure-ai-search/korean-analyzer-comparison/images/portal_standard_lucene.png b/docs/services/azure-ai-search/korean-analyzer-comparison/images/portal_standard_lucene.png similarity index 100% rename from docs/guides/azure-ai-search/korean-analyzer-comparison/images/portal_standard_lucene.png rename to docs/services/azure-ai-search/korean-analyzer-comparison/images/portal_standard_lucene.png diff --git a/docs/guides/azure-ai-search/korean-analyzer-comparison/index.md b/docs/services/azure-ai-search/korean-analyzer-comparison/index.md similarity index 99% rename from docs/guides/azure-ai-search/korean-analyzer-comparison/index.md rename to docs/services/azure-ai-search/korean-analyzer-comparison/index.md index 3178adb..11b6365 100644 --- a/docs/guides/azure-ai-search/korean-analyzer-comparison/index.md +++ b/docs/services/azure-ai-search/korean-analyzer-comparison/index.md @@ -19,6 +19,8 @@ technologies: tags: - diagnostics - performance +redirect_from: +- guides/azure-ai-search/korean-analyzer-comparison/index.md --- # Azure AI Search 한국어 분석기(Analyzer) 비교 가이드 diff --git a/samples/azure-ai-search/analyzer-comparison/.env.example b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/.env.example similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/.env.example rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/.env.example diff --git a/samples/azure-ai-search/analyzer-comparison/.gitignore b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/.gitignore similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/.gitignore rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/.gitignore diff --git a/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/README.md b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/README.md new file mode 100644 index 0000000..8256dfe --- /dev/null +++ b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/README.md @@ -0,0 +1,4 @@ +# Korean analyzer comparison + +Runnable Python checks, sample data, and captured portal images used to compare +Korean analyzers and synonym behavior. diff --git a/samples/azure-ai-search/analyzer-comparison/analyzer_test.py b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/analyzer_test.py similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/analyzer_test.py rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/analyzer_test.py diff --git a/samples/azure-ai-search/analyzer-comparison/images/.gitkeep b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/.gitkeep similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/images/.gitkeep rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/.gitkeep diff --git a/samples/azure-ai-search/analyzer-comparison/images/index_analyzer_type.png b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/index_analyzer_type.png similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/images/index_analyzer_type.png rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/index_analyzer_type.png diff --git a/samples/azure-ai-search/analyzer-comparison/images/portal_ko_microsoft.png b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/portal_ko_microsoft.png similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/images/portal_ko_microsoft.png rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/portal_ko_microsoft.png diff --git a/samples/azure-ai-search/analyzer-comparison/images/portal_standard_lucene.png b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/portal_standard_lucene.png similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/images/portal_standard_lucene.png rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/images/portal_standard_lucene.png diff --git a/samples/azure-ai-search/analyzer-comparison/requirements.txt b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/requirements.txt similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/requirements.txt rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/requirements.txt diff --git a/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/sample.yml b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/sample.yml new file mode 100644 index 0000000..0bf62fa --- /dev/null +++ b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/sample.yml @@ -0,0 +1,5 @@ +title: Korean analyzer comparison +description: Runnable analyzer and synonym comparison scripts with sample data. +kind: runnable +used_by: +- index diff --git a/samples/azure-ai-search/analyzer-comparison/sample_data.json b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/sample_data.json similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/sample_data.json rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/sample_data.json diff --git a/samples/azure-ai-search/analyzer-comparison/synonym_test.py b/docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/synonym_test.py similarity index 100% rename from samples/azure-ai-search/analyzer-comparison/synonym_test.py rename to docs/services/azure-ai-search/korean-analyzer-comparison/samples/analyzer-comparison/synonym_test.py diff --git a/docs/guides/azure-application-gateway/sse-response-buffering/index.md b/docs/services/azure-application-gateway/sse-response-buffering/index.md similarity index 98% rename from docs/guides/azure-application-gateway/sse-response-buffering/index.md rename to docs/services/azure-application-gateway/sse-response-buffering/index.md index 70d8ffb..e83b8c2 100644 --- a/docs/guides/azure-application-gateway/sse-response-buffering/index.md +++ b/docs/services/azure-application-gateway/sse-response-buffering/index.md @@ -19,6 +19,8 @@ technologies: tags: - networking - performance +redirect_from: +- guides/azure-application-gateway/sse-response-buffering/index.md --- # Application Gateway SSE 통신 시 Response Buffer 비활성화 가이드 diff --git a/docs/guides/azure-application-gateway/waf-path-ip-allowlist/index.md b/docs/services/azure-application-gateway/waf-path-ip-allowlist/index.md similarity index 99% rename from docs/guides/azure-application-gateway/waf-path-ip-allowlist/index.md rename to docs/services/azure-application-gateway/waf-path-ip-allowlist/index.md index 63d6d14..cb54a78 100644 --- a/docs/guides/azure-application-gateway/waf-path-ip-allowlist/index.md +++ b/docs/services/azure-application-gateway/waf-path-ip-allowlist/index.md @@ -19,6 +19,8 @@ technologies: tags: - security - networking +redirect_from: +- guides/azure-application-gateway/waf-path-ip-allowlist/index.md --- # Application Gateway WAF: 경로 기반 IP 화이트리스트 설정 가이드 diff --git a/docs/guides/azure-architecture/response-time-optimization/index.md b/docs/services/azure-architecture/response-time-optimization/index.md similarity index 96% rename from docs/guides/azure-architecture/response-time-optimization/index.md rename to docs/services/azure-architecture/response-time-optimization/index.md index 1221d37..f4c0296 100644 --- a/docs/guides/azure-architecture/response-time-optimization/index.md +++ b/docs/services/azure-architecture/response-time-optimization/index.md @@ -20,6 +20,8 @@ tags: - architecture - latency - performance +redirect_from: +- guides/azure-architecture/response-time-optimization/index.md --- # 응답속도 최적화를 위한 azure architect 고려사항 diff --git a/docs/guides/azure-automation/portal-cli-limitations/index.md b/docs/services/azure-automation/portal-cli-limitations/index.md similarity index 98% rename from docs/guides/azure-automation/portal-cli-limitations/index.md rename to docs/services/azure-automation/portal-cli-limitations/index.md index 07cc0db..471e7cc 100644 --- a/docs/guides/azure-automation/portal-cli-limitations/index.md +++ b/docs/services/azure-automation/portal-cli-limitations/index.md @@ -20,6 +20,8 @@ technologies: tags: - troubleshooting - development +redirect_from: +- guides/azure-automation/portal-cli-limitations/index.md --- # Azure Automation - 포탈/CLI 제한사항 및 우회 방법 diff --git a/docs/guides/azure-cosmos-db/nodejs-client-optimization/index.md b/docs/services/azure-cosmos-db/nodejs-client-optimization/index.md similarity index 99% rename from docs/guides/azure-cosmos-db/nodejs-client-optimization/index.md rename to docs/services/azure-cosmos-db/nodejs-client-optimization/index.md index f7aa0e1..376c3ba 100644 --- a/docs/guides/azure-cosmos-db/nodejs-client-optimization/index.md +++ b/docs/services/azure-cosmos-db/nodejs-client-optimization/index.md @@ -20,6 +20,8 @@ technologies: tags: - performance - development +redirect_from: +- guides/azure-cosmos-db/nodejs-client-optimization/index.md --- # CosmosDB Client 최적화 방안 @@ -243,4 +245,3 @@ app.post('/users', async (req, res) => { ## 참고 자료 - [Cosmos DB Connection Policy](https://learn.microsoft.com/javascript/api/@azure/cosmos/connectionpolicy) - diff --git a/docs/guides/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md b/docs/services/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md similarity index 97% rename from docs/guides/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md rename to docs/services/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md index f864ad5..940186e 100644 --- a/docs/guides/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md +++ b/docs/services/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md @@ -21,6 +21,8 @@ tags: - networking - performance - troubleshooting +redirect_from: +- guides/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md --- # **Cosmos DB 연속 쿼리 시 DNS Lookup 병목 최적화 가이드** diff --git a/docs/guides/azure-cosmos-db/point-read-optimization/index.md b/docs/services/azure-cosmos-db/point-read-optimization/index.md similarity index 99% rename from docs/guides/azure-cosmos-db/point-read-optimization/index.md rename to docs/services/azure-cosmos-db/point-read-optimization/index.md index bec7471..dd3af02 100644 --- a/docs/guides/azure-cosmos-db/point-read-optimization/index.md +++ b/docs/services/azure-cosmos-db/point-read-optimization/index.md @@ -20,6 +20,8 @@ technologies: tags: - performance - latency +redirect_from: +- guides/azure-cosmos-db/point-read-optimization/index.md --- # CosmosDB Point Read를 활용한 트래픽 및 Latency 최적화 전략 diff --git a/docs/guides/azure-database-for-mysql/blue-green-upgrade/index.md b/docs/services/azure-database-for-mysql/blue-green-upgrade/index.md similarity index 99% rename from docs/guides/azure-database-for-mysql/blue-green-upgrade/index.md rename to docs/services/azure-database-for-mysql/blue-green-upgrade/index.md index 94b0420..77d978a 100644 --- a/docs/guides/azure-database-for-mysql/blue-green-upgrade/index.md +++ b/docs/services/azure-database-for-mysql/blue-green-upgrade/index.md @@ -22,6 +22,8 @@ tags: - migration - high-availability - reliability +redirect_from: +- guides/azure-database-for-mysql/blue-green-upgrade/index.md --- # Azure MySQL 무중단 업그레이드: Blue/Green 전략 구현 (AKS + Node.js mysql2 PoolCluster) diff --git a/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/README.md b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/README.md new file mode 100644 index 0000000..2f675d3 --- /dev/null +++ b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/README.md @@ -0,0 +1,4 @@ +# Node.js blue-green upgrade simulation + +This runnable sample contains the application, infrastructure, Kubernetes +manifest, and operational scripts for the blue-green upgrade simulation. diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/app/Dockerfile b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/Dockerfile similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/app/Dockerfile rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/Dockerfile diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/app/dbHandler.js b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/dbHandler.js similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/app/dbHandler.js rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/dbHandler.js diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/app/package.json b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/package.json similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/app/package.json rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/package.json diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/app/server.js b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/server.js similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/app/server.js rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/app/server.js diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/infra/main.bicep b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/infra/main.bicep similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/infra/main.bicep rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/infra/main.bicep diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/infra/main.bicepparam b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/infra/main.bicepparam similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/infra/main.bicepparam rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/infra/main.bicepparam diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/k8s/deployment.yaml b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/k8s/deployment.yaml similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/k8s/deployment.yaml rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/k8s/deployment.yaml diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/mysql_change.png b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/mysql_change.png similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/mysql_change.png rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/mysql_change.png diff --git a/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/sample.yml b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/sample.yml new file mode 100644 index 0000000..9c65890 --- /dev/null +++ b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/sample.yml @@ -0,0 +1,5 @@ +title: Node.js blue-green upgrade simulation +description: Runnable application and deployment assets for upgrade rehearsals. +kind: runnable +used_by: +- index diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/01-deploy-infra.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/01-deploy-infra.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/01-deploy-infra.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/01-deploy-infra.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/02-setup-db.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/02-setup-db.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/02-setup-db.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/02-setup-db.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/02b-setup-replication.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/02b-setup-replication.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/02b-setup-replication.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/02b-setup-replication.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/03-build-push.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/03-build-push.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/03-build-push.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/03-build-push.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/04-watch-logs.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/04-watch-logs.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/04-watch-logs.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/04-watch-logs.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/05-cutover.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/05-cutover.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/05-cutover.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/05-cutover.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/06-rollback-or-cleanup.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/06-rollback-or-cleanup.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/06-rollback-or-cleanup.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/06-rollback-or-cleanup.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/run-3-cutovers.ps1 b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/run-3-cutovers.ps1 similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/scripts/run-3-cutovers.ps1 rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/scripts/run-3-cutovers.ps1 diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/simulation-architecture.excalidraw b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/simulation-architecture.excalidraw similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/simulation-architecture.excalidraw rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/simulation-architecture.excalidraw diff --git a/samples/azure-database-for-mysql/source-material/nodejs/simulation/simulation-cutover.excalidraw b/docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/simulation-cutover.excalidraw similarity index 100% rename from samples/azure-database-for-mysql/source-material/nodejs/simulation/simulation-cutover.excalidraw rename to docs/services/azure-database-for-mysql/blue-green-upgrade/samples/nodejs-simulation/simulation-cutover.excalidraw diff --git a/docs/guides/azure-database-for-mysql/nodejs-read-write-routing/index.md b/docs/services/azure-database-for-mysql/nodejs-read-write-routing/index.md similarity index 98% rename from docs/guides/azure-database-for-mysql/nodejs-read-write-routing/index.md rename to docs/services/azure-database-for-mysql/nodejs-read-write-routing/index.md index 217cde1..b1d9ed9 100644 --- a/docs/guides/azure-database-for-mysql/nodejs-read-write-routing/index.md +++ b/docs/services/azure-database-for-mysql/nodejs-read-write-routing/index.md @@ -21,6 +21,8 @@ tags: - high-availability - performance - development +redirect_from: +- guides/azure-database-for-mysql/nodejs-read-write-routing/index.md --- 아래는 **Node.js에서 mysql2를 사용해 Azure Database for MySQL Flexible Server를 Primary(쓰기) + Replica(읽기) 구성 시 적용할 수 있는 한글 가이드**입니다. Microsoft Learn 공식 문서 링크도 포함했습니다. diff --git a/docs/guides/azure-kubernetes-service/argocd-image-updater-acr/index.md b/docs/services/azure-kubernetes-service/argocd-image-updater-acr/index.md similarity index 99% rename from docs/guides/azure-kubernetes-service/argocd-image-updater-acr/index.md rename to docs/services/azure-kubernetes-service/argocd-image-updater-acr/index.md index 4560d14..3da21e6 100644 --- a/docs/guides/azure-kubernetes-service/argocd-image-updater-acr/index.md +++ b/docs/services/azure-kubernetes-service/argocd-image-updater-acr/index.md @@ -20,6 +20,8 @@ technologies: tags: - deployment - authentication +redirect_from: +- guides/azure-kubernetes-service/argocd-image-updater-acr/index.md --- # ✅ ArgoCD Image Updater + ACR on AKS 설정 가이드 diff --git a/docs/guides/azure-kubernetes-service/authorization-troubleshooting/index.md b/docs/services/azure-kubernetes-service/authorization-troubleshooting/index.md similarity index 99% rename from docs/guides/azure-kubernetes-service/authorization-troubleshooting/index.md rename to docs/services/azure-kubernetes-service/authorization-troubleshooting/index.md index 5a7f340..3af9222 100644 --- a/docs/guides/azure-kubernetes-service/authorization-troubleshooting/index.md +++ b/docs/services/azure-kubernetes-service/authorization-troubleshooting/index.md @@ -20,6 +20,8 @@ technologies: tags: - authorization - troubleshooting +redirect_from: +- guides/azure-kubernetes-service/authorization-troubleshooting/index.md --- # ✅ AKS 배포 시 Authorization 오류 트러블슈팅 가이드 diff --git a/docs/guides/azure-kubernetes-service/cni-overlay-nsg/index.md b/docs/services/azure-kubernetes-service/cni-overlay-nsg/index.md similarity index 99% rename from docs/guides/azure-kubernetes-service/cni-overlay-nsg/index.md rename to docs/services/azure-kubernetes-service/cni-overlay-nsg/index.md index 50f75c2..a0f0bda 100644 --- a/docs/guides/azure-kubernetes-service/cni-overlay-nsg/index.md +++ b/docs/services/azure-kubernetes-service/cni-overlay-nsg/index.md @@ -19,6 +19,8 @@ technologies: tags: - networking - security +redirect_from: +- guides/azure-kubernetes-service/cni-overlay-nsg/index.md --- # ✅ AKS CNI Overlay 사용 시 NSG 설정 주의사항 diff --git a/docs/cases/azure-kubernetes-service/file-io-throttling/index.md b/docs/services/azure-kubernetes-service/file-io-throttling/index.md similarity index 97% rename from docs/cases/azure-kubernetes-service/file-io-throttling/index.md rename to docs/services/azure-kubernetes-service/file-io-throttling/index.md index ad2c273..73e0625 100644 --- a/docs/cases/azure-kubernetes-service/file-io-throttling/index.md +++ b/docs/services/azure-kubernetes-service/file-io-throttling/index.md @@ -17,6 +17,8 @@ tags: - performance - troubleshooting occurred_at: 2025-11-05 +redirect_from: +- cases/azure-kubernetes-service/file-io-throttling/index.md --- # AKS Pod File I/O Throttling 분석 diff --git a/docs/guides/azure-kubernetes-service/kaito-open-source-model/index.md b/docs/services/azure-kubernetes-service/kaito-open-source-model/index.md similarity index 99% rename from docs/guides/azure-kubernetes-service/kaito-open-source-model/index.md rename to docs/services/azure-kubernetes-service/kaito-open-source-model/index.md index 70e8361..fc16444 100644 --- a/docs/guides/azure-kubernetes-service/kaito-open-source-model/index.md +++ b/docs/services/azure-kubernetes-service/kaito-open-source-model/index.md @@ -19,6 +19,8 @@ technologies: tags: - ai-agents - deployment +redirect_from: +- guides/azure-kubernetes-service/kaito-open-source-model/index.md --- # AKS + KAITO로 오픈소스 LLM 서빙하기 diff --git a/docs/cases/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md b/docs/services/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md similarity index 99% rename from docs/cases/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md rename to docs/services/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md index 3fadfbf..d98be16 100644 --- a/docs/cases/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md +++ b/docs/services/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md @@ -17,6 +17,8 @@ tags: - performance - troubleshooting occurred_at: 2025-11-07 +redirect_from: +- cases/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md --- # AKS NetApp Files 환경에서의 CPU 급증 및 File I/O 대기 이슈 diff --git a/docs/guides/azure-kubernetes-service/pod-affinity-distribution/index.md b/docs/services/azure-kubernetes-service/pod-affinity-distribution/index.md similarity index 97% rename from docs/guides/azure-kubernetes-service/pod-affinity-distribution/index.md rename to docs/services/azure-kubernetes-service/pod-affinity-distribution/index.md index 4e37e14..7772c14 100644 --- a/docs/guides/azure-kubernetes-service/pod-affinity-distribution/index.md +++ b/docs/services/azure-kubernetes-service/pod-affinity-distribution/index.md @@ -19,6 +19,8 @@ technologies: tags: - kubernetes - reliability +redirect_from: +- guides/azure-kubernetes-service/pod-affinity-distribution/index.md --- # ✅ AKS에서 Pod 분산 예제 diff --git a/docs/cases/azure-kubernetes-service/pod-database-query-latency/images/01_query_latency.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/images/01_query_latency.png similarity index 100% rename from docs/cases/azure-kubernetes-service/pod-database-query-latency/images/01_query_latency.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/images/01_query_latency.png diff --git a/docs/cases/azure-kubernetes-service/pod-database-query-latency/images/02_pod_runtime.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/images/02_pod_runtime.png similarity index 100% rename from docs/cases/azure-kubernetes-service/pod-database-query-latency/images/02_pod_runtime.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/images/02_pod_runtime.png diff --git a/docs/cases/azure-kubernetes-service/pod-database-query-latency/images/pod_db_query_latency.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/images/pod_db_query_latency.png similarity index 100% rename from docs/cases/azure-kubernetes-service/pod-database-query-latency/images/pod_db_query_latency.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/images/pod_db_query_latency.png diff --git a/docs/cases/azure-kubernetes-service/pod-database-query-latency/images/result_01.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/images/result_01.png similarity index 100% rename from docs/cases/azure-kubernetes-service/pod-database-query-latency/images/result_01.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/images/result_01.png diff --git a/docs/cases/azure-kubernetes-service/pod-database-query-latency/images/result_02.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/images/result_02.png similarity index 100% rename from docs/cases/azure-kubernetes-service/pod-database-query-latency/images/result_02.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/images/result_02.png diff --git a/docs/cases/azure-kubernetes-service/pod-database-query-latency/images/result_pod_runtime.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/images/result_pod_runtime.png similarity index 100% rename from docs/cases/azure-kubernetes-service/pod-database-query-latency/images/result_pod_runtime.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/images/result_pod_runtime.png diff --git a/docs/cases/azure-kubernetes-service/pod-database-query-latency/index.md b/docs/services/azure-kubernetes-service/pod-database-query-latency/index.md similarity index 99% rename from docs/cases/azure-kubernetes-service/pod-database-query-latency/index.md rename to docs/services/azure-kubernetes-service/pod-database-query-latency/index.md index 9c9e17a..72138f8 100644 --- a/docs/cases/azure-kubernetes-service/pod-database-query-latency/index.md +++ b/docs/services/azure-kubernetes-service/pod-database-query-latency/index.md @@ -19,6 +19,8 @@ tags: - networking - troubleshooting occurred_at: 2026-06-08 +redirect_from: +- cases/azure-kubernetes-service/pod-database-query-latency/index.md --- # AKS Pod → Database 쿼리 지연 디버깅 diff --git a/samples/azure-kubernetes-service/source-material/pod_db_query_latency/01_query_latency.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/01_query_latency.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pod_db_query_latency/01_query_latency.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/01_query_latency.png diff --git a/samples/azure-kubernetes-service/source-material/pod_db_query_latency/02_pod_runtime.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/02_pod_runtime.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pod_db_query_latency/02_pod_runtime.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/02_pod_runtime.png diff --git a/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/README.md b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/README.md new file mode 100644 index 0000000..cbb8c78 --- /dev/null +++ b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/README.md @@ -0,0 +1,4 @@ +# Pod database query latency results + +These diagrams and captured results preserve the observations referenced by +the database query latency case. diff --git a/samples/azure-kubernetes-service/source-material/pod_db_query_latency/pod_db_query_latency.excalidraw b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/pod_db_query_latency.excalidraw similarity index 100% rename from samples/azure-kubernetes-service/source-material/pod_db_query_latency/pod_db_query_latency.excalidraw rename to docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/pod_db_query_latency.excalidraw diff --git a/samples/azure-kubernetes-service/source-material/pod_db_query_latency/pod_db_query_latency.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/pod_db_query_latency.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pod_db_query_latency/pod_db_query_latency.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/pod_db_query_latency.png diff --git a/samples/azure-kubernetes-service/source-material/pod_db_query_latency/result_01.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/result_01.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pod_db_query_latency/result_01.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/result_01.png diff --git a/samples/azure-kubernetes-service/source-material/pod_db_query_latency/result_02.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/result_02.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pod_db_query_latency/result_02.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/result_02.png diff --git a/samples/azure-kubernetes-service/source-material/pod_db_query_latency/result_pod_runtime.png b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/result_pod_runtime.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pod_db_query_latency/result_pod_runtime.png rename to docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/result_pod_runtime.png diff --git a/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/sample.yml b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/sample.yml new file mode 100644 index 0000000..6267ad6 --- /dev/null +++ b/docs/services/azure-kubernetes-service/pod-database-query-latency/samples/observed-results/sample.yml @@ -0,0 +1,5 @@ +title: Pod database query latency results +description: Captured diagrams and measurements from the investigated scenario. +kind: artifact +used_by: +- index diff --git a/docs/guides/azure-kubernetes-service/pod-scheduling-agent-pools/index.md b/docs/services/azure-kubernetes-service/pod-scheduling-agent-pools/index.md similarity index 97% rename from docs/guides/azure-kubernetes-service/pod-scheduling-agent-pools/index.md rename to docs/services/azure-kubernetes-service/pod-scheduling-agent-pools/index.md index 9efd8e3..3ea0b7e 100644 --- a/docs/guides/azure-kubernetes-service/pod-scheduling-agent-pools/index.md +++ b/docs/services/azure-kubernetes-service/pod-scheduling-agent-pools/index.md @@ -19,6 +19,8 @@ technologies: tags: - kubernetes - deployment +redirect_from: +- guides/azure-kubernetes-service/pod-scheduling-agent-pools/index.md --- # ✅ AKS에서 Pod 스케줄링 제어 Best Practice diff --git a/docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-bucket.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-bucket.png similarity index 100% rename from docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-bucket.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-bucket.png diff --git a/docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-certificate.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-certificate.png similarity index 100% rename from docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-certificate.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/anf-create-certificate.png diff --git a/docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/architecture.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/architecture.png similarity index 100% rename from docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/architecture.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/architecture.png diff --git a/docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/pyroscope_ui.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/pyroscope_ui.png similarity index 100% rename from docs/guides/azure-kubernetes-service/pyroscope-anf-s3/images/pyroscope_ui.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/images/pyroscope_ui.png diff --git a/docs/guides/azure-kubernetes-service/pyroscope-anf-s3/index.md b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/index.md similarity index 96% rename from docs/guides/azure-kubernetes-service/pyroscope-anf-s3/index.md rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/index.md index 9c943a7..61d0b13 100644 --- a/docs/guides/azure-kubernetes-service/pyroscope-anf-s3/index.md +++ b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/index.md @@ -21,6 +21,8 @@ tags: - observability - deployment - storage +redirect_from: +- guides/azure-kubernetes-service/pyroscope-anf-s3/index.md --- # Pyroscope을 AKS에 배포하기 (S3 백엔드를 Azure NetApp Files로) @@ -403,8 +405,8 @@ kubectl port-forward -n observability svc/pyroscope 4040:4040 아래는 동작을 바로 확인할 수 있는 **데모**입니다. Azure AI Foundry를 호출하는 FastAPI 앱에 Pyroscope Python SDK를 붙여 콜스택을 수집합니다. -> 예제 코드: [pyroscope-chat-profiling/](https://github.com/hellices/devguidesample/tree/main/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling) -> ([app.py](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/app.py) · [deployment.yaml](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/deployment.yaml) · [deploy.sh](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/deploy.sh) · [test.py](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/test.py)) +> 예제 코드: [pyroscope-chat-profiling/](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling) +> ([app.py](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/app.py) · [deployment.yaml](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/deployment.yaml) · [deploy.sh](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/deploy.sh) · [test.py](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/test.py))
    5.1 핵심 동작 (펼치기) diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/Dockerfile b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/Dockerfile similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/Dockerfile rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/Dockerfile diff --git a/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/README.md b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/README.md new file mode 100644 index 0000000..e454d0e --- /dev/null +++ b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/README.md @@ -0,0 +1,4 @@ +# Pyroscope chat profiling + +This runnable sample contains the application, deployment assets, test client, +and architecture images for the Pyroscope and Azure NetApp Files scenario. diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/app.py b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/app.py similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/app.py rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/app.py diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/deploy.sh b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/deploy.sh similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/deploy.sh rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/deploy.sh diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/deployment.yaml b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/deployment.yaml similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/deployment.yaml rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/deployment.yaml diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/anf-create-bucket.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/anf-create-bucket.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/anf-create-bucket.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/anf-create-bucket.png diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/anf-create-certificate.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/anf-create-certificate.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/anf-create-certificate.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/anf-create-certificate.png diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/architecture.excalidraw b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/architecture.excalidraw similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/architecture.excalidraw rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/architecture.excalidraw diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/architecture.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/architecture.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/architecture.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/architecture.png diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/pyroscope_ui.png b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/pyroscope_ui.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/images/pyroscope_ui.png rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/images/pyroscope_ui.png diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/requirements.txt b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/requirements.txt similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/requirements.txt rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/requirements.txt diff --git a/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/sample.yml b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/sample.yml new file mode 100644 index 0000000..2850287 --- /dev/null +++ b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/sample.yml @@ -0,0 +1,5 @@ +title: Pyroscope chat profiling +description: Runnable profiling workload and deployment assets. +kind: runnable +used_by: +- index diff --git a/samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/test.py b/docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/test.py similarity index 100% rename from samples/azure-kubernetes-service/source-material/pyroscope-chat-profiling/test.py rename to docs/services/azure-kubernetes-service/pyroscope-anf-s3/samples/pyroscope-chat-profiling/test.py diff --git a/docs/guides/azure-kubernetes-service/python-memory-leak-memray/images/leak-leaks.png b/docs/services/azure-kubernetes-service/python-memory-leak-memray/images/leak-leaks.png similarity index 100% rename from docs/guides/azure-kubernetes-service/python-memory-leak-memray/images/leak-leaks.png rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/images/leak-leaks.png diff --git a/docs/guides/azure-kubernetes-service/python-memory-leak-memray/index.md b/docs/services/azure-kubernetes-service/python-memory-leak-memray/index.md similarity index 93% rename from docs/guides/azure-kubernetes-service/python-memory-leak-memray/index.md rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/index.md index 103ed0a..3880838 100644 --- a/docs/guides/azure-kubernetes-service/python-memory-leak-memray/index.md +++ b/docs/services/azure-kubernetes-service/python-memory-leak-memray/index.md @@ -21,6 +21,8 @@ tags: - diagnostics - performance - troubleshooting +redirect_from: +- guides/azure-kubernetes-service/python-memory-leak-memray/index.md --- # AKS Python Pod 메모리 누수 — `kubectl debug` + Memray attach @@ -46,7 +48,7 @@ tags: ## 사전 준비: 디버그 이미지 -gdb + procps + memray를 담은 이미지를 레지스트리에 상비 ([debug/Dockerfile](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/memray-leak-profiling/debug/Dockerfile)): +gdb + procps + memray를 담은 이미지를 레지스트리에 상비 ([debug/Dockerfile](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/debug/Dockerfile)): ```dockerfile # ⚠️ 베이스는 앱과 동일 Python 버전 — memray attach 는 "타깃 프로세스 안"에서 @@ -170,7 +172,7 @@ kubectl cp memray-demo/$POD:/tmp/leak-leaks.html reports/leak-leaks.html ![memray --leaks 플레임그래프: chat → _remember_turn_context (app.py:50) 와 _archive_tool_trace (app.py:65) 가 미해제 메모리의 대부분을 차지](images/leak-leaks.png) -- 원본 HTML 파일(내려받아 브라우저에서 열기): [`reports/leak-leaks.html`](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-leaks.html) · [`reports/leak-flamegraph.html`](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-flamegraph.html) +- 원본 HTML 파일(내려받아 브라우저에서 열기): [`reports/leak-leaks.html`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-leaks.html) · [`reports/leak-flamegraph.html`](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-flamegraph.html) - 절대 수치는 캡처 시점/부하에 따라 상이 (tree와 스크린샷은 별도 60s 캡처) — 핵심은 **비율 + 콜스택** - 대조군 `_synthesize_answer`(요청 종료 시 해제)는 leaks 리포트 **미등장** → 오탐 없음 - 상단 노란 배너 = pymalloc 안내: 소형 객체는 풀 잔류 노이즈 가능 → @@ -210,7 +212,7 @@ kubectl rollout restart deploy/leaky-agent -n memray-demo ## Appendix -재현 환경 전체 코드: [`memray-leak-profiling/`](https://github.com/hellices/devguidesample/tree/main/samples/azure-kubernetes-service/source-material/memray-leak-profiling) +재현 환경 전체 코드: [`memray-leak-profiling/`](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling) ``` memray-leak-profiling/ @@ -240,7 +242,7 @@ memray-leak-profiling/ (agent 서비스에서 대화 메모리/툴 로그 무제한 축적 시 동일 증상) - `/stats`로 RSS/세션 수/히스토리 수 노출 → 관찰용 -앱 이미지는 clean 유지 ([Dockerfile](https://github.com/hellices/devguidesample/blob/main/samples/azure-kubernetes-service/source-material/memray-leak-profiling/Dockerfile)): +앱 이미지는 clean 유지 ([Dockerfile](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/Dockerfile)): ```dockerfile FROM python:3.12-slim @@ -269,7 +271,7 @@ az aks get-credentials -g rg-memray-demo -n aks-memray-demo 이미지 빌드 — 로컬 docker 불필요, ACR 클라우드 빌드 (Apple Silicon 크로스빌드 이슈도 회피): ```bash -cd samples/azure-kubernetes-service/source-material/memray-leak-profiling +cd docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling az acr build --registry --image leaky-agent:v2 --platform linux/amd64 . # 24s az acr build --registry --image memray-debug:v1 --platform linux/amd64 ./debug # 33s ``` diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/Dockerfile b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/Dockerfile similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/Dockerfile rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/Dockerfile diff --git a/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/README.md b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/README.md new file mode 100644 index 0000000..278c8ad --- /dev/null +++ b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/README.md @@ -0,0 +1,4 @@ +# Memray leak profiling + +This runnable sample includes the leaky application, load generator, debug +image, Kubernetes manifests, and captured Memray reports. diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/app.py b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/app.py similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/app.py rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/app.py diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/debug/Dockerfile b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/debug/Dockerfile similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/debug/Dockerfile rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/debug/Dockerfile diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/k8s/leaky-agent.yaml b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/k8s/leaky-agent.yaml similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/k8s/leaky-agent.yaml rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/k8s/leaky-agent.yaml diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/k8s/loadgen.yaml b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/k8s/loadgen.yaml similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/k8s/loadgen.yaml rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/k8s/loadgen.yaml diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/loadgen.py b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/loadgen.py similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/loadgen.py rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/loadgen.py diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-flamegraph.html b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-flamegraph.html similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-flamegraph.html rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-flamegraph.html diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-leaks.html b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-leaks.html similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-leaks.html rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-leaks.html diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-leaks.png b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-leaks.png similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/reports/leak-leaks.png rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/reports/leak-leaks.png diff --git a/samples/azure-kubernetes-service/source-material/memray-leak-profiling/requirements.txt b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/requirements.txt similarity index 100% rename from samples/azure-kubernetes-service/source-material/memray-leak-profiling/requirements.txt rename to docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/requirements.txt diff --git a/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/sample.yml b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/sample.yml new file mode 100644 index 0000000..a2393ee --- /dev/null +++ b/docs/services/azure-kubernetes-service/python-memory-leak-memray/samples/memray-leak-profiling/sample.yml @@ -0,0 +1,5 @@ +title: Memray leak profiling +description: Runnable Python memory-leak workload with profiling reports. +kind: runnable +used_by: +- index diff --git a/docs/guides/azure-kubernetes-service/remote-cluster-local-development/index.md b/docs/services/azure-kubernetes-service/remote-cluster-local-development/index.md similarity index 87% rename from docs/guides/azure-kubernetes-service/remote-cluster-local-development/index.md rename to docs/services/azure-kubernetes-service/remote-cluster-local-development/index.md index a9bf932..da856ba 100644 --- a/docs/guides/azure-kubernetes-service/remote-cluster-local-development/index.md +++ b/docs/services/azure-kubernetes-service/remote-cluster-local-development/index.md @@ -20,6 +20,8 @@ technologies: tags: - development - networking +redirect_from: +- guides/azure-kubernetes-service/remote-cluster-local-development/index.md --- # AKS 원격 클러스터 + 로컬 개발 루프 (Telepresence / mirrord) @@ -36,10 +38,10 @@ AKS에 배포된 서비스를 대상으로, **코드를 이미지로 빌드/배 - [Use Telepresence to develop and test microservices locally — MS Learn](https://learn.microsoft.com/en-us/azure/aks/use-telepresence-aks) - [Local Development on AKS with mirrord — AKS Engineering Blog](https://blog.aks.azure.com/2024/12/04/mirrord-on-aks) -예제 파일: [`local_dev_loop/`](https://github.com/hellices/devguidesample/tree/main/samples/azure-kubernetes-service/source-material/local_dev_loop) +예제 파일: [`local-development-loop/`](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop) ``` -local_dev_loop/ +local-development-loop/ ├── k8s/echo-service.yaml # tp-demo 네임스페이스 + echo-server Deployment/Service └── local/ ├── local-server.py # 트래픽을 가로챌 로컬 개발 서버 (:8080) @@ -61,7 +63,7 @@ local_dev_loop/ ```bash az aks get-credentials -g rg-example-koreacentral-01 -n aks-example-koreacentral-01 -kubectl apply -f samples/azure-kubernetes-service/source-material/local_dev_loop/k8s/echo-service.yaml +kubectl apply -f docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/k8s/echo-service.yaml kubectl -n tp-demo rollout status deploy/echo-server ``` @@ -104,7 +106,7 @@ curl http://echo-server.tp-demo # 클러스터 Pod가 응답 telepresence list # inbound intercept: 클러스터 트래픽을 로컬로 -python3 local_dev_loop/local/local-server.py & +python3 docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/local-server.py & telepresence intercept echo-server --namespace tp-demo --port 8080:80 # --env-file을 주면 원격 Pod의 환경변수를 파일로 받아 로컬 앱에서 재사용 가능 @@ -150,7 +152,7 @@ syscall 수준에서 네트워크/환경변수/파일을 원격 Pod의 것으로 ### 3-2. 설정 파일 ```jsonc -// local_dev_loop/local/mirrord.json +// docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/mirrord.json { "target": { "path": "deployment/echo-server", "namespace": "tp-demo" }, "feature": { @@ -176,15 +178,15 @@ syscall 수준에서 네트워크/환경변수/파일을 원격 Pod의 것으로 ```bash # 인바운드 steal + env/dns/fs 미러링 -mirrord exec -f local_dev_loop/local/mirrord.json -- \ - python3 local_dev_loop/local/local-server.py +mirrord exec -f docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/mirrord.json -- \ + python3 docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/local-server.py # 로컬 프로세스가 원격 Pod의 환경변수를 그대로 받음 -mirrord exec -f local_dev_loop/local/mirrord.json -- \ +mirrord exec -f docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/mirrord.json -- \ python3 -c "import os; print(os.environ['POD_NAME'])" # 아웃바운드: 클러스터 내부 DNS도 프로세스 안에서 해석됨 -mirrord exec -f local_dev_loop/local/mirrord.json -- \ +mirrord exec -f docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/mirrord.json -- \ curl http://echo-server.tp-demo.svc.cluster.local ``` @@ -204,7 +206,7 @@ F5(Run/Debug)만으로 mirrord가 적용된다. **브레이크포인트를 찍 "name": "mirrord demo: local-server (echo-server steal)", "type": "debugpy", "request": "launch", - "program": "${workspaceFolder}/samples/azure-kubernetes-service/source-material/local_dev_loop/local/local-server.py", + "program": "${workspaceFolder}/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/local-server.py", "console": "integratedTerminal", "env": { "MIRRORD_ACTIVE": "1", @@ -258,7 +260,7 @@ telepresence helm uninstall # Traffic Manager 제거 # mirrord — agent pod는 세션 종료 시 자동 삭제됨 # 샘플 서비스 제거 -kubectl delete -f samples/azure-kubernetes-service/source-material/local_dev_loop/k8s/echo-service.yaml +kubectl delete -f docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/k8s/echo-service.yaml # 비용 절약: 클러스터 중지 az aks stop -g rg-example-koreacentral-01 -n aks-example-koreacentral-01 diff --git a/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/README.md b/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/README.md new file mode 100644 index 0000000..8668f5f --- /dev/null +++ b/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/README.md @@ -0,0 +1,4 @@ +# Local development loop + +This runnable sample provides the remote Kubernetes workload, local Python +server, and mirrord configuration used by the development loop. diff --git a/samples/azure-kubernetes-service/source-material/local_dev_loop/k8s/echo-service.yaml b/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/k8s/echo-service.yaml similarity index 100% rename from samples/azure-kubernetes-service/source-material/local_dev_loop/k8s/echo-service.yaml rename to docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/k8s/echo-service.yaml diff --git a/samples/azure-kubernetes-service/source-material/local_dev_loop/local/local-server.py b/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/local-server.py similarity index 100% rename from samples/azure-kubernetes-service/source-material/local_dev_loop/local/local-server.py rename to docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/local-server.py diff --git a/samples/azure-kubernetes-service/source-material/local_dev_loop/local/mirrord.json b/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/mirrord.json similarity index 100% rename from samples/azure-kubernetes-service/source-material/local_dev_loop/local/mirrord.json rename to docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/local/mirrord.json diff --git a/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/sample.yml b/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/sample.yml new file mode 100644 index 0000000..7d75a6b --- /dev/null +++ b/docs/services/azure-kubernetes-service/remote-cluster-local-development/samples/local-development-loop/sample.yml @@ -0,0 +1,5 @@ +title: Local development loop +description: Runnable remote-cluster and local-process development example. +kind: runnable +used_by: +- index diff --git a/docs/guides/azure-kubernetes-service/spot-h100-kaito/index.md b/docs/services/azure-kubernetes-service/spot-h100-kaito/index.md similarity index 99% rename from docs/guides/azure-kubernetes-service/spot-h100-kaito/index.md rename to docs/services/azure-kubernetes-service/spot-h100-kaito/index.md index 3828c5e..aff2911 100644 --- a/docs/guides/azure-kubernetes-service/spot-h100-kaito/index.md +++ b/docs/services/azure-kubernetes-service/spot-h100-kaito/index.md @@ -21,6 +21,8 @@ tags: - ai-agents - deployment - performance +redirect_from: +- guides/azure-kubernetes-service/spot-h100-kaito/index.md --- # ✅ AKS Spot H100 GPU + KAITO LLM 서빙 가이드 diff --git a/docs/guides/azure-kubernetes-service/workload-identity-databricks/index.md b/docs/services/azure-kubernetes-service/workload-identity-databricks/index.md similarity index 99% rename from docs/guides/azure-kubernetes-service/workload-identity-databricks/index.md rename to docs/services/azure-kubernetes-service/workload-identity-databricks/index.md index 2871c68..304667b 100644 --- a/docs/guides/azure-kubernetes-service/workload-identity-databricks/index.md +++ b/docs/services/azure-kubernetes-service/workload-identity-databricks/index.md @@ -22,6 +22,8 @@ technologies: tags: - authentication - security +redirect_from: +- guides/azure-kubernetes-service/workload-identity-databricks/index.md --- # AKS Workload Identity로 Databricks Model Serving 키리스(Keyless) 호출 diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/01-test-list.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/01-test-list.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/01-test-list.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/01-test-list.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/02-run-summary.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/02-run-summary.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/02-run-summary.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/02-run-summary.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/03-request-statistics.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/03-request-statistics.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/03-request-statistics.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/03-request-statistics.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/04-client-side-metrics.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/04-client-side-metrics.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/04-client-side-metrics.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/04-client-side-metrics.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/05-server-side-metrics.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/05-server-side-metrics.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/05-server-side-metrics.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/05-server-side-metrics.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/06-engine-health.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/06-engine-health.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/06-engine-health.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/06-engine-health.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/07-compare-select.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/07-compare-select.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/07-compare-select.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/07-compare-select.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/images/08-compare-result.png b/docs/services/azure-load-testing/locust-appgw-aks-private/images/08-compare-result.png similarity index 100% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/images/08-compare-result.png rename to docs/services/azure-load-testing/locust-appgw-aks-private/images/08-compare-result.png diff --git a/docs/guides/azure-load-testing/locust-appgw-aks-private/index.md b/docs/services/azure-load-testing/locust-appgw-aks-private/index.md similarity index 99% rename from docs/guides/azure-load-testing/locust-appgw-aks-private/index.md rename to docs/services/azure-load-testing/locust-appgw-aks-private/index.md index 802a271..f1b560b 100644 --- a/docs/guides/azure-load-testing/locust-appgw-aks-private/index.md +++ b/docs/services/azure-load-testing/locust-appgw-aks-private/index.md @@ -21,6 +21,8 @@ tags: - benchmarking - networking - performance +redirect_from: +- guides/azure-load-testing/locust-appgw-aks-private/index.md --- # Korea Central Private 환경의 Locust 부하테스트 구성 가이드 diff --git a/docs/cases/azure-managed-redis/cluster-failover-recovery/index.md b/docs/services/azure-managed-redis/cluster-failover-recovery/index.md similarity index 97% rename from docs/cases/azure-managed-redis/cluster-failover-recovery/index.md rename to docs/services/azure-managed-redis/cluster-failover-recovery/index.md index 208a9bc..9d2d010 100644 --- a/docs/cases/azure-managed-redis/cluster-failover-recovery/index.md +++ b/docs/services/azure-managed-redis/cluster-failover-recovery/index.md @@ -18,6 +18,8 @@ tags: - high-availability - troubleshooting occurred_at: 2026-02-22 +redirect_from: +- cases/azure-managed-redis/cluster-failover-recovery/index.md --- # Azure Managed Redis Cluster Failover 장애 분석 및 복구 전략 @@ -237,7 +239,7 @@ async function safeRedisGet(key) { ## 코드 샘플 -이 이슈를 검증하기 위한 예제 코드는 [`cluster_example/`](https://github.com/hellices/devguidesample/tree/main/samples/azure-managed-redis/source-material/nodejs/cluster_example) 디렉토리에 포함되어 있습니다. +이 이슈를 검증하기 위한 예제 코드는 [`cluster_example/`](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example) 디렉토리에 포함되어 있습니다. - OSS Cluster(`createCluster`) vs Enterprise(`createClient`) 연결 방식 비교 - Cluster topology 조회 및 모니터링 diff --git a/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/README.md b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/README.md new file mode 100644 index 0000000..8e76746 --- /dev/null +++ b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/README.md @@ -0,0 +1,4 @@ +# Node.js cluster failover sample + +This runnable sample contains the Node.js cluster client and editable recovery +diagram used to verify failover behavior. diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_example/README.md b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/README.md similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_example/README.md rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/README.md diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_example/healthCheck.js b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/healthCheck.js similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_example/healthCheck.js rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/healthCheck.js diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_example/package-lock.json b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/package-lock.json similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_example/package-lock.json rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/package-lock.json diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_example/package.json b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/package.json similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_example/package.json rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/package.json diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_example/redisClient.js b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/redisClient.js similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_example/redisClient.js rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/redisClient.js diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_example/routes.js b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/routes.js similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_example/routes.js rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/routes.js diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_example/server.js b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/server.js similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_example/server.js rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_example/server.js diff --git a/samples/azure-managed-redis/source-material/nodejs/cluster_failover_recovery.excalidraw b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_failover_recovery.excalidraw similarity index 100% rename from samples/azure-managed-redis/source-material/nodejs/cluster_failover_recovery.excalidraw rename to docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/cluster_failover_recovery.excalidraw diff --git a/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/sample.yml b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/sample.yml new file mode 100644 index 0000000..add728b --- /dev/null +++ b/docs/services/azure-managed-redis/cluster-failover-recovery/samples/nodejs-cluster/sample.yml @@ -0,0 +1,5 @@ +title: Node.js cluster failover sample +description: Runnable Node.js cluster client and failover recovery assets. +kind: runnable +used_by: +- index diff --git a/docs/guides/azure-monitor/aks-private-opentelemetry/index.md b/docs/services/azure-monitor/aks-private-opentelemetry/index.md similarity index 99% rename from docs/guides/azure-monitor/aks-private-opentelemetry/index.md rename to docs/services/azure-monitor/aks-private-opentelemetry/index.md index 329d34d..eab8b8a 100644 --- a/docs/guides/azure-monitor/aks-private-opentelemetry/index.md +++ b/docs/services/azure-monitor/aks-private-opentelemetry/index.md @@ -21,6 +21,8 @@ tags: - observability - monitoring - networking +redirect_from: +- guides/azure-monitor/aks-private-opentelemetry/index.md --- # AKS 폐쇄망 환경 OpenTelemetry + Azure Monitor 메트릭 파이프라인 구축 diff --git a/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab_state.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab_state.py index 9868c1e..24fdd2c 100644 --- a/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab_state.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/lab_state.py @@ -188,7 +188,7 @@ def scenario_guide(scenario: str) -> str: # A remedy that cannot be acted on is not a remedy: an unmapped # scenario still has to say where to look. return SCENARIO_GUIDES.get( - scenario, "the matching page under docs/labs/azure-monitor/" + scenario, "the matching page under docs/services/azure-monitor/azure-sre-agent/" ) diff --git a/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_dynamic_threshold_brief.py b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_dynamic_threshold_brief.py index 4fa4b32..8e4ee32 100644 --- a/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_dynamic_threshold_brief.py +++ b/docs/services/azure-monitor/azure-sre-agent/samples/event-lab/scripts/tests/test_dynamic_threshold_brief.py @@ -6,7 +6,7 @@ REPO_ROOT = Path(__file__).parents[8] -BRIEF = REPO_ROOT / "docs" / "research" / "azure-monitor" / "dynamic-thresholds-brief" / "index.md" +BRIEF = REPO_ROOT / "docs" / "services" / "azure-monitor" / "dynamic-thresholds-brief" / "index.md" ASSET = BRIEF.parent / "images" / "dynamic-threshold-preview-chart.png" ARTICLE = "https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-dynamic-thresholds" RAW_MEDIA = ( @@ -15,7 +15,7 @@ ) OFFICIAL_ASSETS = {"dynamic-threshold-preview-chart.png"} # To update this digest, download RAW_MEDIA and run: -# shasum -a 256 docs/research/azure-monitor/dynamic-thresholds-brief/images/dynamic-threshold-preview-chart.png +# shasum -a 256 docs/services/azure-monitor/dynamic-thresholds-brief/images/dynamic-threshold-preview-chart.png EXPECTED_ASSET_SHA256 = "4688901b73dff95c47d6d87c6d73f774dcb613fec38b757d1a76953df098636c" diff --git a/docs/research/azure-monitor/dynamic-thresholds-brief/images/dynamic-threshold-preview-chart.png b/docs/services/azure-monitor/dynamic-thresholds-brief/images/dynamic-threshold-preview-chart.png similarity index 100% rename from docs/research/azure-monitor/dynamic-thresholds-brief/images/dynamic-threshold-preview-chart.png rename to docs/services/azure-monitor/dynamic-thresholds-brief/images/dynamic-threshold-preview-chart.png diff --git a/docs/research/azure-monitor/dynamic-thresholds-brief/index.md b/docs/services/azure-monitor/dynamic-thresholds-brief/index.md similarity index 98% rename from docs/research/azure-monitor/dynamic-thresholds-brief/index.md rename to docs/services/azure-monitor/dynamic-thresholds-brief/index.md index 7e213d2..6fb39ee 100644 --- a/docs/research/azure-monitor/dynamic-thresholds-brief/index.md +++ b/docs/services/azure-monitor/dynamic-thresholds-brief/index.md @@ -16,6 +16,8 @@ tags: - monitoring - reliability published_at: 2026-08-17 +redirect_from: +- research/azure-monitor/dynamic-thresholds-brief/index.md --- # Azure Monitor Dynamic Thresholds: What Changes and When to Adopt diff --git a/docs/guides/azure-openai/adaptive-ptu-load-balancing/images/ptu_architecture.png b/docs/services/azure-openai/adaptive-ptu-load-balancing/images/ptu_architecture.png similarity index 100% rename from docs/guides/azure-openai/adaptive-ptu-load-balancing/images/ptu_architecture.png rename to docs/services/azure-openai/adaptive-ptu-load-balancing/images/ptu_architecture.png diff --git a/docs/guides/azure-openai/adaptive-ptu-load-balancing/index.md b/docs/services/azure-openai/adaptive-ptu-load-balancing/index.md similarity index 95% rename from docs/guides/azure-openai/adaptive-ptu-load-balancing/index.md rename to docs/services/azure-openai/adaptive-ptu-load-balancing/index.md index 5f4fb79..824e335 100644 --- a/docs/guides/azure-openai/adaptive-ptu-load-balancing/index.md +++ b/docs/services/azure-openai/adaptive-ptu-load-balancing/index.md @@ -21,6 +21,8 @@ tags: - performance - reliability - ai-agents +redirect_from: +- guides/azure-openai/adaptive-ptu-load-balancing/index.md --- # Adaptive PTU TPM Quota 조정 가이드 (with Sample Test) @@ -290,12 +292,12 @@ $$ ## 파일 구성 -- 아키텍처 다이어그램(원본): [ptu_architecture.excalidraw](https://github.com/hellices/devguidesample/blob/main/samples/azure-openai/ptu-load-balancing/ptu_architecture.excalidraw) -- 아키텍처 다이어그램(이미지): [ptu_architecture.png](https://github.com/hellices/devguidesample/blob/main/samples/azure-openai/ptu-load-balancing/ptu_architecture.png) -- 다이어그램 렌더러(유틸): [render_excalidraw.py](https://github.com/hellices/devguidesample/blob/main/samples/azure-openai/ptu-load-balancing/render_excalidraw.py) -- **Runbook(기본, Python): [runbooks/adaptive_tpm_quota_controller.py](https://github.com/hellices/devguidesample/blob/main/samples/azure-openai/ptu-load-balancing/runbooks/adaptive_tpm_quota_controller.py)** -- Runbook 의존성: [runbooks/requirements.txt](https://github.com/hellices/devguidesample/blob/main/samples/azure-openai/ptu-load-balancing/runbooks/requirements.txt) -- Runbook(선택, PowerShell 동등 이식본): [runbooks/optional_adaptive_tpm_quota_controller.ps1](https://github.com/hellices/devguidesample/blob/main/samples/azure-openai/ptu-load-balancing/runbooks/optional_adaptive_tpm_quota_controller.ps1) +- 아키텍처 다이어그램(원본): [ptu_architecture.excalidraw](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/ptu_architecture.excalidraw) +- 아키텍처 다이어그램(이미지): [ptu_architecture.png](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/ptu_architecture.png) +- 다이어그램 렌더러(유틸): [render_excalidraw.py](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/render_excalidraw.py) +- **Runbook(기본, Python): [runbooks/adaptive_tpm_quota_controller.py](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/adaptive_tpm_quota_controller.py)** +- Runbook 의존성: [runbooks/requirements.txt](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/requirements.txt) +- Runbook(선택, PowerShell 동등 이식본): [runbooks/optional_adaptive_tpm_quota_controller.ps1](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/optional_adaptive_tpm_quota_controller.ps1) > 기본 구현은 Python 런북이다. PowerShell 버전은 동일한 Reserved 총량 공유 재분배 로직(감축→증설, 실제 actuation·쿨다운 포함)을 Az 모듈(Az.Accounts / Az.CognitiveServices / AzTable)로 이식한 **선택적 대체 구현**으로, PowerShell 선호 환경을 위한 참조본이다. Storage가 Private Endpoint 구성이면 이 런북도 프라이빗 경로가 닿는 워커(예: Windows Hybrid Worker)에서 실행해야 한다. diff --git a/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/README.md b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/README.md new file mode 100644 index 0000000..d7b1b1e --- /dev/null +++ b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/README.md @@ -0,0 +1,3 @@ +# PTU LB Test Docs + +메인 문서는 [Adaptive PTU 부하 분산 가이드](../../index.md)입니다. diff --git a/samples/azure-openai/ptu-load-balancing/ptu_architecture.excalidraw b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/ptu_architecture.excalidraw similarity index 100% rename from samples/azure-openai/ptu-load-balancing/ptu_architecture.excalidraw rename to docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/ptu_architecture.excalidraw diff --git a/samples/azure-openai/ptu-load-balancing/ptu_architecture.png b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/ptu_architecture.png similarity index 100% rename from samples/azure-openai/ptu-load-balancing/ptu_architecture.png rename to docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/ptu_architecture.png diff --git a/samples/azure-openai/ptu-load-balancing/render_excalidraw.py b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/render_excalidraw.py similarity index 100% rename from samples/azure-openai/ptu-load-balancing/render_excalidraw.py rename to docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/render_excalidraw.py diff --git a/samples/azure-openai/ptu-load-balancing/runbooks/adaptive_tpm_quota_controller.py b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/adaptive_tpm_quota_controller.py similarity index 100% rename from samples/azure-openai/ptu-load-balancing/runbooks/adaptive_tpm_quota_controller.py rename to docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/adaptive_tpm_quota_controller.py diff --git a/samples/azure-openai/ptu-load-balancing/runbooks/optional_adaptive_tpm_quota_controller.ps1 b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/optional_adaptive_tpm_quota_controller.ps1 similarity index 100% rename from samples/azure-openai/ptu-load-balancing/runbooks/optional_adaptive_tpm_quota_controller.ps1 rename to docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/optional_adaptive_tpm_quota_controller.ps1 diff --git a/samples/azure-openai/ptu-load-balancing/runbooks/requirements.txt b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/requirements.txt similarity index 100% rename from samples/azure-openai/ptu-load-balancing/runbooks/requirements.txt rename to docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/runbooks/requirements.txt diff --git a/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/sample.yml b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/sample.yml new file mode 100644 index 0000000..8609b52 --- /dev/null +++ b/docs/services/azure-openai/adaptive-ptu-load-balancing/samples/runbooks/sample.yml @@ -0,0 +1,5 @@ +title: Adaptive PTU load-balancing runbooks +description: Runnable quota controllers and architecture assets for PTU balancing. +kind: runnable +used_by: +- index diff --git a/docs/guides/azure-storage/mobile-resumable-upload-tus/images/architecture.png b/docs/services/azure-storage/mobile-resumable-upload-tus/images/architecture.png similarity index 100% rename from docs/guides/azure-storage/mobile-resumable-upload-tus/images/architecture.png rename to docs/services/azure-storage/mobile-resumable-upload-tus/images/architecture.png diff --git a/docs/guides/azure-storage/mobile-resumable-upload-tus/index.md b/docs/services/azure-storage/mobile-resumable-upload-tus/index.md similarity index 97% rename from docs/guides/azure-storage/mobile-resumable-upload-tus/index.md rename to docs/services/azure-storage/mobile-resumable-upload-tus/index.md index eb7d521..5abb383 100644 --- a/docs/guides/azure-storage/mobile-resumable-upload-tus/index.md +++ b/docs/services/azure-storage/mobile-resumable-upload-tus/index.md @@ -21,6 +21,8 @@ tags: - storage - reliability - development +redirect_from: +- guides/azure-storage/mobile-resumable-upload-tus/index.md --- # Spring Boot Resumable Upload — tus.io ↔ Azure Block Blob @@ -49,9 +51,9 @@ tags: ![Architecture — Mobile (tus 1.0.0) ▸ AKS Pods ▸ Azure Blob](images/architecture.png) -편집 원본: [spring-resumable-upload/architecture.excalidraw](https://github.com/hellices/devguidesample/blob/main/samples/azure-storage/source-material/spring-resumable-upload/architecture.excalidraw) +편집 원본: [spring-application/architecture.excalidraw](https://github.com/hellices/devguidesample/blob/main/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/architecture.excalidraw) -샘플 코드 위치: [spring-resumable-upload/](https://github.com/hellices/devguidesample/tree/main/samples/azure-storage/source-material/spring-resumable-upload) +샘플 코드 위치: [spring-application/](https://github.com/hellices/devguidesample/tree/main/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application) ## 왜 tus 인가 diff --git a/samples/azure-storage/source-material/spring-resumable-upload/.gitignore b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/.gitignore similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/.gitignore rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/.gitignore diff --git a/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/README.md b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/README.md new file mode 100644 index 0000000..5ba9d95 --- /dev/null +++ b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/README.md @@ -0,0 +1,4 @@ +# Spring resumable upload application + +This runnable Spring application and its helper scripts demonstrate resumable +uploads to Azure Blob Storage through the tus protocol. diff --git a/samples/azure-storage/source-material/spring-resumable-upload/architecture.excalidraw b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/architecture.excalidraw similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/architecture.excalidraw rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/architecture.excalidraw diff --git a/samples/azure-storage/source-material/spring-resumable-upload/architecture.png b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/architecture.png similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/architecture.png rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/architecture.png diff --git a/samples/azure-storage/source-material/spring-resumable-upload/pom.xml b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/pom.xml similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/pom.xml rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/pom.xml diff --git a/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/sample.yml b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/sample.yml new file mode 100644 index 0000000..49a3dca --- /dev/null +++ b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/sample.yml @@ -0,0 +1,5 @@ +title: Spring resumable upload application +description: Runnable Spring and tus implementation with verification scripts. +kind: runnable +used_by: +- index diff --git a/samples/azure-storage/source-material/spring-resumable-upload/scripts/make-test-file.sh b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/scripts/make-test-file.sh similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/scripts/make-test-file.sh rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/scripts/make-test-file.sh diff --git a/samples/azure-storage/source-material/spring-resumable-upload/scripts/tus_client.py b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/scripts/tus_client.py similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/scripts/tus_client.py rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/scripts/tus_client.py diff --git a/samples/azure-storage/source-material/spring-resumable-upload/scripts/verify-blob.sh b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/scripts/verify-blob.sh similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/scripts/verify-blob.sh rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/scripts/verify-blob.sh diff --git a/samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/UploadApplication.java b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/UploadApplication.java similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/UploadApplication.java rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/UploadApplication.java diff --git a/samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/config/BlobConfig.java b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/config/BlobConfig.java similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/config/BlobConfig.java rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/config/BlobConfig.java diff --git a/samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/tus/TusController.java b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/tus/TusController.java similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/tus/TusController.java rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/tus/TusController.java diff --git a/samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/tus/TusFilter.java b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/tus/TusFilter.java similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/tus/TusFilter.java rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/tus/TusFilter.java diff --git a/samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/tus/TusUploadService.java b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/tus/TusUploadService.java similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/src/main/java/com/example/upload/tus/TusUploadService.java rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/java/com/example/upload/tus/TusUploadService.java diff --git a/samples/azure-storage/source-material/spring-resumable-upload/src/main/resources/application.yml b/docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/resources/application.yml similarity index 100% rename from samples/azure-storage/source-material/spring-resumable-upload/src/main/resources/application.yml rename to docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/src/main/resources/application.yml diff --git a/docs/research/microsoft-foundry/agent-framework-2026/index.md b/docs/services/microsoft-foundry/agent-framework-2026/index.md similarity index 99% rename from docs/research/microsoft-foundry/agent-framework-2026/index.md rename to docs/services/microsoft-foundry/agent-framework-2026/index.md index 960f1b2..2efabf1 100644 --- a/docs/research/microsoft-foundry/agent-framework-2026/index.md +++ b/docs/services/microsoft-foundry/agent-framework-2026/index.md @@ -17,6 +17,8 @@ tags: - ai-agents - architecture published_at: 2026-08-17 +redirect_from: +- research/microsoft-foundry/agent-framework-2026/index.md --- # Microsoft Agent Framework 2026: Python Highlights and the Go Implementation diff --git a/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md index c150ccb..25294a3 100644 --- a/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md +++ b/docs/services/microsoft-foundry/agent-memory/samples/research-artifacts/README.md @@ -1,4 +1,5 @@ # Agent Memory research artifacts -This sample contains the editable SVG diagrams referenced by the Agent Memory -topic package. +This sample contains the editable SVG diagrams owned by the Agent Memory topic +package. They support its memory taxonomy, architecture patterns, retrieval +pipeline, production tiers, and commerce blueprint. diff --git a/docs/guides/microsoft-foundry/codex-closed-network/index.md b/docs/services/microsoft-foundry/codex-closed-network/index.md similarity index 98% rename from docs/guides/microsoft-foundry/codex-closed-network/index.md rename to docs/services/microsoft-foundry/codex-closed-network/index.md index e777a8e..8c7863e 100644 --- a/docs/guides/microsoft-foundry/codex-closed-network/index.md +++ b/docs/services/microsoft-foundry/codex-closed-network/index.md @@ -20,6 +20,8 @@ tags: - networking - security - ai-agents +redirect_from: +- guides/microsoft-foundry/codex-closed-network/index.md --- # Codex ↔ Azure AI Foundry 연동: 폐쇄망 환경 가이드 diff --git a/docs/guides/microsoft-foundry/foundry-local-air-gapped/index.md b/docs/services/microsoft-foundry/foundry-local-air-gapped/index.md similarity index 99% rename from docs/guides/microsoft-foundry/foundry-local-air-gapped/index.md rename to docs/services/microsoft-foundry/foundry-local-air-gapped/index.md index 2a09060..778ca72 100644 --- a/docs/guides/microsoft-foundry/foundry-local-air-gapped/index.md +++ b/docs/services/microsoft-foundry/foundry-local-air-gapped/index.md @@ -20,6 +20,8 @@ tags: - deployment - security - ai-agents +redirect_from: +- guides/microsoft-foundry/foundry-local-air-gapped/index.md --- # Foundry Local (On-device SDK/CLI): 제약 사항과 에어갭(Air-gapped) 구성 가이드 diff --git a/docs/guides/microsoft-foundry/gpt-memory-layer/images/hybrid-architecture.png b/docs/services/microsoft-foundry/gpt-memory-layer/images/hybrid-architecture.png similarity index 100% rename from docs/guides/microsoft-foundry/gpt-memory-layer/images/hybrid-architecture.png rename to docs/services/microsoft-foundry/gpt-memory-layer/images/hybrid-architecture.png diff --git a/docs/guides/microsoft-foundry/gpt-memory-layer/index.md b/docs/services/microsoft-foundry/gpt-memory-layer/index.md similarity index 98% rename from docs/guides/microsoft-foundry/gpt-memory-layer/index.md rename to docs/services/microsoft-foundry/gpt-memory-layer/index.md index c87f86a..281dffc 100644 --- a/docs/guides/microsoft-foundry/gpt-memory-layer/index.md +++ b/docs/services/microsoft-foundry/gpt-memory-layer/index.md @@ -19,6 +19,8 @@ technologies: tags: - ai-agents - architecture +redirect_from: +- guides/microsoft-foundry/gpt-memory-layer/index.md --- # Azure Foundry GPT-5.x 메모리 레이어 아키텍처 가이드 @@ -522,7 +524,7 @@ Australia East, Brazil South, Canada East, East US 2, France Central, Italy Nort ![하이브리드 메모리 아키텍처](images/hybrid-architecture.png) - + ### 전환/마이그레이션 체크리스트 diff --git a/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/README.md b/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/README.md new file mode 100644 index 0000000..51d237f --- /dev/null +++ b/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/README.md @@ -0,0 +1,5 @@ +# GPT memory architecture + +These editable Excalidraw and rendered PNG artifacts illustrate the hybrid +Prompt Cache, Redis session, and Foundry memory architecture owned by the GPT +memory layer guide. diff --git a/samples/microsoft-foundry/memory-artifacts/hybrid-architecture.excalidraw b/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/hybrid-architecture.excalidraw similarity index 100% rename from samples/microsoft-foundry/memory-artifacts/hybrid-architecture.excalidraw rename to docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/hybrid-architecture.excalidraw diff --git a/samples/microsoft-foundry/memory-artifacts/hybrid-architecture.png b/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/hybrid-architecture.png similarity index 100% rename from samples/microsoft-foundry/memory-artifacts/hybrid-architecture.png rename to docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/hybrid-architecture.png diff --git a/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/sample.yml b/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/sample.yml new file mode 100644 index 0000000..0eece24 --- /dev/null +++ b/docs/services/microsoft-foundry/gpt-memory-layer/samples/architecture/sample.yml @@ -0,0 +1,5 @@ +title: GPT memory architecture +description: Editable and rendered hybrid memory architecture diagrams. +kind: artifact +used_by: +- index diff --git a/samples/azure-load-testing/source-material/images/01-test-list.png b/samples/azure-load-testing/source-material/images/01-test-list.png deleted file mode 100644 index 6b7450c6e290ce1f247a775e56be5229d3a74b43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 312426 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 z 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 V1Y@E35DWaN+|*DkmcRe_{{SC9R>%MV diff --git a/samples/azure-load-testing/source-material/images/02-run-summary.png b/samples/azure-load-testing/source-material/images/02-run-summary.png deleted file mode 100644 index 0b982633de487309b507ab2378f340359193c017..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 348938 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%0D}MD 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 z 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 E0r@leC;$Ke diff --git a/samples/azure-load-testing/source-material/images/03-request-statistics.png b/samples/azure-load-testing/source-material/images/03-request-statistics.png deleted file mode 100644 index ca9468cce4e365ed0537f374ad238db02a9ae309..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141993 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 Cpfn5s diff --git a/samples/azure-load-testing/source-material/images/04-client-side-metrics.png b/samples/azure-load-testing/source-material/images/04-client-side-metrics.png deleted file mode 100644 index 68ceb1d7981fee493f2890cd32174fe3848fea79..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 397803 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

    niG%#{s2^ys`18x_DYa?2w= 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�{7>ut)ih-eKAFF* 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

    5O^&eWQQVewbe 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

    )Ud(8xgwrDnpf6R7R0UHGcvF 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

    %o3%Er$WBKuGG`RwSdfL5ngylNNz@o~W|^Z6m@ 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 diff --git a/samples/azure-load-testing/source-material/images/07-compare-select.png b/samples/azure-load-testing/source-material/images/07-compare-select.png deleted file mode 100644 index 1173952a1b9db53d535bb573712dfe56e252d026..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 190242 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

    &RIs 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%0A1ix*9>m^YL=dUia3#k^^u17ItqV|YDN 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

    +7!GH?G_kxHQ=vM|pE|4wHticb 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

    ` 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 diff --git a/samples/azure-openai/ptu-load-balancing/README.md b/samples/azure-openai/ptu-load-balancing/README.md deleted file mode 100644 index e7bd85e..0000000 --- a/samples/azure-openai/ptu-load-balancing/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# PTU LB Test Docs - -메인 문서는 [Adaptive PTU 부하 분산 가이드](../../../docs/guides/azure-openai/adaptive-ptu-load-balancing/index.md)입니다. diff --git a/samples/microsoft-foundry/memory-artifacts/README.md b/samples/microsoft-foundry/memory-artifacts/README.md deleted file mode 100644 index 810194b..0000000 --- a/samples/microsoft-foundry/memory-artifacts/README.md +++ /dev/null @@ -1,180 +0,0 @@ -# memory - -에이전트 메모리 관련 가이드 모음. - -## 구성 - -| 항목 | 내용 | -|------|------| -| **[agent-memory/](agent-memory/)** | **Agent Memory 종합 리서치 (v2)** — 아래 요약 참조 | -| [foundry-gpt-memory-v1.md](foundry-gpt-memory-v1.md) | 1차 버전. Azure Foundry GPT-5.x 3계층 메모리 (Prompt Cache → Redis Session → Foundry Memory Service) | - ---- - -## agent-memory/ 요약 - -### 1. 배경 및 목적 - -- 대부분의 대화형 에이전트는 **stateless** 구조로, 세션 종료 시 맥락이 소멸한다 -- 재방문 고객에게도 동일한 정보를 반복 확인하게 되어 개인화·학습·장기 일관성이 성립하지 않는다 -- 본 리서치는 에이전트를 운영 중이나 **메모리 계층이 아직 구성되지 않은 조직**이, 준비 단계에서 다음 세 가지를 판단할 수 있도록 정리한 것이다 - 1. 메모리에는 어떤 종류가 있는가 - 2. 각각을 어디에 저장할 수 있는가 - 3. 우리 규모에서는 어디서부터 시작해야 하는가 - ---- - -### 2. 산출물 구성 - -| 문서 | 다루는 범위 | -|------|------------| -| [01. 메모리 분류 체계](agent-memory/01-memory-taxonomy.md) | Agent Memory 8유형 정의, 유형별 저장소 선택지 및 Azure 매핑, Retention 정책 | -| [02. 아키텍처 패턴](agent-memory/02-architecture-patterns.md) | Single-Store / Dual-Store / Tiered / Graph-Augmented / Full Cognitive 5패턴과 선택 기준 | -| [03. 파이프라인과 검색](agent-memory/03-pipeline-and-retrieval.md) | 쓰기(비동기)·읽기(실시간) 경로 분리, 하이브리드 검색 단계별 비용 | -| [04. 프레임워크 비교](agent-memory/04-frameworks.md) | Mem0 · Zep · Graphiti · Letta · Cognee · Azure AI Search, 자체 구현 대비 도입 판단 | -| [05. 프로덕션과 평가](agent-memory/05-production-evaluation.md) | 계층 저장, PII·GDPR, 관측성·비용, 평가 지표 및 표준 벤치마크 | -| [06. 커머스 적용 설계](agent-memory/06-commerce-application.md) | **핵심 산출물** — 메모리 스키마, 지연 예산, 안티패턴, Phase 0~4 로드맵 | - ---- - -### 3. 메모리에는 어떤 종류가 있는가 - -#### 3.1 Agent Memory 8유형 - -"장기 메모리를 도입한다"는 말은 설계 단계에서 성립하지 않는다. 아래 중 무엇인지 특정해야 저장소와 수명이 정해진다. - -| 유형 | 무엇을 기억하나 | 범위 | 수명 | -|------|---------------|------|------| -| **Working** | 단일 요청을 처리하는 동안의 스크래치패드 | 요청 1건 | 요청 종료 시 소멸 | -| **Short-term** | 진행 중인 세션의 대화 맥락 | 세션 1건 | 세션 TTL | -| **Semantic** | 시점을 벗어난 **일반화된 사실** | 유저 | 고정 또는 장기 | -| **Episodic** | 시점·맥락을 포함한 **완결된 사건 기록** | 유저 × 시점 | 중기 | -| **Procedural** | 반복 워크플로, 툴 사용 절차 | 에이전트 | 버전 관리 | -| **Entity / Graph** | 엔티티와 **엔티티 간 관계** | 전역 + 유저 | 소멸 없음 | -| **Persona** | 에이전트 자신의 역할·톤 | 에이전트 | 버전 관리 | -| **Structured RAG** | 스키마가 있는 도메인 데이터의 정밀 검색 | 도메인 데이터 | 원본 수명에 종속 | - -**혼동하기 쉬운 두 쌍** - -- **Working vs Short-term** — Working은 요청 1건 안에서만 살고, Short-term은 세션 전체를 산다. 둘을 같게 다루면 토큰 예산 관리가 무너진다 -- **Semantic vs Episodic** — *"화요일에 알려줬다"* 는 사건(Episodic), *"생일은 3월 15일"* 은 증류된 사실(Semantic)이다. **Episodic으로 포착하고 Semantic으로 증류하는** 조합이 프로덕션의 기본형이다 - -#### 3.2 실무에서 가장 많이 쓰는 구분 — Semantic Memory의 하위 분류 - -개인화 품질은 대부분 이 네 가지를 구분했는지에서 갈린다. - -| 구분 | 판단 기준 | 보존 정책 | 예시 | -|------|----------|----------|------| -| **constraint** | 미충족 시 **구매·사용 자체가 불가** | Pinned (소멸 없음) | 통신사·자급제 구분, eSIM 지원 여부 / 업무 정책상 요구되는 노트북 OS 사양 / 보험 가입 가능 기간 및 대상 모델 / 기존 기기와의 모니터 포트·VESA 규격 / 가전 설치 공간 치수, 문 열림 방향 | -| **preference** | 만족도에 영향, 구매 불가 사유는 아님 | Long half-life (90~180일) | 폴더블 선호, 고용량 스토리지 선택 성향 / 노트북 휴대성 우선 / 모니터 고주사율 선호 / 비스포크 색상 패널 취향 | -| **intent** | 이번 구매 건에 한정, 시간 경과 시 무효 | Short half-life (30분~수시간) | 현재 탐색 중인 카테고리, 이번 건의 가격대, 약정 만료에 따른 기기 변경 검토 | -| **context** | 여러 카테고리에 공통 적용되는 배경 | Very long half-life (180일+) | 기존 보유 갤럭시 기기 및 생태계 자산, 사용 목적(업무용·학습용), 가구원 수·주거 형태 | - -> **constraint는 랭킹 가중치가 아니라 하드 필터로 처리한다.** 가중치로 두면 타 속성 점수가 높을 때 가입 불가 상품이나 호환되지 않는 제품이 상위에 노출된다. - ---- - -### 4. 어떻게 구성할 수 있는가 - -#### 4.1 유형별 저장소와 Azure 매핑 - -접근 패턴이 다르므로 유형마다 적합한 저장소가 다르다. - -| 유형 | 1순위 저장소 | Azure 매핑 | -|------|-------------|-----------| -| Working | 프로세스 인메모리 | (앱 프로세스 내부 — 외부 저장 불필요) | -| Short-term | Redis (TTL) | Azure Managed Redis | -| Semantic | PostgreSQL + pgvector | Azure Database for PostgreSQL | -| Episodic | 벡터 인덱스 + 시간 필터 | Azure AI Search, Cosmos DB | -| Procedural | JSON / YAML (Git 관리) | Blob Storage, Azure App Configuration | -| Entity / Graph | 그래프 DB | Cosmos DB for Apache Gremlin | -| Persona | 설정 파일 / 프롬프트 템플릿 | Azure App Configuration | -| Structured RAG | 검색 엔진 | Azure AI Search | -| *(Cold Archive)* | 오브젝트 스토리지 | Azure Blob Storage (Cool / Archive) | - -#### 4.2 최소 구성부터 시작한다 - -``` -[ 최소 구성 ] 저장소 2개로 개인화의 대부분을 커버한다 - Azure Managed Redis → Short-term (세션 버퍼, TTL) - Azure DB for PostgreSQL (pgvector) → Semantic (프로필) + Episodic (이벤트 테이블) - -[ 확장 구성 ] 필요가 실제로 발생한 뒤에 추가한다 - + Azure AI Search → Structured RAG (상품·주문 정밀 질의) - + 그래프 DB → Entity / Graph (관계 기반 추천) - + Blob Storage → Cold Archive (감사·규제 보존) -``` - -#### 4.3 아키텍처 패턴 5종 - -저장소를 어떻게 조합하느냐가 검색 품질과 확장성을 결정한다. - -| 패턴 | 저장소 구성 | 적합한 상황 | -|------|-----------|-----------| -| **Single-Store** | 벡터 DB 1개 | 프로토타입·데모. 커지면 검색 품질이 급락 | -| **Dual-Store** | 세션 버퍼 + 장기 저장소 | **대부분의 실서비스 출발점** | -| **Tiered** | HOT / WARM / COLD | 이력이 방대하고 지연 요구가 엄격할 때 | -| **Graph-Augmented** | 벡터 + 지식 그래프 | 엔티티 관계 기반 추천이 필요할 때 | -| **Full Cognitive** | 유형별 전용 저장소 + 라우터 | 대규모 어시스턴트. 오버엔지니어링 위험 최대 | - -> 패턴은 자연스럽게 중첩된다. **Dual-Store로 시작해 진화시키는 것**이 권장 경로이며, Full Cognitive를 처음부터 짓지 않는다. - -#### 4.4 보존 정책은 유형별로 분리한다 - -같은 저장소에 넣더라도 보존 정책은 반드시 나눈다. 하나로 통일하는 것이 가장 흔한 설계 실패다. - -| 유형 | 방식 | 값 | -|------|------|-----| -| Working | Request-scoped | — | -| Short-term | TTL | 30분 ~ 24시간 (세션 정의에 따름) | -| Semantic — constraint | Pinned (decay 면제) | — | -| Semantic — context | Very long half-life | 180일+ | -| Semantic — preference | Long half-life | 90~180일 | -| Semantic — intent | Short half-life | 30분 ~ 수시간 | -| Episodic | Medium half-life + 접근 시 강화 | 14~60일 | -| Entity / Graph · Procedural · Persona | 소멸 없음 | 버전 관리 | -| Cold Archive | 규제 기준 보존 기간 | 3~5년 | - ---- - -### 5. 도입 방안 - -#### 5.1 단계별 로드맵 - -| Phase | 주요 과제 | 기대 효과 | -|-------|----------|----------| -| 0 | 평가 하네스, baseline 측정, PII·동의 게이트 | 개선 효과의 측정 가능성 확보 | -| 1 | Dual-Store 구성, 비동기 추출, constraint 하드 필터 | 반복 질의 없는 응대 | -| 2 | 시간 인식 메모리, 통합·정리 배치 | 현재 의도와 장기 취향의 분리 | -| 3 | 계층 저장, Structured RAG, 제품 관계 그래프 | 규모 확장 시 지연·비용 통제 | -| 4 | 라우팅, 아카이브, 샤딩 | 선택적 고도화 | - -> **Phase 0을 선행하지 않을 경우, 이후의 모든 개선 활동에 대한 효과 검증이 불가능하다.** - -#### 5.2 자체 구현과 외부 도입의 경계 - -- **정책과 스키마는 직접 소유한다** — 메모리 유형 정의, 추출 규칙, 보존 정책, 저장소 라우팅 -- **인프라 컴포넌트는 가져온다** — 벡터 검색, 그래프 백엔드, 리랭커, 평가 하네스, 관측성 -- 관리형 메모리 서비스(Mem0 · Zep 등)의 도입 판단 기준은 [04. 프레임워크 비교](agent-memory/04-frameworks.md)에 정리되어 있다 - ---- - -### 6. 구성 시 유의사항 - -| 항목 | 내용 | -|------|------| -| **읽기·쓰기 경로 분리** | 사실 추출·중복 해소·라우팅은 응답 반환 후 비동기로. 실시간 경로에 두면 사용자 대기 시간이 늘어난다 | -| **행동 데이터도 입력이다** | 커머스에서는 조회·비교·구매·반품 이력이 대화만큼 중요하다. 처음부터 동일 스키마로 수집한다 | -| **틀린 기억의 비용** | 오기억 1회가 신뢰를 크게 깎는다. confidence를 함께 저장하고 낮으면 확인 절차를 둔다 | - ---- - -### 7. 그 외 문서에서 다루는 사항 - -- 하이브리드 검색 파이프라인과 단계별 지연 비용 -- 개인화 강도의 단계 정의 및 과잉 개인화 방지 기준 -- 추천 신뢰도 지표(거절률·옵트아웃률)를 포함한 기술·비즈니스 지표 체계 -- 커머스 메모리 설계에서 반복 관찰되는 안티패턴 -- GDPR 삭제권 대응을 위한 전 계층 삭제 체크리스트 - -> 개념 이해는 [01. 메모리 분류 체계](agent-memory/01-memory-taxonomy.md)와 [02. 아키텍처 패턴](agent-memory/02-architecture-patterns.md)을, 실제 적용 설계는 [06. 커머스 적용 설계](agent-memory/06-commerce-application.md)를 참조할 것. diff --git a/scripts/docs/validate_public_safety.py b/scripts/docs/validate_public_safety.py index 541c974..1110b89 100644 --- a/scripts/docs/validate_public_safety.py +++ b/scripts/docs/validate_public_safety.py @@ -32,7 +32,7 @@ } TEXT_FILENAMES = {".env", "dockerfile"} TEXT_COMPOUND_SUFFIXES = (".env.example",) -SCAN_ROOTS = ("docs", "samples") +SCAN_ROOTS = ("docs",) UUID = r"[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}" KNOWN_ENVIRONMENT_MARKERS = ( "rg-rubicon", diff --git a/tests/docs/test_public_safety.py b/tests/docs/test_public_safety.py index 7b1866c..130f422 100644 --- a/tests/docs/test_public_safety.py +++ b/tests/docs/test_public_safety.py @@ -22,21 +22,21 @@ def test_git_ignores_local_state_without_hiding_shared_inputs(tmp_path: Path) -> local_paths = { ".azure/deployment-plan.md", ".azure/validate-status.json", - "samples/example/.azure/environment.json", + "docs/services/example/topic/samples/example/.azure/environment.json", ".claude/settings.local.json", ".DS_Store", - "docs/guides/example/.DS_Store", + "docs/services/example/topic/.DS_Store", "sim-env.json", - "samples/example/sim-env.json", + "docs/services/example/topic/samples/example/sim-env.json", "docs/services/azure-monitor/azure-sre-agent/samples/event-lab/evidence/run.json", *COMPLETED_PLAN_PATHS, } shared_paths = { ".vscode/mcp.json", ".devcontainer/devcontainer.json", - "samples/example/.env.example", - "samples/example/infra/main.parameters.json", - "samples/example/assets/captures/report.md", + "docs/services/example/topic/samples/example/.env.example", + "docs/services/example/topic/samples/example/infra/main.parameters.json", + "docs/services/example/topic/samples/example/assets/captures/report.md", "project/specs/maintained-design.md", } result = subprocess.run( @@ -66,8 +66,9 @@ def test_repository_does_not_track_local_artifacts() -> None: def make_repository(tmp_path: Path) -> Path: - (tmp_path / "docs" / "guides" / "aks" / "example").mkdir(parents=True) - (tmp_path / "samples" / "aks" / "example").mkdir(parents=True) + topic = tmp_path / "docs" / "services" / "aks" / "example" + topic.mkdir(parents=True) + (topic / "samples" / "example").mkdir(parents=True) return tmp_path @@ -75,7 +76,7 @@ def test_public_safety_accepts_placeholders_and_example_hosts( tmp_path: Path, ) -> None: root = make_repository(tmp_path) - (root / "docs" / "guides" / "aks" / "example" / "index.md").write_text( + (root / "docs" / "services" / "aks" / "example" / "index.md").write_text( """\ # Safe example @@ -98,8 +99,8 @@ def test_public_safety_scans_supported_text_and_detects_sensitive_values( tmp_path: Path, ) -> None: root = make_repository(tmp_path) - docs = root / "docs" / "guides" / "aks" / "example" - samples = root / "samples" / "aks" / "example" + docs = root / "docs" / "services" / "aks" / "example" + samples = docs / "samples" / "example" (docs / "index.md").write_text( """\ # Unsafe example @@ -140,20 +141,19 @@ def test_public_safety_scans_supported_text_and_detects_sensitive_values( assert any("file is not valid UTF-8" in error for error in result.errors) -def test_public_safety_fails_closed_for_missing_or_empty_scan_roots( +def test_public_safety_fails_closed_for_missing_or_empty_docs_root( tmp_path: Path, ) -> None: - missing_samples = tmp_path / "missing-samples" - (missing_samples / "docs").mkdir(parents=True) + missing_docs = tmp_path / "missing-docs" + missing_docs.mkdir() empty = tmp_path / "empty" (empty / "docs").mkdir(parents=True) - (empty / "samples").mkdir() - missing_result = validate_public_safety.validate_repository(missing_samples) + missing_result = validate_public_safety.validate_repository(missing_docs) empty_result = validate_public_safety.validate_repository(empty) assert any( - "samples" in error and "missing" in error + "docs" in error and "missing" in error for error in missing_result.errors ) assert any("no public text files" in error for error in missing_result.errors) @@ -163,10 +163,12 @@ def test_public_safety_fails_closed_for_missing_or_empty_scan_roots( @pytest.mark.parametrize("name", [".env", ".ENV"]) def test_public_safety_scans_bare_dotenv_files(tmp_path: Path, name: str) -> None: root = make_repository(tmp_path) - (root / "docs" / "guides" / "aks" / "example" / "index.md").write_text( + (root / "docs" / "services" / "aks" / "example" / "index.md").write_text( "# Safe example\n", encoding="utf-8" ) - environment = root / "samples" / name + environment = ( + root / "docs" / "services" / "aks" / "example" / "samples" / "example" / name + ) environment.write_text( "SEARCH_ENDPOINT=https://private-search-123.search.windows.net\n", encoding="utf-8", @@ -176,7 +178,8 @@ def test_public_safety_scans_bare_dotenv_files(tmp_path: Path, name: str) -> Non assert result.file_count == 2 assert any( - f"samples/{name}:1:" in error and "non-example Azure service hostname" in error + f"docs/services/aks/example/samples/example/{name}:1:" in error + and "non-example Azure service hostname" in error for error in result.errors ) diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py index 45ab8bd..a3f0373 100644 --- a/tests/docs/test_topics.py +++ b/tests/docs/test_topics.py @@ -501,3 +501,100 @@ def test_repository_connected_topics_have_canonical_layout() -> None: assert [ member.metadata.get("redirect_from") for member in topic.members ] == [[redirect] for redirect in topic_expected["redirects"]] + + +def test_repository_uses_only_canonical_topic_packages() -> None: + moved_documents = { + ("application-development", "nodejs-file-io-cpu"): + "guides/application-development/nodejs-file-io-cpu/index.md", + ("azure-ai-search", "eventual-consistency-reindex"): + "cases/azure-ai-search/eventual-consistency-reindex/index.md", + ("azure-ai-search", "korean-analyzer-comparison"): + "guides/azure-ai-search/korean-analyzer-comparison/index.md", + ("azure-application-gateway", "sse-response-buffering"): + "guides/azure-application-gateway/sse-response-buffering/index.md", + ("azure-application-gateway", "waf-path-ip-allowlist"): + "guides/azure-application-gateway/waf-path-ip-allowlist/index.md", + ("azure-architecture", "response-time-optimization"): + "guides/azure-architecture/response-time-optimization/index.md", + ("azure-automation", "portal-cli-limitations"): + "guides/azure-automation/portal-cli-limitations/index.md", + ("azure-cosmos-db", "nodejs-client-optimization"): + "guides/azure-cosmos-db/nodejs-client-optimization/index.md", + ("azure-cosmos-db", "nodejs-dns-lookup-bottleneck"): + "guides/azure-cosmos-db/nodejs-dns-lookup-bottleneck/index.md", + ("azure-cosmos-db", "point-read-optimization"): + "guides/azure-cosmos-db/point-read-optimization/index.md", + ("azure-database-for-mysql", "blue-green-upgrade"): + "guides/azure-database-for-mysql/blue-green-upgrade/index.md", + ("azure-database-for-mysql", "nodejs-read-write-routing"): + "guides/azure-database-for-mysql/nodejs-read-write-routing/index.md", + ("azure-kubernetes-service", "file-io-throttling"): + "cases/azure-kubernetes-service/file-io-throttling/index.md", + ("azure-kubernetes-service", "netapp-files-cpu-io-wait"): + "cases/azure-kubernetes-service/netapp-files-cpu-io-wait/index.md", + ("azure-kubernetes-service", "pod-database-query-latency"): + "cases/azure-kubernetes-service/pod-database-query-latency/index.md", + ("azure-kubernetes-service", "argocd-image-updater-acr"): + "guides/azure-kubernetes-service/argocd-image-updater-acr/index.md", + ("azure-kubernetes-service", "authorization-troubleshooting"): + "guides/azure-kubernetes-service/authorization-troubleshooting/index.md", + ("azure-kubernetes-service", "cni-overlay-nsg"): + "guides/azure-kubernetes-service/cni-overlay-nsg/index.md", + ("azure-kubernetes-service", "kaito-open-source-model"): + "guides/azure-kubernetes-service/kaito-open-source-model/index.md", + ("azure-kubernetes-service", "pod-affinity-distribution"): + "guides/azure-kubernetes-service/pod-affinity-distribution/index.md", + ("azure-kubernetes-service", "pod-scheduling-agent-pools"): + "guides/azure-kubernetes-service/pod-scheduling-agent-pools/index.md", + ("azure-kubernetes-service", "pyroscope-anf-s3"): + "guides/azure-kubernetes-service/pyroscope-anf-s3/index.md", + ("azure-kubernetes-service", "python-memory-leak-memray"): + "guides/azure-kubernetes-service/python-memory-leak-memray/index.md", + ("azure-kubernetes-service", "remote-cluster-local-development"): + "guides/azure-kubernetes-service/remote-cluster-local-development/index.md", + ("azure-kubernetes-service", "spot-h100-kaito"): + "guides/azure-kubernetes-service/spot-h100-kaito/index.md", + ("azure-kubernetes-service", "workload-identity-databricks"): + "guides/azure-kubernetes-service/workload-identity-databricks/index.md", + ("azure-load-testing", "locust-appgw-aks-private"): + "guides/azure-load-testing/locust-appgw-aks-private/index.md", + ("azure-managed-redis", "cluster-failover-recovery"): + "cases/azure-managed-redis/cluster-failover-recovery/index.md", + ("azure-monitor", "aks-private-opentelemetry"): + "guides/azure-monitor/aks-private-opentelemetry/index.md", + ("azure-monitor", "dynamic-thresholds-brief"): + "research/azure-monitor/dynamic-thresholds-brief/index.md", + ("azure-openai", "adaptive-ptu-load-balancing"): + "guides/azure-openai/adaptive-ptu-load-balancing/index.md", + ("azure-storage", "mobile-resumable-upload-tus"): + "guides/azure-storage/mobile-resumable-upload-tus/index.md", + ("microsoft-foundry", "agent-framework-2026"): + "research/microsoft-foundry/agent-framework-2026/index.md", + ("microsoft-foundry", "codex-closed-network"): + "guides/microsoft-foundry/codex-closed-network/index.md", + ("microsoft-foundry", "foundry-local-air-gapped"): + "guides/microsoft-foundry/foundry-local-air-gapped/index.md", + ("microsoft-foundry", "gpt-memory-layer"): + "guides/microsoft-foundry/gpt-memory-layer/index.md", + } + catalog = build_topic_catalog( + ROOT / "docs", load_taxonomy(ROOT / "docs-taxonomy.yml") + ) + + assert len(catalog.documents) == 62 + assert len(catalog.topics) == 40 + assert not any( + (ROOT / "docs" / name).exists() + for name in ("cases", "guides", "labs", "research") + ) + assert not (ROOT / "samples").exists() + assert all( + document.relative_path.parts[0] == "services" + for document in catalog.documents + ) + assert { + redirect + for topic_key, redirect in moved_documents.items() + if catalog.topics[topic_key].entry.metadata.get("redirect_from") == [redirect] + } == set(moved_documents.values()) diff --git a/samples/azure-app-service/oryx-test/app.py b/tests/fixtures/oryx-python-app/app.py similarity index 100% rename from samples/azure-app-service/oryx-test/app.py rename to tests/fixtures/oryx-python-app/app.py diff --git a/samples/azure-app-service/oryx-test/requirements.txt b/tests/fixtures/oryx-python-app/requirements.txt similarity index 100% rename from samples/azure-app-service/oryx-test/requirements.txt rename to tests/fixtures/oryx-python-app/requirements.txt From 1cb5dd4f439de5b7a8368693ebb3eb703f588e87 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 17:30:34 +0900 Subject: [PATCH 09/12] fix(docs): preserve transitional sample safety checks Use canonical Spring sample command paths while continuing to scan an optional top-level samples tree for public-safety violations until Task 5 enforces canonical-only layout. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../mobile-resumable-upload-tus/index.md | 4 ++-- scripts/docs/validate_public_safety.py | 5 ++-- tests/docs/test_public_safety.py | 23 +++++++++++++++++++ tests/docs/test_topics.py | 20 ++++++++++++++++ 4 files changed, 48 insertions(+), 4 deletions(-) diff --git a/docs/services/azure-storage/mobile-resumable-upload-tus/index.md b/docs/services/azure-storage/mobile-resumable-upload-tus/index.md index 5abb383..3a5e079 100644 --- a/docs/services/azure-storage/mobile-resumable-upload-tus/index.md +++ b/docs/services/azure-storage/mobile-resumable-upload-tus/index.md @@ -174,7 +174,7 @@ pip install requests

    build & run ```bash -cd azureblob/spring-resumable-upload +cd docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application mvn -DskipTests package java -jar target/spring-resumable-upload-0.1.0.jar # or: mvn spring-boot:run @@ -192,7 +192,7 @@ java -jar target/spring-resumable-upload-0.1.0.jar 50 MB 테스트 파일 생성 ```bash -cd spring-resumable-upload/scripts +cd docs/services/azure-storage/mobile-resumable-upload-tus/samples/spring-application/scripts ./make-test-file.sh test-50mb.bin 50 ``` diff --git a/scripts/docs/validate_public_safety.py b/scripts/docs/validate_public_safety.py index 1110b89..ff557bd 100644 --- a/scripts/docs/validate_public_safety.py +++ b/scripts/docs/validate_public_safety.py @@ -32,7 +32,8 @@ } TEXT_FILENAMES = {".env", "dockerfile"} TEXT_COMPOUND_SUFFIXES = (".env.example",) -SCAN_ROOTS = ("docs",) +SCAN_ROOTS = ("docs", "samples") +REQUIRED_SCAN_ROOTS = ("docs",) UUID = r"[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}" KNOWN_ENVIRONMENT_MARKERS = ( "rg-rubicon", @@ -116,7 +117,7 @@ def validate_repository(repo_root: Path | str) -> PublicSafetyResult: root = Path(repo_root) errors = [ f"{name}: expected public content directory is missing under {root}" - for name in SCAN_ROOTS + for name in REQUIRED_SCAN_ROOTS if not (root / name).is_dir() ] count = 0 diff --git a/tests/docs/test_public_safety.py b/tests/docs/test_public_safety.py index 130f422..3109fb6 100644 --- a/tests/docs/test_public_safety.py +++ b/tests/docs/test_public_safety.py @@ -76,6 +76,7 @@ def test_public_safety_accepts_placeholders_and_example_hosts( tmp_path: Path, ) -> None: root = make_repository(tmp_path) + assert not (root / "samples").exists() (root / "docs" / "services" / "aks" / "example" / "index.md").write_text( """\ # Safe example @@ -95,6 +96,28 @@ def test_public_safety_accepts_placeholders_and_example_hosts( assert result.errors == [] +def test_public_safety_scans_optional_top_level_samples(tmp_path: Path) -> None: + root = make_repository(tmp_path) + (root / "docs" / "services" / "aks" / "example" / "index.md").write_text( + "# Safe example\n", encoding="utf-8" + ) + legacy_sample = root / "samples" / "example" + legacy_sample.mkdir(parents=True) + (legacy_sample / ".env.example").write_text( + "SEARCH_ENDPOINT=https://private-search-123.search.windows.net\n", + encoding="utf-8", + ) + + result = validate_public_safety.validate_repository(root) + + assert result.file_count == 2 + assert any( + "samples/example/.env.example:1:" in error + and "non-example Azure service hostname" in error + for error in result.errors + ) + + def test_public_safety_scans_supported_text_and_detects_sensitive_values( tmp_path: Path, ) -> None: diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py index a3f0373..0ce6e49 100644 --- a/tests/docs/test_topics.py +++ b/tests/docs/test_topics.py @@ -598,3 +598,23 @@ def test_repository_uses_only_canonical_topic_packages() -> None: for topic_key, redirect in moved_documents.items() if catalog.topics[topic_key].entry.metadata.get("redirect_from") == [redirect] } == set(moved_documents.values()) + + +def test_mobile_upload_commands_use_the_canonical_sample_path() -> None: + guide = ( + ROOT + / "docs" + / "services" + / "azure-storage" + / "mobile-resumable-upload-tus" + / "index.md" + ).read_text(encoding="utf-8") + sample_path = ( + "docs/services/azure-storage/mobile-resumable-upload-tus/" + "samples/spring-application" + ) + + assert f"cd {sample_path}\n" in guide + assert f"cd {sample_path}/scripts\n" in guide + assert "cd azureblob/spring-resumable-upload" not in guide + assert "cd spring-resumable-upload/scripts" not in guide From a9d15e0d6fe1f230ab81c17ab90bc2bdf3ecea66 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 17:42:28 +0900 Subject: [PATCH 10/12] docs: define service topic package authoring Remove legacy collection discovery, enforce canonical topic and sample validation, and document the final authoring workflow. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- AGENTS.md | 115 ++++++++----- CONTRIBUTING.md | 19 ++- README.md | 8 +- docs/.nav.yml | 1 + docs/assets/stylesheets/extra.css | 150 +++++++++++++++++ docs/contributing/index.md | 219 +++++++++++++++++-------- mkdocs.yml | 2 + scripts/docs/content.py | 55 ++----- scripts/docs/generate_indexes.py | 13 +- scripts/docs/hooks.py | 31 +--- scripts/docs/topics.py | 93 ++--------- scripts/docs/validate_links.py | 15 +- scripts/docs/validate_metadata.py | 33 ++-- scripts/docs/validate_public_safety.py | 10 +- scripts/docs/validate_search_index.py | 5 +- scripts/docs/validate_sources.py | 4 +- tests/docs/test_content.py | 20 +-- tests/docs/test_indexes.py | 109 +----------- tests/docs/test_public_safety.py | 13 +- tests/docs/test_reader_navigation.py | 184 ++++++--------------- tests/docs/test_site_pipeline.py | 60 +++++-- tests/docs/test_topics.py | 63 ++----- tests/docs/test_validators.py | 53 ++++-- 23 files changed, 645 insertions(+), 630 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 9fd29cf..360152c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -3,65 +3,94 @@ ## Public documentation contract - 상세 기준은 `docs/contributing/index.md`를 단일 설명 문서로 사용한다. -- 공개 기술 문서는 `docs////index.md` page bundle로 작성한다. -- ``은 `cases`, `guides`, `labs`, `research` 중 하나이며 front matter의 `document_type`과 일치해야 한다. -- Azure 제품의 ``는 `azure-`와 공식 전체 제품명을 kebab-case로 조합한다(예: `azure-kubernetes-service`). -- Microsoft 제품은 공식 명칭을 보존하여 이름이 `Microsoft`로 시작하면 `microsoft-` slug를 사용하고, 오픈소스와 그 밖의 제품은 공식 프로젝트·제품명을 kebab-case로 사용한다. -- 새 서비스, 기술 또는 태그가 필요할 때만 `docs-taxonomy.yml`을 함께 수정한다. -- 개별 문서를 추가하기 위해 `mkdocs.yml`, `docs/.nav.yml`, README 또는 수동 문서 목록을 수정하지 않는다. 빌드가 폴더와 메타데이터에서 메뉴·색인을 생성한다. +- 공개 기술 문서는 + `docs/services//[/]/index.md` topic package로 + 작성한다. +- topic entry는 `/index.md`이며 `topic_order`를 쓰지 않는다. 연결된 + 자식 문서는 `//index.md`에 두고 `topic_order`를 1부터 + 중복 없이 연속으로 지정한다. +- `document_type`은 `case`, `guide`, `lab`, `research` 중 하나이며 + collection 호환 색인과 수명주기 규칙을 선택한다. 물리 경로에는 + collection 이름을 사용하지 않는다. +- Azure 제품의 ``는 `azure-`와 공식 전체 제품명을 kebab-case로 + 조합한다. 이름이 `Microsoft`로 시작하는 제품은 `microsoft-` slug를 + 사용하고, 그 밖의 제품은 공식 프로젝트·제품명을 kebab-case로 사용한다. +- 새 서비스, 기술 또는 태그가 필요할 때만 `docs-taxonomy.yml`을 함께 + 수정한다. +- 개별 문서를 추가하기 위해 `mkdocs.yml`, `docs/.nav.yml`, README 또는 + 수동 문서 목록을 수정하지 않는다. + +## Topic samples and redirects + +- 실행 가능한 프로젝트, 배포 매니페스트와 대용량 결과물은 + `docs/services///samples//`에 둔다. +- 각 sample에는 `sample.yml`과 `README.md`가 필요하다. manifest의 + `kind`는 `runnable` 또는 `artifact`이며, `used_by`는 `index` 또는 직접 + 자식 slug를 중복 없이 지정한다. +- 최상위 `samples/`에는 공개 콘텐츠를 추가하지 않는다. +- 페이지에서 렌더링할 이미지만 같은 bundle의 `images/`에 두며 의미 있는 + 대체 텍스트를 작성한다. +- 이전 공개 URL은 canonical 문서의 `redirect_from`으로 보존한다. redirect + 경로에 원본 Markdown을 다시 만들지 않는다. ## Publishing automation -- 문서의 원본은 Markdown page bundle과 front matter다. 기존 분류의 새 글은 `docs/guides/azure-kubernetes-service//index.md` 같은 bundle만 추가하고, 메뉴에 문서 경로를 수동 등록하지 않는다. -- 메뉴 트리, 서비스별·태그별·전체 글 목록과 검색 인덱스, 기존 문서 유형별 색인은 빌드 시 자동 생성한다. 기존 원문·서비스·유형별 색인 URL은 보존한다. 브라우저에서 Markdown을 다시 읽거나 별도의 수동 문서 목록을 동기화하는 구조를 추가하지 않는다. -- 서비스별·태그별 중메뉴 페이지와 `전체 글` 페이지의 본문·카드·링크·문서 수 역시 생성 결과다. 개별 글을 추가·수정할 때 이 페이지나 메뉴의 콘텐츠를 수동으로 수정하지 않는다. -- `mkdocs.yml`과 `docs/.nav.yml`은 사이트 공통 설정과 대메뉴 구성에만 사용한다. 새 서비스·기술·태그를 처음 도입할 때의 공통 분류 등록은 `docs-taxonomy.yml`에서 처리한다. -- 홈의 대표 글은 문서의 `featured: true`로 지정한다. 문서·서비스·사용된 태그 수와 서비스·태그·전체 글 탐색 카드도 자동 생성한다. 생성기에 특정 문서·서비스·태그 경로나 제목 목록을 하드코딩하지 않는다. -- 게시 자동화를 바꿀 때는 기존 설정·taxonomy·홈·문서를 그대로 두고 기존 분류의 Markdown bundle 하나만 추가해 재빌드하는 통합 테스트로 검증한다. 메뉴·서비스별/태그별 중메뉴 페이지·전체 글·홈 통계·검색이 자동 갱신되는지 확인하며, 설정 파일의 문자열이 존재하는지만 검사하는 테스트로 대체하지 않는다. - -## Reader interface - -- 공개 사이트 이름은 `Azure Engineering Notes`, 부제는 `Azure 기반 시스템의 설계·구현·운영 기록`이다. 저장소 이름과 URL의 `hellices/devguidesample`은 유지한다. -- 독자는 개발자다. 제목과 설명은 구체적인 증상, 기술적 선택, 관측과 판단의 근거를 드러내고 일반적인 홍보 문구나 관료적인 표현을 피한다. -- 대메뉴는 `홈`, `서비스별 보기`, `태그별 보기`, `전체 글`, `기여하기`로 구성한다. 사이드바의 주요 글 경로는 서비스별 보기 → 서비스 → 문서다. 문서 이름은 front matter의 `title`, 서비스 이름은 taxonomy를 사용하고 bundle 폴더를 불필요한 추가 단계로 노출하지 않는다. -- 서비스 목록은 front matter의 `services` 전체를 반영한다. 사이드바에는 bundle 폴더의 대표 서비스 아래 원본 글을 한 번만 배치하며 모든 수명주기 유형을 함께 보여준다. `cases`·`guides`·`labs`·`research`는 내부 작성·수명주기 분류로 유지하되 유형별 대메뉴나 독자 목록·대표 글의 유형 배지·색상 구분에 사용하지 않는다. -- 태그별 보기 → 해당 태그의 글 목록 → 원문으로 연결한다. 문서 상단과 카드의 태그는 검색이 아니라 동일한 태그별 목록으로 연결하고, 해당 태그가 front matter에 정확히 지정된 글만 보여준다. 사용된 태그와 글 수는 자동 생성하며 전체 글 목록에는 각 원본 글을 한 번만 표시한다. -- 그룹은 접기·펼치기가 가능하고 현재 문서의 경로만 기본으로 열린다. `navigation.sections`나 `navigation.expand`로 모든 그룹을 강제로 펼치지 않는다. -- 큰 화면에서는 전체 문서 사이드바를, 작은 화면에서는 햄버거 메뉴를 제공한다. 들여쓰기·굵기·구분선으로 계층을 표시하고 현재 문서를 강조한다. -- 글자 크기는 GitHub Markdown 수준을 기준으로 한다: 본문 16px, H1 32px, H2 24px, H3 20px, 코드 약 13.6px. 홈 제목만 과도하게 키우지 않으며 밝은·어두운 테마와 모바일에서도 실제 크기·가독성을 확인한다. -- 검토 상태와 확인일은 사실대로 메타데이터에 유지하되, 마이그레이션·검토 미완료 같은 관리용 안내를 본문 배너나 목록 배지로 자동 노출하지 않는다. 출처 링크와 실제 기술적 제약·비용 경고는 보존한다. +- 메뉴 트리, 서비스별·태그별·전체 글 목록, 검색 인덱스, collection 호환 + 색인과 이전 URL redirect page는 빌드 시 자동 생성한다. +- 대메뉴는 `홈`, `서비스별 보기`, `태그별 보기`, `전체 글`, `기여하기`다. + 서비스 branch 아래에는 canonical topic entry와 순서가 있는 자식 문서만 + 배치한다. redirect page와 collection 호환 색인은 이 branch에 넣지 않는다. +- 서비스 목록은 front matter의 `services` 전체를 반영한다. 사이드바에는 + 경로의 대표 서비스 아래 원본 topic을 한 번만 배치한다. +- 태그 링크는 정확히 일치하는 태그별 목록으로 연결한다. 전체 글에는 각 + canonical 문서를 한 번만 표시한다. +- 홈 대표 글은 topic entry의 `featured: true`로 지정한다. 생성기에 특정 + 문서·서비스·태그 경로나 제목 목록을 하드코딩하지 않는다. +- sample 파일은 public-safety 검사 대상이지만 MkDocs 사이트와 검색 + 인덱스에는 포함하지 않는다. ## Content lifecycle -- 발생 시점의 환경, 관측값, 조사와 해결 이력은 `cases`에 보존한다. -- 현재 권장 절차, 지원 상태와 버전별 차이는 `guides`에서 계속 갱신한다. -- 당시 증거를 보존하는 사례와 현재 절차를 갱신하는 가이드의 수명주기가 다르면 문서를 분리하고 `related_cases`·`related_guides`로 연결한다. `guides`·`research`의 연관된 비교·분석과 적용 절차는 한 문서에 함께 담을 수 있다. -- 실행 가능한 프로젝트, 배포 매니페스트와 대용량 결과물은 `samples/`에 두고 문서에서는 GitHub 소스 링크를 사용한다. -- 페이지에서 렌더링할 이미지만 같은 bundle의 `images/`에 두며 의미 있는 대체 텍스트를 작성한다. +- 발생 시점의 환경, 관측값, 조사와 해결 이력은 `document_type: case`로 + 보존한다. +- 현재 권장 절차, 지원 상태와 버전별 차이는 `document_type: guide`에서 + 계속 갱신한다. +- 재현 가능한 실습은 `document_type: lab`, 비교·벤치마크·아키텍처 조사는 + `document_type: research`를 사용한다. +- 당시 증거를 보존하는 사례와 현재 절차를 갱신하는 가이드의 수명주기가 + 다르면 문서를 분리하고 `related_cases`·`related_guides`로 연결한다. ## Official-source verification -- Microsoft 또는 Azure의 동작, 지원 여부, 제한, 버전, 구성 단계, CLI/API 사용법을 추가하거나 바꿀 때 `.github/skills/verify-with-microsoft-learn/SKILL.md`의 `verify-with-microsoft-learn` skill을 반드시 사용한다. -- Microsoft Learn MCP 검색 뒤 선택한 원문 전체를 조회하고, 주장과 적용 범위를 비교한다. -- `official_sources`, `sources_checked_at`, `verification_status`는 실제 검증 결과와 일치시킨다. URL만 추가한 것은 검증이 아니다. -- Microsoft Learn이 최종 권위가 아닌 Kubernetes·CNCF 세부 동작은 upstream 공식 문서도 함께 확인한다. -- 의미 검증을 완료하지 못하면 `verification_status: needs-review`로 남기고 완료했다고 표현하지 않는다. +- Microsoft 또는 Azure의 동작, 지원 여부, 제한, 버전, 구성 단계, + CLI/API 사용법을 추가하거나 바꿀 때 repository skill + `verify-with-microsoft-learn`을 반드시 사용한다. +- Microsoft Learn MCP 검색 뒤 선택한 원문 전체를 조회하고 주장과 적용 + 범위를 비교한다. +- `official_sources`, `sources_checked_at`, `verification_status`는 실제 + 검증 결과와 일치시킨다. URL만 추가한 것은 검증이 아니다. +- Microsoft Learn이 최종 권위가 아닌 Kubernetes·CNCF 세부 동작은 + upstream 공식 문서도 함께 확인한다. +- 의미 검증을 완료하지 못하면 `verification_status: needs-review`로 + 남기고 완료했다고 표현하지 않는다. ## Public safety -- 고객·조직·사용자 실명, 구독·테넌트 ID, 비밀, 연결 문자열, 내부 URL·IP·호스트명, 개인정보가 담긴 로그와 승인되지 않은 화면을 공개 문서에 넣지 않는다. -- 실제 식별자는 문서 전체에서 일관된 가상 값으로 치환한다. -- `.azure/`, `.claude/`, `.DS_Store`, `sim-env.json`과 실습 실행으로 생성된 `evidence/`는 로컬 상태이며 커밋하지 않는다. 이미 추적 중인 파일은 ignore 규칙만 추가해도 제외되지 않으므로 로컬 파일을 보존하면서 Git 추적도 해제한다. -- 공유 개발 설정(`.vscode/mcp.json`, `.devcontainer/`)과 예제 입력(`.env.example`, 배포 매개변수), 공개용으로 정리한 샘플 자료는 로컬 상태와 구분해 유지한다. -- 완료된 일회성 구축 계획·설계 기록은 현재 작성 지침과 구분하고 세션 또는 로컬 보관소에 남긴다. 공개 문서나 샘플에서 참조하는 자료·다이어그램 원본은 생성 파일 또는 중복이라는 이유만으로 삭제하지 않는다. +- 고객·조직·사용자 실명, 구독·테넌트 ID, 비밀, 연결 문자열, 내부 + URL·IP·호스트명, 개인정보가 담긴 로그와 승인되지 않은 화면을 공개 + 문서나 sample에 넣지 않는다. +- 실제 식별자는 문서와 sample 전체에서 일관된 가상 값으로 치환한다. +- `.azure/`, `.claude/`, `.DS_Store`, `sim-env.json`과 실행 중 생성된 + `evidence/`는 로컬 상태이며 커밋하지 않는다. +- 공유 개발 설정, 예제 입력과 비식별화한 공개 sample은 로컬 상태와 + 구분해 유지한다. ## Required validation -문서 CI는 `tests/docs`와 공개 문서·사이트 검증을 대상으로 한다. SRE 실습 등 `samples/`의 애플리케이션 테스트나 의존성을 문서 CI에 묶지 않는다. 게시 스크립트나 사이트 동작을 변경하면 `python -m pytest tests/docs -q`도 실행한다. - 문서 또는 사이트 구성을 변경한 뒤 저장소 루트에서 실행한다. ```powershell +python -m pytest tests/docs -q python scripts/docs/validate_metadata.py python scripts/docs/validate_sources.py python scripts/docs/validate_links.py @@ -70,4 +99,6 @@ mkdocs build --strict python scripts/docs/validate_search_index.py ``` -테스트나 검증 실패를 무시하거나 생성된 `site/` 및 검색 인덱스를 커밋하지 않는다. +테스트나 검증 실패를 무시하거나 생성된 `site/` 및 검색 인덱스를 커밋하지 +않는다. sample 애플리케이션의 별도 테스트나 의존성은 해당 sample 변경 +범위에서만 실행한다. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a3ccb13..c431edd 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,14 +1,27 @@ # 기여하기 -새 공개 문서는 `docs////index.md`에 추가합니다. 올바른 폴더와 front matter를 사용하면 메뉴와 색인은 빌드 시 자동 생성됩니다. +새 공개 문서는 +`docs/services//[/]/index.md`에 추가합니다. +`document_type`은 `case`, `guide`, `lab`, `research` 중 문서의 수명주기에 +맞게 선택하지만 물리 폴더에는 사용하지 않습니다. -문서 유형 선택, 메타데이터, 본문 구조, 태그, 이미지와 공개 안전성의 기준 문서는 [상세 기여 지침](docs/contributing/index.md)입니다. +실행 코드, 배포 매니페스트와 결과물은 +`docs/services///samples//`에 `sample.yml`과 +`README.md`를 포함해 둡니다. 최상위 collection 폴더와 `samples/`에는 새 +공개 콘텐츠를 추가하지 않습니다. -Microsoft 또는 Azure 기술 내용을 새로 쓰거나 바꿀 때는 repository skill `verify-with-microsoft-learn`을 사용해 Microsoft Learn 원문과 대조하고 출처 메타데이터를 갱신해야 합니다. +문서 유형, topic/child 순서, redirect, sample manifest, 메타데이터, 이미지, +공개 안전성의 단일 기준은 +[상세 기여 지침](docs/contributing/index.md)입니다. + +Microsoft 또는 Azure 기술 내용을 새로 쓰거나 바꿀 때는 repository skill +`verify-with-microsoft-learn`을 사용해 Microsoft Learn 원문과 대조하고 +출처 메타데이터를 갱신해야 합니다. 제출 전 다음을 실행하세요. ```powershell +python -m pytest tests/docs -q python scripts/docs/validate_metadata.py python scripts/docs/validate_sources.py python scripts/docs/validate_links.py diff --git a/README.md b/README.md index fa76600..0d4a320 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,11 @@ Azure 기반 시스템의 설계·구현·운영 기록을 공유합니다. 실 전체 문서 목록은 파일로 중복 관리하지 않습니다. 올바른 폴더와 front matter를 사용하면 Pages 메뉴, 서비스 색인과 태그 색인에 자동으로 포함됩니다. +공개 문서의 canonical 원본은 +`docs/services//[/]/index.md` topic package입니다. +실행 코드와 결과물은 해당 topic의 `samples//`에 두며, 최상위 +collection 폴더나 `samples/`에는 새 공개 콘텐츠를 추가하지 않습니다. + ## 로컬 미리보기 ```powershell @@ -25,6 +30,7 @@ python -m venv .venv .\.venv\Scripts\mkdocs serve ``` -자세한 작성·검증 규칙은 [CONTRIBUTING.md](CONTRIBUTING.md)를 확인하세요. +자세한 작성·검증 규칙은 +[공개 문서 작성 계약](docs/contributing/index.md)을 확인하세요. > 이 저장소와 Pages는 공개되어 있습니다. 고객·사용자 식별자, 구독·테넌트 ID, 비밀, 내부 URL 또는 승인되지 않은 화면 캡처를 커밋하지 마세요. diff --git a/docs/.nav.yml b/docs/.nav.yml index 23b6605..b13498d 100644 --- a/docs/.nav.yml +++ b/docs/.nav.yml @@ -1,3 +1,4 @@ +# Root reader destinations only; service and topic branches are generated. nav: - 홈: index.md - 서비스별 보기: services diff --git a/docs/assets/stylesheets/extra.css b/docs/assets/stylesheets/extra.css index 687d368..b776951 100644 --- a/docs/assets/stylesheets/extra.css +++ b/docs/assets/stylesheets/extra.css @@ -468,6 +468,10 @@ body { transition: border-color 160ms ease, transform 160ms ease; } +.dg-topic-card { + border-top: 3px solid var(--dg-card-accent); +} + .dg-doc-card:hover, .dg-collection-card:hover, .dg-service-card:hover, @@ -746,6 +750,133 @@ body { padding-block: 0.25rem; } +.dg-topic-overview, +.dg-topic-context, +.dg-topic-nav { + background: var(--dg-surface); + border: 1px solid var(--dg-border); + border-radius: 0.5rem; +} + +.dg-topic-overview { + margin-block: 1.25rem 1.75rem; + padding: 1rem 1.1rem; +} + +.md-typeset .dg-topic-overview > p:not(.dg-eyebrow) { + color: var(--dg-muted); + font-size: 0.7rem; + margin: 0; +} + +.dg-topic-list { + display: grid; + gap: 0.35rem; + margin: 0.8rem 0 0; + padding-left: 1.4rem; +} + +.dg-topic-list li { + padding-left: 0.2rem; +} + +.dg-topic-context, +.dg-topic-nav { + display: grid; + grid-template-columns: minmax(0, 1fr) auto auto; + align-items: center; + gap: 0.65rem; + padding: 0.7rem 0.85rem; +} + +.dg-topic-context { + grid-template-columns: minmax(0, 1fr) auto; + margin-bottom: 1.4rem; +} + +.dg-topic-nav { + margin-top: 2rem; +} + +.dg-topic-context span, +.dg-topic-nav span { + color: var(--dg-muted); + font-size: 0.68rem; + line-height: 1.5; +} + +.md-typeset :is(.dg-topic-context, .dg-topic-nav) a { + display: inline-flex; + align-items: center; + justify-content: center; + min-height: 1.9rem; + padding: 0.3rem 0.65rem; + background: var(--dg-soft); + border: 1px solid var(--dg-border); + border-radius: 0.3rem; + font-size: 0.65rem; + font-weight: 600; +} + +.md-typeset :is(.dg-topic-context, .dg-topic-nav) a:hover { + background: var(--dg-accent-soft); + border-color: var(--dg-accent); +} + +.dg-related-samples { + border-top: 1px solid var(--dg-border); + margin-top: 2rem; + padding-top: 1.2rem; +} + +.dg-sample-grid { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.8rem; +} + +.dg-sample-card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + padding: 0.9rem; + background: var(--dg-surface); + border: 1px solid var(--dg-border); + border-radius: 0.5rem; + transition: border-color 160ms ease, transform 160ms ease; +} + +.dg-sample-card:hover { + border-color: var(--dg-accent); + transform: translateY(-2px); +} + +.md-typeset .dg-sample-card h3 { + margin: 0 0 0.55rem; + font-size: var(--dg-font-h3); +} + +.md-typeset .dg-sample-card h3 a { + color: var(--dg-text); +} + +.md-typeset .dg-sample-card h3 a::after { + content: ""; + position: absolute; + inset: 0; + border-radius: 0.5rem; +} + +.md-typeset .dg-sample-card .dg-card-count { + margin-top: auto; +} + +.md-typeset :is(.dg-topic-list, .dg-topic-context, .dg-topic-nav, .dg-sample-card) a:focus-visible { + outline: 2px solid var(--dg-accent); + outline-offset: 3px; +} + .md-footer, .md-footer-meta { background: var(--dg-bg); @@ -846,6 +977,20 @@ body { padding-top: 1rem; } + .dg-topic-context, + .dg-topic-nav { + grid-template-columns: minmax(0, 1fr); + align-items: stretch; + } + + .md-typeset :is(.dg-topic-context, .dg-topic-nav) a { + width: 100%; + } + + .dg-sample-grid { + grid-template-columns: minmax(0, 1fr); + } + } @media (max-width: 480px) { @@ -875,6 +1020,7 @@ body { .dg-service-card, .dg-browse-card, .dg-tag-card, + .dg-sample-card, .md-typeset .dg-button { transition: none; } @@ -886,4 +1032,8 @@ body { .dg-tag-card:hover { transform: none; } + + .dg-sample-card:hover { + transform: none; + } } diff --git a/docs/contributing/index.md b/docs/contributing/index.md index 654cc47..a916ad6 100644 --- a/docs/contributing/index.md +++ b/docs/contributing/index.md @@ -1,74 +1,157 @@ --- title: 기여하기 -description: 재현할 수 있는 환경과 코드, 판단의 근거를 갖춘 기술 기록을 기여하는 방법 +description: 서비스 중심 topic package와 샘플, 메타데이터, 검증 규칙 ---

    CONTRIBUTING

    -# 코드와 근거를 함께 남겨주세요 +# 공개 문서 작성 계약 -어떤 환경에서 무엇을 관측했고, 왜 그 방법을 선택했는지까지 적어주세요. 다음 사람이 같은 조건을 재현하고, 자신의 환경에도 적용할 수 있는지 판단하는 데 도움이 됩니다. +이 페이지는 공개 문서 작성 규칙의 단일 기준입니다. 새 문서와 샘플은 모두 +`docs/services/` 아래의 topic package에 둡니다. `cases`, `guides`, `labs`, +`research`는 물리 폴더가 아니라 front matter의 `document_type`과 수명주기 +정책으로만 유지합니다. -
    +루트 `README.md`, `AGENTS.md`, `CONTRIBUTING.md`는 이 계약의 요약입니다. -1. **글의 성격을 고릅니다.** 특정 시점의 문제 해결, 재사용할 절차, 직접 해보는 실습, 선택지를 비교한 분석 중 어디에 해당하는지 정합니다. -2. **환경과 근거를 남깁니다.** 코드·관측값·공식 출처를 정리하고, 확인하지 못한 부분은 구분합니다. -3. **공개 전에 검증합니다.** 링크와 빌드 결과를 확인하고 실제 환경의 식별자나 비밀이 남아 있지 않은지 살펴봅니다. +## 문서 유형과 수명주기 -
    +| `document_type` | 용도 | 유지 방식 | +|---|---|---| +| `case` | 특정 시점의 증상, 관측, 조사, 원인과 해결 결과 | 당시 사실을 보존하고 필요하면 `historical`로 표시 | +| `guide` | 현재 권장하는 진단·구성 절차 | 지원 상태와 버전 변화에 맞춰 같은 문서를 갱신 | +| `lab` | 배포, 실행, 검증, 정리를 재현하는 실습 | 비용·검증·정리 절차까지 재검증 | +| `research` | 선택지, 성능, 아키텍처 비교 | 조사 기준일, 범위와 한계를 보존 | -이 페이지가 공개 문서 작성 규칙의 기준입니다. 루트 `CONTRIBUTING.md`와 `AGENTS.md`는 핵심 규칙과 실행할 검증 명령을 안내합니다. +당시 증거를 보존할 사례와 계속 갱신할 현재 절차는 분리하고 +`related_cases`·`related_guides`로 연결합니다. 비교와 적용 절차가 같은 +수명주기라면 하나의 `guide` 또는 `research` 안에 함께 둘 수 있습니다. -## 문서 유형 선택 +## canonical topic package -| 질문 | 모음 | 수명주기 | -|---|---|---| -| 특정 시점에 무엇이 발생했고 어떻게 해결했나? | 트러블슈팅 (`cases`) | 당시 사실을 보존하고 필요하면 `historical`로 표시 | -| 지금 같은 문제를 어떻게 진단·구성해야 하나? | 구현 가이드 (`guides`) | 제품 변화에 맞춰 같은 문서를 갱신 | -| 독자가 리소스를 배포해 재현할 수 있나? | 실습 (`labs`) | 비용, 검증, 정리 절차까지 재검증 | -| 선택지·성능·아키텍처를 어떤 기준으로 비교했나? | 비교·분석 (`research`) | 조사 기준일과 한계를 보존 | +### 독립 topic -문서 유형은 폴더·메타데이터와 보존·갱신 정책을 위한 내부 분류입니다. 독자 메뉴와 카드에는 유형을 표시하지 않고, 같은 서비스의 글을 유형 구분 없이 함께 보여줍니다. +자식 문서가 없는 글은 다음 구조를 사용합니다. -`guides`와 `research`에는 서로 연결된 비교·분석과 적용 절차를 함께 담을 수 있습니다. 비교와 구현이 함께 있다는 이유만으로 글을 나누지 않고, 문서의 주된 목적에 맞춰 유형을 선택합니다. +```text +docs/services/// +├── index.md +└── images/ + └── +``` -당시의 증거를 보존할 장애 이력과 계속 갱신할 현재 절차처럼 수명주기가 다르면 두 문서로 분리합니다. 사례에는 당시 환경·관측·결과를, 가이드에는 현재 지원 범위·권장 절차·검증·롤백을 두고 `related_cases`와 `related_guides`로 연결합니다. +`images/`는 페이지에서 직접 렌더링하는 이미지가 있을 때만 만듭니다. -## 폴더만으로 자동 게시하기 +### 연결된 topic + +순서가 있는 여러 문서는 하나의 topic package로 묶습니다. ```text -docs//// +docs/services/// ├── index.md -└── images/ +├── / +│ └── index.md +├── / +│ └── index.md +├── images/ +└── samples/ ``` -URL에 쓰이는 폴더 이름은 소문자 kebab-case 영문으로 작성합니다. Azure 제품의 ``는 `azure-`와 공식 전체 제품명을 조합합니다(예: `azure-kubernetes-service`, `azure-database-for-mysql`). Microsoft 제품은 공식 명칭을 보존하므로 이름이 `Microsoft`로 시작하면 `microsoft-` slug를 사용합니다(예: `microsoft-foundry`). 오픈소스와 그 밖의 제품은 임의의 공급자 접두사를 붙이지 않고 공식 프로젝트·제품명을 사용합니다. +루트 `index.md`가 topic entry입니다. entry에는 `topic_order`를 쓰지 않습니다. +직접 자식 문서에는 `topic_order: 1`, `topic_order: 2`처럼 1부터 시작하는 +중복 없는 연속 번호를 지정합니다. 손자 문서 구조는 허용하지 않습니다. -문서를 위 경로에 넣고 유효한 front matter를 작성하면 다음 빌드에서 자동으로 Pages에 포함됩니다. +### topic 소유 sample -- Awesome Nav의 glob fallback이 원본 페이지를 발견하고, 빌드 훅이 URL을 바꾸지 않은 채 서비스별 메뉴에 배치합니다. -- 생성기가 서비스별·태그별·전체 글 목록과 기존 문서 유형별 색인을 갱신합니다. -- 생성기와 훅이 문서·카드의 태그 링크와 태그별 목록을 만듭니다. Material tags는 메타데이터 처리를 유지하되 기본 태그·목록 UI는 표시하지 않습니다. -- Material search가 한국어와 영어 제목·본문·섹션을 전체 텍스트로 색인합니다. +실행 코드, 배포 매니페스트, 재현 프로젝트와 대용량 결과물은 이를 사용하는 +topic 안에 둡니다. -대메뉴는 **홈 · 서비스별 보기 · 태그별 보기 · 전체 글 · 기여하기**입니다. 사이드바의 주요 글 경로는 **서비스별 보기 → 서비스 → 문서**이며, 모든 수명주기 유형의 글을 함께 배치합니다. 문서 이름은 front matter의 `title`, 서비스 이름은 taxonomy를 사용합니다. bundle 폴더를 별도 메뉴 단계로 노출하지 않고, 각 그룹은 접고 펼칠 수 있으며 현재 읽는 문서의 경로만 기본으로 열립니다. 큰 화면에서는 전체 사이드바를, 작은 화면에서는 햄버거 메뉴를 제공합니다. 메뉴 데이터는 빌드 결과에 포함되므로 브라우저가 Markdown을 다시 읽어 구성하지 않습니다. +```text +docs/services///samples// +├── sample.yml +├── README.md +└── +``` -서비스 목록은 front matter의 `services`에 지정한 모든 서비스를 반영합니다. 여러 서비스와 관련된 글은 각 서비스 목록에서 찾을 수 있지만, 사이드바에는 bundle 경로의 ``를 대표 서비스로 삼아 원본 글을 한 번만 배치합니다. 서비스 제목은 유형을 섞은 해당 서비스의 글 목록으로 연결되고, 하위 메뉴의 문서 링크는 기존 원문 URL을 그대로 사용합니다. +`sample.yml` 형식은 다음과 같습니다. -태그 탐색은 **태그별 보기 → 해당 태그의 글 목록 → 원문** 순서입니다. 문서 상단과 카드의 태그도 검색 화면이 아니라 같은 태그별 목록으로 연결합니다. 목록에는 해당 태그가 front matter의 `tags`에 정확히 지정된 글만 포함합니다. 태그 개요에는 실제로 사용된 태그와 각 태그의 실제 글 수를 자동으로 표시하며, `전체 글`에는 각 원본 글을 한 번만 표시합니다. +```yaml +title: Event lab +description: Reproduces the monitored incident. +kind: runnable +used_by: + - index + - setup +``` + +- `title`, `description`, `kind`는 비어 있지 않은 문자열입니다. +- `kind`는 `runnable` 또는 `artifact`입니다. +- `used_by`는 sample을 표시할 문서 slug의 중복 없는 목록입니다. +- topic entry는 `index`, 자식 문서는 폴더 slug로 지정합니다. +- 각 sample에는 사용·검증·정리 방법을 설명하는 `README.md`가 필요합니다. +- sample 파일은 공개 안전성 검사를 받지만 MkDocs 사이트와 검색 색인에는 + 복사되지 않습니다. 문서에서는 생성되는 sample card 또는 GitHub 소스 + 링크로 연결합니다. + +최상위 `samples/`에는 공개 콘텐츠를 추가하지 않습니다. -`services/index.md`·`services//index.md`, `tags/index.md`·`tags/.md`, `articles/index.md`는 빌드 시 생성됩니다. 기존 유형별 색인과 `docs///index.md`에 해당하는 서비스 색인, 기존 원문·서비스 URL도 호환성을 위해 유지하지만 유형별 대메뉴는 만들지 않습니다. 작성자는 이 색인 파일이나 별도의 `docs/tags.md`를 직접 추가하지 않습니다. +## 경로와 redirect 규칙 -개별 문서 추가를 위해 `mkdocs.yml`, `docs/.nav.yml`, README 또는 수동 목록을 수정하지 않습니다. 새 서비스·기술·태그 식별자가 필요할 때만 `docs-taxonomy.yml`을 같은 PR에서 한 번 갱신합니다. +모든 ``, ``, ``, `` slug는 소문자 +kebab-case를 사용합니다. Azure 제품의 ``는 `azure-`와 공식 전체 +제품명을 조합합니다. 이름이 `Microsoft`로 시작하는 제품은 `microsoft-` +slug를 사용하고, 그 밖의 제품은 공식 프로젝트·제품명을 kebab-case로 +표현합니다. -| 추가하거나 바꾸려는 것 | 작성자가 수정할 곳 | -|---|---| -| 기존 서비스·태그를 사용하는 새 글 | 해당 bundle의 `index.md` | -| 글에서 보여줄 이미지 | 해당 bundle의 `images/` | -| 처음 사용하는 서비스·기술·태그 | 새 글과 `docs-taxonomy.yml` | -| 메뉴·목록·검색에 새 글 노출 | 별도 수정 없음 — 빌드가 처리 | +이전 공개 URL을 보존해야 하면 canonical 문서 front matter에 추가합니다. + +```yaml +redirect_from: + - guides///index.md +``` -홈에 소개할 글은 해당 문서의 front matter에 `featured: true`를 지정합니다. 홈의 대표 글은 이 메타데이터에서 최대 세 편을 고르며, 지정한 글이 없으면 문서 유형별로 글을 골라 보여줍니다. 이때 문서 유형은 내부 선택 기준이며, 독자 메뉴나 카드에서 유형을 구분해 표시하지 않습니다. 빌드가 문서·서비스·사용된 태그 수와 서비스·태그·전체 글 탐색 카드도 자동으로 생성합니다. 홈이나 생성기에 특정 문서·서비스·태그 목록을 하드코딩하지 않습니다. +redirect 경로는 `cases`, `guides`, `labs`, `research` 중 하나로 시작하는 +기존 4단계 `index.md` 경로여야 합니다. 해당 경로에 원본 Markdown을 다시 +만들지 않습니다. 빌드가 redirect page를 생성하며 검색과 서비스/topic +탐색에서는 제외합니다. + +`document_type`은 collection 호환 색인과 수명주기 요구사항을 선택하지만 +물리 경로를 결정하지 않습니다. `services/`, `tags/`, `articles/`와 +collection 호환 색인은 빌드가 생성합니다. 개별 문서를 추가하기 위해 +`mkdocs.yml`, `docs/.nav.yml`, README 또는 수동 문서 목록을 수정하지 +않습니다. + +## 세 가지 작성 workflow + +### 1. 독립 topic 추가 + +1. `docs/services///index.md`를 만듭니다. +2. 공통 front matter와 선택한 `document_type`의 필수 필드를 채웁니다. +3. 렌더링 이미지가 있으면 같은 bundle의 `images/`에 두고 의미 있는 대체 + 텍스트를 작성합니다. +4. 새 taxonomy 값이 있을 때만 `docs-taxonomy.yml`을 수정합니다. +5. 필수 검증을 모두 실행합니다. + +### 2. 연결된 topic 추가 또는 확장 + +1. topic entry를 `docs/services///index.md`에 둡니다. +2. 직접 자식마다 `/index.md`를 만들고 연속 `topic_order`를 + 지정합니다. +3. 이전 URL이 있으면 각 canonical 문서에 고유한 `redirect_from`을 + 기록합니다. +4. topic 안의 링크는 canonical `.md` 상대 경로로 작성합니다. +5. entry 목차, 이전·다음 이동, 서비스 메뉴가 자동 생성되는지 strict build로 + 확인합니다. + +### 3. sample 추가 + +1. `docs/services///samples//`을 만듭니다. +2. `sample.yml`과 `README.md`를 먼저 작성하고 `used_by` 소유 문서를 + 지정합니다. +3. 코드·매니페스트·결과물을 같은 sample 폴더에 둡니다. +4. 실제 식별자와 비밀을 가상 값으로 치환합니다. +5. public-safety 검사가 sample을 검사하고 strict build의 `site/`에는 sample + 파일이 없는지 확인합니다. ## 공통 front matter @@ -92,41 +175,44 @@ applies_to: [AKS 1.34+] --- ``` -`services`, `technologies`, `tags`와 유형별 `status`는 `docs-taxonomy.yml`의 값을 사용합니다. 제목은 한국어여도 제품명, API, 명령과 오류 메시지는 공식 영문 표기를 함께 써 검색 가능하게 합니다. - -유형별 전체 형식은 [사례 템플릿](case-template.md), [가이드 템플릿](guide-template.md), [실습 템플릿](lab-template.md), [리서치 템플릿](research-template.md)을 사용합니다. - -## Microsoft Learn MCP로 기술 주장 검증하기 +`services`, `technologies`, `tags`와 유형별 `status`는 +`docs-taxonomy.yml`의 값을 사용합니다. 유형별 전체 형식은 +[사례 템플릿](case-template.md), [가이드 템플릿](guide-template.md), +[실습 템플릿](lab-template.md), [리서치 템플릿](research-template.md)을 +사용합니다. 홈에 소개할 topic entry에는 `featured: true`를 지정할 수 +있습니다. -워크스페이스의 `.vscode/mcp.json`은 공식 Microsoft Learn MCP 서버를 연결합니다. Microsoft 또는 Azure의 제품 동작, 지원 상태, 제한, 버전, 구성 단계나 CLI/API 사용법을 작성할 때 repository skill `verify-with-microsoft-learn`을 사용합니다. +## 공식 출처 검증 -1. 변경한 문장에서 검증 가능한 주장을 나눕니다. -2. MCP가 현재 제공하는 도구 설명을 조회하고 Microsoft Learn을 검색합니다. -3. 검색 요약으로 끝내지 않고 관련 원문 전체를 가져옵니다. -4. 적용 범위, 전제 조건, 버전, 지원 상태와 제한을 본문의 주장과 비교합니다. -5. 실제 사용한 원문의 제목과 정규 URL을 `official_sources`에 기록하고 `sources_checked_at`을 확인일로 갱신합니다. -6. 모든 중요한 주장이 맞을 때만 `verification_status: verified`로 표시합니다. +Microsoft 또는 Azure의 동작, 지원 상태, 제한, 버전, 구성 단계나 CLI/API +사용법을 추가하거나 바꿀 때 repository skill `verify-with-microsoft-learn`을 +사용합니다. Microsoft Learn 검색 결과만 인용하지 말고 선택한 원문 전체를 +확인하여 주장, 적용 범위와 전제 조건을 비교합니다. -Kubernetes나 CNCF 프로젝트 구현처럼 Microsoft Learn이 최종 권위가 아닌 세부 사항은 `kubernetes.io`, `cncf.io` 또는 해당 프로젝트 공식 원문도 추가합니다. 검증을 끝내지 못한 문서는 `verification_status: needs-review`로 표시합니다. 자동 CI는 필드와 도메인을 검사하지만 본문의 의미를 대신 판단하지 않습니다. +실제로 확인한 원문의 제목과 정규 URL을 `official_sources`에 기록하고 +`sources_checked_at`을 확인일로 갱신합니다. 중요한 주장을 모두 확인했을 +때만 `verification_status: verified`로 표시합니다. 검증을 완료하지 못하면 +`verification_status: needs-review`로 남깁니다. Kubernetes·CNCF 세부 +동작은 필요한 경우 upstream 공식 문서도 함께 확인합니다. -## 본문과 파일 규칙 +## 본문과 공개 안전성 - 페이지마다 하나의 H1을 사용하고 H2/H3 순서를 건너뛰지 않습니다. -- 코드 블록에는 언어를 지정하고 비밀·실제 식별자를 넣지 않습니다. -- 문서 간 링크는 `.md` 소스 상대 경로를, 페이지 이미지는 `images/` 상대 경로를 사용합니다. -- 모든 이미지에 내용을 설명하는 대체 텍스트를 작성합니다. -- 실행 코드와 배포 파일은 `samples///`에 두고 GitHub 파일 링크로 연결합니다. -- 원시 로그, 캡처 타임라인과 생성 결과는 문서가 아니라 sample/evidence로 보관합니다. - -## 공개 안전성 - -고객·조직·사용자 실명, 구독·테넌트 ID, 키·토큰·인증서·연결 문자열, 내부 URL·IP·호스트명, 개인정보가 포함된 로그와 승인되지 않은 고객 화면을 게시하지 않습니다. `validate_public_safety.py`가 환경 고유 식별자의 대표 패턴을 검사하지만, 자동 검사와 별개로 사람이 원문과 이미지를 확인해야 합니다. +- 문서 링크는 canonical `.md` 상대 경로를 사용합니다. +- 렌더링 이미지는 같은 bundle의 `images/`에 두고 대체 텍스트를 씁니다. +- 고객·조직·사용자 실명, 구독·테넌트 ID, 키·토큰·인증서·연결 문자열, + 내부 URL·IP·호스트명, 개인정보가 포함된 로그와 승인되지 않은 화면을 + 게시하지 않습니다. +- 실제 식별자는 문서와 sample 전체에서 일관된 가상 값으로 치환합니다. +- `.azure/`, `.claude/`, `.DS_Store`, `sim-env.json`, 실행 중 생성된 + `evidence/`는 커밋하지 않습니다. -`.azure/`의 개인별 작업 상태, `.claude/`, `.DS_Store`, `sim-env.json`, 실습 실행으로 생성된 `evidence/`는 커밋하지 않습니다. 공유 개발 설정과 `.env.example` 같은 예제 입력은 유지하고, 공개할 관측 자료는 비식별화한 뒤 문서 또는 샘플 자료로 별도 정리합니다. 이미 Git이 추적 중인 로컬 파일은 `.gitignore`에 추가하는 것만으로 제외되지 않으므로, 파일을 로컬에 보존한 채 추적을 해제해야 합니다. +## 필수 검증 -## 로컬 검증 +저장소 루트에서 다음을 모두 실행합니다. ```powershell +python -m pytest tests/docs -q python scripts/docs/validate_metadata.py python scripts/docs/validate_sources.py python scripts/docs/validate_links.py @@ -135,4 +221,5 @@ mkdocs build --strict python scripts/docs/validate_search_index.py ``` -`main`에 병합되면 GitHub Actions가 같은 검사를 다시 실행하고 생성된 `site/`을 Pages artifact로 배포합니다. 생성 HTML과 검색 인덱스는 Git에 커밋하지 않습니다. +생성된 `site/`과 검색 인덱스는 커밋하지 않습니다. 실패한 검증을 무시하지 +않습니다. diff --git a/mkdocs.yml b/mkdocs.yml index 6879dd3..2215795 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -7,6 +7,8 @@ edit_uri: edit/main/docs/ docs_dir: docs site_dir: site use_directory_urls: true +exclude_docs: | + services/**/samples/** validation: links: diff --git a/scripts/docs/content.py b/scripts/docs/content.py index e6c99b7..82fc02c 100644 --- a/scripts/docs/content.py +++ b/scripts/docs/content.py @@ -95,26 +95,6 @@ def load_document(path: Path | str, docs_dir: Path | str | None = None) -> Docum return Document(source, PurePosixPath(relative.as_posix()), metadata, body) -def _collection_paths(taxonomy: Mapping[str, Any]) -> set[str]: - return { - config["path"] - for config in taxonomy.get("collections", {}).values() - if isinstance(config, Mapping) and isinstance(config.get("path"), str) - } - - -def _is_legacy_document_path( - relative_path: PurePosixPath, taxonomy: Mapping[str, Any] -) -> bool: - parts = relative_path.parts - return ( - len(parts) == 4 - and parts[-1] == "index.md" - and parts[0] in _collection_paths(taxonomy) - and KEBAB_CASE.fullmatch(parts[2]) is not None - ) - - def _is_canonical_document_path(relative_path: PurePosixPath) -> bool: parts = relative_path.parts if ( @@ -129,9 +109,9 @@ def _is_canonical_document_path(relative_path: PurePosixPath) -> bool: def iter_public_document_paths( - docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True + docs_dir: Path | str, taxonomy: Mapping[str, Any] ) -> Iterable[Path]: - """Yield canonical and legacy public page-bundle paths.""" + """Yield canonical public page-bundle paths.""" root = Path(docs_dir) candidate_paths: list[Path] = [] @@ -141,27 +121,16 @@ def iter_public_document_paths( if _is_canonical_document_path(PurePosixPath(path.relative_to(root).as_posix())): candidate_paths.append(path) - if include_legacy: - for collection_path in sorted(_collection_paths(taxonomy)): - collection_root = root / collection_path - if not collection_root.is_dir(): - continue - for path in collection_root.rglob("index.md"): - if _is_legacy_document_path( - PurePosixPath(path.relative_to(root).as_posix()), taxonomy - ): - candidate_paths.append(path) - for path in sorted(candidate_paths, key=lambda item: item.relative_to(root).as_posix()): yield path def iter_public_documents( - docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True + docs_dir: Path | str, taxonomy: Mapping[str, Any] ) -> Iterable[Document]: - """Yield page-bundle documents from configured public collections.""" + """Yield canonical page-bundle documents.""" root = Path(docs_dir) - for path in iter_public_document_paths(root, taxonomy, include_legacy=include_legacy): + for path in iter_public_document_paths(root, taxonomy): yield load_document(path, docs_dir=root) @@ -256,7 +225,6 @@ def validate_document( document: Document, taxonomy: Mapping[str, Any], today: date | None = None, - include_legacy: bool = True, ) -> list[str]: """Return every content-contract violation for one public document.""" current_date = today or date.today() @@ -281,20 +249,17 @@ def validate_document( else None ) parts = document.relative_path.parts - is_legacy_path = _is_legacy_document_path(document.relative_path, taxonomy) is_canonical_path = _is_canonical_document_path(document.relative_path) - if not is_canonical_path and not (include_legacy and is_legacy_path): - errors.append("public documents must use ///index.md") + if not is_canonical_path: + errors.append( + "public documents must use " + "services//[/]/index.md" + ) if not isinstance(collection, Mapping): if isinstance(document_type, str): errors.append(f"unknown document_type: {document_type}") else: - expected_folder = collection.get("path") - if is_legacy_path and parts and parts[0] != expected_folder: - errors.append( - f"folder '{parts[0]}' does not match {document_type} collection '{expected_folder}'" - ) status = metadata.get("status") if isinstance(status, str) and status not in collection.get("statuses", []): errors.append(f"invalid {document_type} status: {status}") diff --git a/scripts/docs/generate_indexes.py b/scripts/docs/generate_indexes.py index 81cd520..1bd4fdc 100644 --- a/scripts/docs/generate_indexes.py +++ b/scripts/docs/generate_indexes.py @@ -1,4 +1,4 @@ -"""Generate reader destinations and legacy indexes from public document metadata.""" +"""Generate reader destinations and compatibility indexes from document metadata.""" from __future__ import annotations @@ -16,8 +16,13 @@ if str(REPO_ROOT) not in sys.path: sys.path.insert(0, str(REPO_ROOT)) -from scripts.docs.content import Document, iter_public_documents, load_taxonomy -from scripts.docs.topics import Topic, TopicCatalog, build_topic_catalog +from scripts.docs.content import Document, load_taxonomy +from scripts.docs.topics import ( + Topic, + TopicCatalog, + build_topic_catalog, + iter_topic_documents, +) # Static English eyebrow labels for each document type / overview page, matching @@ -813,7 +818,7 @@ def write_generated_pages(repo_root: Path | None = None) -> None: root = repo_root or REPO_ROOT taxonomy = load_taxonomy(root / "docs-taxonomy.yml") - public_documents = list(iter_public_documents(root / "docs", taxonomy)) + public_documents = list(iter_topic_documents(root / "docs", taxonomy)) catalog = build_topic_catalog(root / "docs", taxonomy, documents=public_documents) documents = list(catalog.documents) diff --git a/scripts/docs/hooks.py b/scripts/docs/hooks.py index 40e6d39..5bd0ba5 100644 --- a/scripts/docs/hooks.py +++ b/scripts/docs/hooks.py @@ -20,9 +20,9 @@ if str(REPO_ROOT) not in sys.path: sys.path.insert(0, str(REPO_ROOT)) -from scripts.docs.content import iter_public_documents, load_taxonomy +from scripts.docs.content import load_taxonomy from scripts.docs.generate_indexes import build_tag_links -from scripts.docs.topics import TopicCatalog, build_topic_catalog +from scripts.docs.topics import TopicCatalog, build_topic_catalog, iter_topic_documents def _navigation_pages( @@ -54,7 +54,7 @@ def on_files(files: Any, config: Mapping[str, Any]) -> Any: def _topic_catalog_for(docs_dir: str) -> TopicCatalog: docs_path = Path(docs_dir) taxonomy = load_taxonomy(docs_path.parent / "docs-taxonomy.yml") - public_documents = list(iter_public_documents(docs_path, taxonomy)) + public_documents = list(iter_topic_documents(docs_path, taxonomy)) return build_topic_catalog(docs_path, taxonomy, documents=public_documents) @@ -202,7 +202,7 @@ def _topic_nav(current_path: PurePosixPath, catalog: TopicCatalog) -> str: def on_nav(nav: Navigation, config: Mapping[str, Any], files: Any) -> Navigation: - """Keep each article under its primary service without changing its URL.""" + """Place canonical topic packages under their primary service.""" docs_dir = Path(config["docs_dir"]) taxonomy = load_taxonomy(docs_dir.parent / "docs-taxonomy.yml") catalog = _topic_catalog_from_config(config) @@ -211,9 +211,7 @@ def on_nav(nav: Navigation, config: Mapping[str, Any], files: Any) -> Navigation collections = {entry["path"] for entry in taxonomy["collections"].values()} collection_indexes = {f"{collection}/index.md" for collection in collections} pages_by_path = {page.file.src_uri: page for page in nav.pages} - redirect_paths = {path.as_posix() for path in catalog.redirects} by_service: dict[str, list[tuple[str, StructureItem]]] = defaultdict(list) - included_paths: set[str] = set() for topic in catalog.topics.values(): entry_parts = topic.entry.relative_path.parts if entry_parts[0] == "services": @@ -227,7 +225,6 @@ def on_nav(nav: Navigation, config: Mapping[str, Any], files: Any) -> Navigation else: page.title = str(member.metadata.get("title", page.title or "")) member_pages.append(page) - included_paths.add(member.relative_path.as_posix()) if not member_pages: continue if len(member_pages) == 1: @@ -243,26 +240,6 @@ def on_nav(nav: Navigation, config: Mapping[str, Any], files: Any) -> Navigation ) continue - for member in topic.members: - page = pages_by_path.get(member.relative_path.as_posix()) - if page is None: - continue - included_paths.add(member.relative_path.as_posix()) - by_service[topic.primary_service].append( - (str(member.metadata.get("title", "")).casefold(), page) - ) - - for page in nav.pages: - src_uri = page.file.src_uri - parts = PurePosixPath(src_uri).parts - if src_uri in included_paths or src_uri in collection_indexes: - continue - if src_uri in redirect_paths: - continue - if len(parts) == 4 and parts[0] in collections and parts[-1] == "index.md": - by_service[parts[1]].append((str(page.title or "").casefold(), page)) - included_paths.add(src_uri) - for page in nav.pages: page.parent = None page.previous_page = None diff --git a/scripts/docs/topics.py b/scripts/docs/topics.py index 1092eea..a55f61b 100644 --- a/scripts/docs/topics.py +++ b/scripts/docs/topics.py @@ -1,4 +1,4 @@ -"""Topic-package catalog for transitional and canonical documentation layouts.""" +"""Topic-package catalog for canonical documentation layouts.""" from __future__ import annotations @@ -8,7 +8,7 @@ import yaml -from scripts.docs.content import Document, DocumentFormatError, load_document +from scripts.docs.content import Document, DocumentFormatError, KEBAB_CASE, load_document LEGACY_COLLECTIONS = frozenset(("cases", "guides", "labs", "research")) @@ -43,15 +43,6 @@ class TopicCatalog: redirects: dict[PurePosixPath, PurePosixPath] -def _legacy_collection_paths(taxonomy: Mapping[str, Any]) -> tuple[str, ...]: - paths = { - config["path"] - for config in taxonomy.get("collections", {}).values() - if isinstance(config, Mapping) and isinstance(config.get("path"), str) - } - return tuple(sorted(paths)) - - def _is_canonical_document_path(relative_path: PurePosixPath) -> bool: parts = relative_path.parts return ( @@ -59,25 +50,14 @@ def _is_canonical_document_path(relative_path: PurePosixPath) -> bool: and parts[0] == "services" and parts[-1] == "index.md" and "samples" not in parts - ) - - -def _is_legacy_document_path( - relative_path: PurePosixPath, collection_paths: Iterable[str] -) -> bool: - parts = relative_path.parts - return ( - len(parts) == 4 - and parts[-1] == "index.md" - and parts[0] in set(collection_paths) + and all(KEBAB_CASE.fullmatch(part) for part in parts[1:-1]) ) def iter_topic_documents( - docs_dir: Path | str, taxonomy: Mapping[str, Any], include_legacy: bool = True + docs_dir: Path | str, taxonomy: Mapping[str, Any] ) -> Iterable[Document]: root = Path(docs_dir) - collection_paths = _legacy_collection_paths(taxonomy) candidates: list[Path] = [] services_root = root / "services" @@ -87,16 +67,6 @@ def iter_topic_documents( if _is_canonical_document_path(relative): candidates.append(path) - if include_legacy: - for collection_path in collection_paths: - collection_root = root / collection_path - if not collection_root.is_dir(): - continue - for path in collection_root.rglob("index.md"): - relative = PurePosixPath(path.relative_to(root).as_posix()) - if _is_legacy_document_path(relative, collection_paths): - candidates.append(path) - for path in sorted(candidates, key=lambda item: item.relative_to(root).as_posix()): yield load_document(path, docs_dir=root) @@ -221,16 +191,21 @@ def _build_sample_asset( def build_topic_catalog( docs_dir: Path | str, taxonomy: Mapping[str, Any], - include_legacy: bool = True, documents: Iterable[Document] | None = None, ) -> TopicCatalog: root = Path(docs_dir) if documents is None: - documents = iter_topic_documents(root, taxonomy, include_legacy=include_legacy) + documents = iter_topic_documents(root, taxonomy) ordered_documents = tuple( - sorted(documents, key=lambda document: document.relative_path.as_posix()) + sorted( + ( + document + for document in documents + if _is_canonical_document_path(document.relative_path) + ), + key=lambda document: document.relative_path.as_posix(), + ) ) - collection_paths = _legacy_collection_paths(taxonomy) errors: list[str] = [] services_root = root / "services" @@ -244,16 +219,8 @@ def build_topic_catalog( f"{relative.as_posix()}: child documents must be directly below the topic" ) - canonical_documents = [ - document for document in ordered_documents if document.relative_path.parts[0] == "services" - ] - legacy_documents = [ - document - for document in ordered_documents - if document.relative_path.parts[0] in set(collection_paths) - ] grouped: dict[tuple[str, str], list[Document]] = {} - for document in canonical_documents: + for document in ordered_documents: grouped.setdefault(_topic_key(document.relative_path), []).append(document) topics: dict[tuple[str, str], Topic] = {} @@ -261,14 +228,6 @@ def build_topic_catalog( position_by_document: dict[PurePosixPath, int] = {} samples_by_document: dict[PurePosixPath, tuple[SampleAsset, ...]] = {} - legacy_by_key: dict[tuple[str, str], list[Document]] = {} - for document in legacy_documents: - if _is_legacy_document_path(document.relative_path, collection_paths): - legacy_by_key.setdefault( - (document.relative_path.parts[1], document.relative_path.parts[2]), - [], - ).append(document) - for key in sorted(grouped): service, slug = key members = grouped[key] @@ -371,30 +330,6 @@ def build_topic_catalog( if errors: raise DocumentFormatError("invalid topic catalog:\n" + "\n".join(errors)) - for key in sorted(legacy_by_key): - legacy_group = tuple( - sorted(legacy_by_key[key], key=lambda document: document.relative_path.as_posix()) - ) - if key in topics: - topic = topics[key] - for legacy_document in legacy_group: - by_document[legacy_document.relative_path] = topic - position_by_document[legacy_document.relative_path] = 0 - samples_by_document[legacy_document.relative_path] = () - continue - topic = Topic( - primary_service=key[0], - slug=key[1], - entry=legacy_group[0], - members=legacy_group, - samples=(), - ) - topics[key] = topic - for position, legacy_document in enumerate(legacy_group): - by_document[legacy_document.relative_path] = topic - position_by_document[legacy_document.relative_path] = position - samples_by_document[legacy_document.relative_path] = () - for redirect_path, canonical_path in redirects.items(): topic = by_document.get(canonical_path) if topic is not None: diff --git a/scripts/docs/validate_links.py b/scripts/docs/validate_links.py index f0c135b..7ff5631 100644 --- a/scripts/docs/validate_links.py +++ b/scripts/docs/validate_links.py @@ -20,9 +20,9 @@ DocumentFormatError, ValidationResult, iter_public_document_paths, - load_document, load_taxonomy, ) +from scripts.docs.topics import iter_topic_documents @dataclass(frozen=True) @@ -81,14 +81,15 @@ def validate_repository(repo_root: Path | str) -> ValidationResult: ) errors: list[str] = [] count = 0 - for page in iter_public_document_paths(docs_dir, taxonomy): + try: + documents = list(iter_topic_documents(docs_dir, taxonomy)) + except DocumentFormatError as error: + count = sum(1 for _ in iter_public_document_paths(docs_dir, taxonomy)) + return ValidationResult(count, [str(error)]) + for document in documents: count += 1 + page = document.path relative = page.relative_to(root).as_posix() - try: - document = load_document(page, docs_dir=docs_dir) - except DocumentFormatError as error: - errors.append(str(error)) - continue parser = _LinkParser() parser.feed(renderer.reset().convert(document.body)) parser.close() diff --git a/scripts/docs/validate_metadata.py b/scripts/docs/validate_metadata.py index b5432c0..b3ce806 100644 --- a/scripts/docs/validate_metadata.py +++ b/scripts/docs/validate_metadata.py @@ -19,10 +19,12 @@ load_taxonomy, validate_document, ) -from scripts.docs.topics import build_topic_catalog +from scripts.docs.topics import build_topic_catalog, iter_topic_documents -def _candidate_paths(docs_dir: Path, taxonomy: Mapping[str, Any]) -> Iterable[Path]: +def _authoring_markdown_paths( + docs_dir: Path, taxonomy: Mapping[str, Any] +) -> Iterable[Path]: paths = { config["path"] for config in taxonomy.get("collections", {}).values() @@ -34,7 +36,7 @@ def _candidate_paths(docs_dir: Path, taxonomy: Mapping[str, Any]) -> Iterable[Pa yield from sorted(root.rglob("*.md")) services_root = docs_dir / "services" if services_root.is_dir(): - for path in sorted(services_root.rglob("index.md")): + for path in sorted(services_root.rglob("*.md")): relative = path.relative_to(docs_dir).parts if "samples" not in relative: yield path @@ -52,17 +54,28 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val docs_dir = root / "docs" taxonomy = load_taxonomy(root / "docs-taxonomy.yml") errors: list[str] = [] + authoring_paths = list(_authoring_markdown_paths(docs_dir, taxonomy)) + try: + canonical_documents = list(iter_topic_documents(docs_dir, taxonomy)) + except DocumentFormatError: + canonical_documents = [] + canonical_by_path = { + document.path.resolve(): document for document in canonical_documents + } documents = [] count = 0 - for path in _candidate_paths(docs_dir, taxonomy): + for path in authoring_paths: relative = path.relative_to(root).as_posix() count += 1 - try: - document = load_document(path, docs_dir=docs_dir) - except DocumentFormatError as error: - errors.append(str(error)) - continue - documents.append(document) + document = canonical_by_path.get(path.resolve()) + if document is None: + try: + document = load_document(path, docs_dir=docs_dir) + except DocumentFormatError as error: + errors.append(str(error)) + continue + if document.relative_path.parts[0] == "services": + documents.append(document) errors.extend( f"{relative}: {message}" for message in validate_document(document, taxonomy, today=today) diff --git a/scripts/docs/validate_public_safety.py b/scripts/docs/validate_public_safety.py index ff557bd..c11a52f 100644 --- a/scripts/docs/validate_public_safety.py +++ b/scripts/docs/validate_public_safety.py @@ -32,7 +32,7 @@ } TEXT_FILENAMES = {".env", "dockerfile"} TEXT_COMPOUND_SUFFIXES = (".env.example",) -SCAN_ROOTS = ("docs", "samples") +SCAN_ROOTS = ("docs",) REQUIRED_SCAN_ROOTS = ("docs",) UUID = r"[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}" KNOWN_ENVIRONMENT_MARKERS = ( @@ -120,6 +120,14 @@ def validate_repository(repo_root: Path | str) -> PublicSafetyResult: for name in REQUIRED_SCAN_ROOTS if not (root / name).is_dir() ] + legacy_samples = root / "samples" + if legacy_samples.is_dir(): + errors.extend( + f"{path.relative_to(root).as_posix()}: " + "legacy samples directory must not contain tracked public content" + for path in sorted(legacy_samples.rglob("*")) + if path.is_file() + ) count = 0 for path in _text_files(root): count += 1 diff --git a/scripts/docs/validate_search_index.py b/scripts/docs/validate_search_index.py index 0b0570b..b692b4f 100644 --- a/scripts/docs/validate_search_index.py +++ b/scripts/docs/validate_search_index.py @@ -18,7 +18,8 @@ if str(REPO_ROOT) not in sys.path: sys.path.insert(0, str(REPO_ROOT)) -from scripts.docs.content import iter_public_documents, load_taxonomy +from scripts.docs.content import load_taxonomy +from scripts.docs.topics import iter_topic_documents KOREAN_WORD = re.compile(r"[가-힣]{2,}") @@ -90,7 +91,7 @@ def _representative_match(pattern: re.Pattern[str], body: str, title: str) -> st def validate_repository(repo_root: Path | str) -> SearchIndexResult: root = Path(repo_root) taxonomy = load_taxonomy(root / "docs-taxonomy.yml") - documents = list(iter_public_documents(root / "docs", taxonomy)) + documents = list(iter_topic_documents(root / "docs", taxonomy)) index_path = root / "site" / "search" / "search_index.json" if not index_path.is_file(): return SearchIndexResult( diff --git a/scripts/docs/validate_sources.py b/scripts/docs/validate_sources.py index a9c13bc..9542bed 100644 --- a/scripts/docs/validate_sources.py +++ b/scripts/docs/validate_sources.py @@ -14,10 +14,10 @@ from scripts.docs.content import ( DocumentFormatError, ValidationResult, - iter_public_documents, load_taxonomy, validate_source_metadata, ) +from scripts.docs.topics import iter_topic_documents def validate_repository(repo_root: Path | str, today: date | None = None) -> ValidationResult: @@ -27,7 +27,7 @@ def validate_repository(repo_root: Path | str, today: date | None = None) -> Val errors: list[str] = [] count = 0 try: - documents = list(iter_public_documents(docs_dir, taxonomy)) + documents = list(iter_topic_documents(docs_dir, taxonomy)) except DocumentFormatError as error: return ValidationResult(0, [str(error)]) for document in documents: diff --git a/tests/docs/test_content.py b/tests/docs/test_content.py index 701e329..9805151 100644 --- a/tests/docs/test_content.py +++ b/tests/docs/test_content.py @@ -58,13 +58,13 @@ def test_valid_page_bundle_satisfies_the_content_contract( path = copy_fixture( tmp_path, "valid-guide.md", - "guides/aks/network-diagnosis/index.md", + "services/aks/network-diagnosis/index.md", ) document = load_document(path, docs_dir=tmp_path / "docs") assert document.relative_path.as_posix() == ( - "guides/aks/network-diagnosis/index.md" + "services/aks/network-diagnosis/index.md" ) assert document.metadata["sources_checked_at"] == date(2026, 9, 12) assert validate_document(document, taxonomy, today=date(2026, 9, 12)) == [] @@ -74,7 +74,7 @@ def test_page_bundle_requires_yaml_front_matter(tmp_path: Path) -> None: path = copy_fixture( tmp_path, "invalid-guide.md", - "guides/aks/no-front-matter/index.md", + "services/aks/no-front-matter/index.md", ) with pytest.raises(DocumentFormatError, match="YAML front matter"): @@ -87,7 +87,7 @@ def test_content_contract_rejects_invalid_path_taxonomy_and_source( path = copy_fixture( tmp_path, "valid-guide.md", - "guides/aks/Network_Diagnosis.md", + "services/aks/Network_Diagnosis.md", ) loaded = load_document(path, docs_dir=tmp_path / "docs") metadata = { @@ -107,7 +107,7 @@ def test_content_contract_rejects_invalid_path_taxonomy_and_source( ) expected = ( - "public documents must use ///index.md", + "public documents must use services//[/]/index.md", "unknown service: unknown", "invalid guide status: draft", "sources_checked_at cannot be in the future", @@ -124,7 +124,7 @@ def test_unverified_guide_can_leave_last_verified_empty( path = copy_fixture( tmp_path, "valid-guide.md", - "guides/aks/network-diagnosis/index.md", + "services/aks/network-diagnosis/index.md", ) loaded = load_document(path, docs_dir=tmp_path / "docs") metadata = { @@ -160,7 +160,7 @@ def test_invalid_metadata_values_return_validation_errors( tmp_path: Path, taxonomy: dict, field: str, value: object ) -> None: path = copy_fixture( - tmp_path, "valid-guide.md", "guides/aks/network-diagnosis/index.md" + tmp_path, "valid-guide.md", "services/aks/network-diagnosis/index.md" ) loaded = load_document(path, docs_dir=tmp_path / "docs") @@ -173,7 +173,7 @@ def test_invalid_metadata_values_return_validation_errors( assert any(field in error for error in errors), errors -def test_canonical_topic_paths_are_valid_during_transition( +def test_canonical_topic_paths_are_valid( tmp_path: Path, taxonomy: dict ) -> None: path = tmp_path / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" @@ -193,7 +193,7 @@ def test_featured_is_optional_boolean( tmp_path: Path, taxonomy: dict, featured: bool ) -> None: path = copy_fixture( - tmp_path, "valid-guide.md", "guides/aks/network-diagnosis/index.md" + tmp_path, "valid-guide.md", "services/aks/network-diagnosis/index.md" ) loaded = load_document(path, docs_dir=tmp_path / "docs") @@ -208,7 +208,7 @@ def test_malformed_source_url_returns_a_validation_error( tmp_path: Path, taxonomy: dict ) -> None: path = copy_fixture( - tmp_path, "valid-guide.md", "guides/aks/network-diagnosis/index.md" + tmp_path, "valid-guide.md", "services/aks/network-diagnosis/index.md" ) loaded = load_document(path, docs_dir=tmp_path / "docs") diff --git a/tests/docs/test_indexes.py b/tests/docs/test_indexes.py index bc89635..0606123 100644 --- a/tests/docs/test_indexes.py +++ b/tests/docs/test_indexes.py @@ -122,7 +122,7 @@ def build_topic_fixture( featured=True, ) - catalog = build_topic_catalog(docs_dir, taxonomy, include_legacy=False) + catalog = build_topic_catalog(docs_dir, taxonomy) return list(catalog.documents), catalog @@ -632,71 +632,6 @@ def test_redirect_pages_point_to_canonical_topic_entries_and_stay_out_of_indexes assert all("old-topic" not in content for content in pages.values()) -def test_mixed_canonical_and_legacy_topic_inputs_do_not_overcount_topic_matches( - tmp_path: Path, taxonomy: dict -) -> None: - documents, catalog = build_topic_fixture(tmp_path, taxonomy) - documents.append( - doc( - "guides/azure-monitor/new-topic/index.md", - title="Legacy topic", - description="Legacy topic description", - document_type="guide", - services=["azure-monitor"], - tags=["networking"], - ) - ) - - pages = build_index_pages(documents, taxonomy, catalog=catalog) - - assert "4 / 3개 문서 일치" not in pages[PurePosixPath("guides/index.md")] - assert "Legacy topic" in pages[PurePosixPath("guides/index.md")] - - -def test_legacy_same_slug_documents_from_different_collections_do_not_collapse( - tmp_path: Path, taxonomy: dict -) -> None: - documents = [ - doc( - "guides/azure-monitor/shared/index.md", - title="Guide title", - description="Guide description", - document_type="guide", - services=["azure-monitor"], - tags=["networking"], - ), - doc( - "research/azure-monitor/shared/index.md", - title="Research title", - description="Research description", - document_type="research", - services=["azure-monitor"], - tags=["networking"], - ), - ] - docs_dir = tmp_path / "docs" - for item in documents: - write_topic_document( - docs_dir, - item.relative_path.as_posix(), - str(item.metadata["title"]), - tags=list(item.metadata["tags"]), - ) - path = docs_dir / item.relative_path - contents = path.read_text(encoding="utf-8") - path.write_text( - contents.replace("document_type: guide", f"document_type: {item.metadata['document_type']}"), - encoding="utf-8", - ) - catalog = build_topic_catalog(docs_dir, taxonomy, documents=documents) - - pages = build_index_pages(documents, taxonomy, catalog=catalog) - - assert "Guide title" in pages[PurePosixPath("guides/index.md")] - assert "Research title" in pages[PurePosixPath("research/index.md")] - assert pages[PurePosixPath("tags/networking.md")].count('class="dg-topic-card"') == 0 - - def test_secondary_service_pages_show_the_matching_service_on_topic_cards( tmp_path: Path, taxonomy: dict ) -> None: @@ -713,48 +648,6 @@ def test_secondary_service_pages_show_the_matching_service_on_topic_cards( assert "Azure Monitor1 / 3개 문서 일치" not in service_page -def test_singleton_canonical_topics_keep_same_key_legacy_pages_visible( - tmp_path: Path, taxonomy: dict -) -> None: - documents = [ - doc( - "services/azure-monitor/topic/index.md", - title="Canonical topic", - description="Canonical description", - document_type="guide", - services=["azure-monitor"], - tags=["networking"], - ), - doc( - "guides/azure-monitor/topic/index.md", - title="Legacy guide", - description="Legacy description", - document_type="guide", - services=["azure-monitor"], - tags=["networking"], - ), - ] - docs_dir = tmp_path / "docs" - write_topic_document( - docs_dir, - "services/azure-monitor/topic/index.md", - "Canonical topic", - tags=["networking"], - ) - write_topic_document( - docs_dir, - "guides/azure-monitor/topic/index.md", - "Legacy guide", - tags=["networking"], - ) - catalog = build_topic_catalog(docs_dir, taxonomy, documents=documents) - - pages = build_index_pages(documents, taxonomy, catalog=catalog) - - assert "Canonical topic" in pages[PurePosixPath("guides/index.md")] - assert "Legacy guide" in pages[PurePosixPath("guides/index.md")] - - # --------------------------------------------------------------------------- # build_index_pages: service pages # --------------------------------------------------------------------------- diff --git a/tests/docs/test_public_safety.py b/tests/docs/test_public_safety.py index 3109fb6..e0041c6 100644 --- a/tests/docs/test_public_safety.py +++ b/tests/docs/test_public_safety.py @@ -96,24 +96,21 @@ def test_public_safety_accepts_placeholders_and_example_hosts( assert result.errors == [] -def test_public_safety_scans_optional_top_level_samples(tmp_path: Path) -> None: +def test_public_safety_rejects_legacy_top_level_sample_content(tmp_path: Path) -> None: root = make_repository(tmp_path) (root / "docs" / "services" / "aks" / "example" / "index.md").write_text( "# Safe example\n", encoding="utf-8" ) legacy_sample = root / "samples" / "example" legacy_sample.mkdir(parents=True) - (legacy_sample / ".env.example").write_text( - "SEARCH_ENDPOINT=https://private-search-123.search.windows.net\n", - encoding="utf-8", - ) + (legacy_sample / "README.md").write_text("# Legacy sample\n", encoding="utf-8") result = validate_public_safety.validate_repository(root) - assert result.file_count == 2 + assert result.file_count == 1 assert any( - "samples/example/.env.example:1:" in error - and "non-example Azure service hostname" in error + "samples/example/README.md: legacy samples directory must not contain tracked public content" + in error for error in result.errors ) diff --git a/tests/docs/test_reader_navigation.py b/tests/docs/test_reader_navigation.py index e447c7b..8eed207 100644 --- a/tests/docs/test_reader_navigation.py +++ b/tests/docs/test_reader_navigation.py @@ -46,6 +46,24 @@ def document(collection: str, topic: str, title: str, tags: list[str]) -> Docume ) +def canonical_document( + document_type: str, topic: str, title: str, tags: list[str] +) -> Document: + relative_path = PurePosixPath("services") / "azure-monitor" / topic / "index.md" + return Document( + path=Path(relative_path), + relative_path=relative_path, + metadata={ + "title": title, + "description": f"{title} 설명", + "document_type": document_type, + "services": ["azure-monitor", "azure-storage"], + "tags": tags, + }, + body="networking이라는 단어를 본문에서 사용합니다.", + ) + + def write_topic_document( docs_dir: Path, relative_path: str, @@ -139,7 +157,7 @@ def build_topic_fixture(tmp_path: Path, taxonomy: dict) -> tuple[Path, object]: ) (sample_dir / "README.md").write_text("# Event lab\n", encoding="utf-8") - return docs_dir, build_topic_catalog(docs_dir, taxonomy, include_legacy=False) + return docs_dir, build_topic_catalog(docs_dir, taxonomy) def page_namespace(document: Document, *, previous: Document | None = None, next_: Document | None = None): @@ -401,125 +419,6 @@ def test_topic_pages_render_context_outline_and_related_samples( assert 'class="dg-sample-card"' not in standalone_rendered -def test_legacy_same_slug_pages_do_not_get_canonical_topic_ui( - tmp_path: Path, taxonomy: dict -) -> None: - docs_dir = tmp_path / "docs" - docs_dir.mkdir() - (tmp_path / "docs-taxonomy.yml").write_text( - yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), - encoding="utf-8", - ) - write_topic_document( - docs_dir, - "guides/azure-monitor/shared/index.md", - "Guide title", - tags=["networking"], - ) - write_topic_document( - docs_dir, - "research/azure-monitor/shared/index.md", - "Research title", - tags=["networking"], - ) - research_path = docs_dir / "research" / "azure-monitor" / "shared" / "index.md" - research_path.write_text( - research_path.read_text(encoding="utf-8").replace("document_type: guide", "document_type: research"), - encoding="utf-8", - ) - guide = document("guides", "shared", "Guide title", ["networking"]) - catalog = build_topic_catalog(docs_dir, taxonomy) - - rendered = on_page_markdown( - "# Guide title\n\n본문입니다.\n", - page_namespace(guide), - {"docs_dir": str(docs_dir)}, - None, - ) - - assert catalog.by_document[guide.relative_path].entry.relative_path == guide.relative_path - assert 'class="dg-topic-overview"' not in rendered - assert 'class="dg-topic-context"' not in rendered - assert 'class="dg-topic-nav"' not in rendered - - -def test_legacy_alias_page_does_not_render_canonical_entry_sample_cards( - tmp_path: Path, taxonomy: dict -) -> None: - docs_dir = tmp_path / "docs" - docs_dir.mkdir() - (tmp_path / "docs-taxonomy.yml").write_text( - yaml.safe_dump(taxonomy, allow_unicode=True, sort_keys=False), - encoding="utf-8", - ) - write_topic_document( - docs_dir, - "services/azure-monitor/agent-topic/index.md", - "Agent topic", - tags=["networking"], - ) - write_topic_document( - docs_dir, - "services/azure-monitor/agent-topic/setup/index.md", - "Setup child", - tags=["networking"], - topic_order=1, - ) - write_topic_document( - docs_dir, - "guides/azure-monitor/agent-topic/index.md", - "Legacy topic", - tags=["networking"], - ) - sample_dir = docs_dir / "services" / "azure-monitor" / "agent-topic" / "samples" / "entry-lab" - sample_dir.mkdir(parents=True, exist_ok=True) - (sample_dir / "sample.yml").write_text( - yaml.safe_dump( - { - "title": "Entry lab", - "description": "Owned by the canonical entry only.", - "kind": "runnable", - "used_by": ["index"], - }, - allow_unicode=True, - sort_keys=False, - ), - encoding="utf-8", - ) - (sample_dir / "README.md").write_text("# Entry lab\n", encoding="utf-8") - catalog = build_topic_catalog(docs_dir, taxonomy) - canonical_entry = next( - document - for document in catalog.documents - if document.relative_path == PurePosixPath("services/azure-monitor/agent-topic/index.md") - ) - legacy_page = document("guides", "agent-topic", "Legacy topic", ["networking"]) - - canonical_rendered = on_page_markdown( - "# Agent topic\n\n본문입니다.\n", - page_namespace(canonical_entry), - { - "docs_dir": str(docs_dir), - "repo_url": "https://github.com/example/devguidesample", - }, - None, - ) - legacy_rendered = on_page_markdown( - "# Legacy topic\n\n본문입니다.\n", - page_namespace(legacy_page), - { - "docs_dir": str(docs_dir), - "repo_url": "https://github.com/example/devguidesample", - }, - None, - ) - - assert 'class="dg-sample-card"' in canonical_rendered - assert "Entry lab" in canonical_rendered - assert 'class="dg-sample-card"' not in legacy_rendered - assert "Entry lab" not in legacy_rendered - - class ReaderPage(HTMLParser): def __init__(self, path: Path) -> None: super().__init__() @@ -641,7 +540,9 @@ def add_bundle(item: Document) -> Path: ) return path - original = add_bundle(document("guides", "setup", "B 구성 절차", ["networking"])) + original = add_bundle( + canonical_document("guide", "setup", "B 구성 절차", ["networking"]) + ) unchanged = [settings_path, navigation_path, taxonomy_path, docs / "index.md", original] original_bytes = [path.read_bytes() for path in unchanged] build(load_config(str(settings_path), strict=True)) @@ -649,11 +550,15 @@ def add_bundle(item: Document) -> Path: assert list(home.root_links.values()) == ["홈", "서비스별 보기", "태그별 보기", "전체 글", "기여하기"] assert home.navigation_links["services/azure-monitor/"] == "Azure Monitor" - assert home.navigation_links["guides/azure-monitor/setup/"] == "B 구성 절차" + assert home.navigation_links["services/azure-monitor/setup/"] == "B 구성 절차" assert home.expanded_groups == 0 assert not (tmp_path / "site/tags/latency/index.html").exists() - add_bundle(document("research", "choices", "A 선택 근거", ["networking", "latency"])) + add_bundle( + canonical_document( + "research", "choices", "A 선택 근거", ["networking", "latency"] + ) + ) build(load_config(str(settings_path), strict=True)) assert [path.read_bytes() for path in unchanged] == original_bytes @@ -663,18 +568,21 @@ def add_bundle(item: Document) -> Path: new_tag = ReaderPage(tmp_path / "site/tags/latency/index.html") assert [title for target, title in new_tag.card_entries] == ["A 선택 근거"] updated_home = ReaderPage(tmp_path / "site/index.html") - assert updated_home.navigation_links["research/azure-monitor/choices/"] == "A 선택 근거" + assert updated_home.navigation_links["services/azure-monitor/choices/"] == "A 선택 근거" sidebar_documents = [ entry for entry in updated_home.navigation_entries - if entry[0].startswith(("guides/", "research/")) + if entry[0].startswith("services/azure-monitor/") + and entry[0] != "services/azure-monitor/" ] primary_service = ("services/", "services/azure-monitor/") assert sidebar_documents == [ - ("research/azure-monitor/choices/", "A 선택 근거", primary_service), - ("guides/azure-monitor/setup/", "B 구성 절차", primary_service), + ("services/azure-monitor/choices/", "A 선택 근거", primary_service), + ("services/azure-monitor/setup/", "B 구성 절차", primary_service), ] - add_bundle(document("guides", "mentions", "C 본문만 일치", ["monitoring"])) + add_bundle( + canonical_document("guide", "mentions", "C 본문만 일치", ["monitoring"]) + ) build(load_config(str(settings_path), strict=True)) assert [path.read_bytes() for path in unchanged] == original_bytes @@ -686,11 +594,12 @@ def add_bundle(item: Document) -> Path: final_home = ReaderPage(tmp_path / "site/index.html") assert [ entry for entry in final_home.navigation_entries - if entry[0].startswith(("guides/", "research/")) + if entry[0].startswith("services/azure-monitor/") + and entry[0] != "services/azure-monitor/" ] == [ - ("research/azure-monitor/choices/", "A 선택 근거", primary_service), - ("guides/azure-monitor/setup/", "B 구성 절차", primary_service), - ("guides/azure-monitor/mentions/", "C 본문만 일치", primary_service), + ("services/azure-monitor/choices/", "A 선택 근거", primary_service), + ("services/azure-monitor/setup/", "B 구성 절차", primary_service), + ("services/azure-monitor/mentions/", "C 본문만 일치", primary_service), ] tag = ReaderPage(tmp_path / "site/tags/networking/index.html") @@ -700,8 +609,8 @@ def add_bundle(item: Document) -> Path: assert (tmp_path / "site/guides/azure-monitor/index.html").is_file() assert (tmp_path / "site/research/index.html").is_file() - article = ReaderPage(tmp_path / "site/guides/azure-monitor/setup/index.html") - article_url = "https://example.test/devguidesample/guides/azure-monitor/setup/" + article = ReaderPage(tmp_path / "site/services/azure-monitor/setup/index.html") + article_url = "https://example.test/devguidesample/services/azure-monitor/setup/" assert {urljoin(article_url, target) for target in article.tag_links} == { "https://example.test/devguidesample/tags/networking/" } @@ -714,4 +623,9 @@ def add_bundle(item: Document) -> Path: search = json.loads((tmp_path / "site/search/search_index.json").read_text(encoding="utf-8")) locations = {entry["location"] for entry in search["docs"]} - assert {"tags/networking/", "tags/latency/", "articles/", "research/azure-monitor/choices/"} <= locations + assert { + "tags/networking/", + "tags/latency/", + "articles/", + "services/azure-monitor/choices/", + } <= locations diff --git a/tests/docs/test_site_pipeline.py b/tests/docs/test_site_pipeline.py index 8f01995..bbe9139 100644 --- a/tests/docs/test_site_pipeline.py +++ b/tests/docs/test_site_pipeline.py @@ -331,6 +331,36 @@ def test_mkdocs_keeps_navigation_and_search_metadata_driven() -> None: if isinstance(plugin, dict) and "search" in plugin ) assert search["lang"] == ["ko", "en"] + assert config["exclude_docs"].strip() == "services/**/samples/**" + + +def test_topic_and_sample_styles_are_responsive_and_accessible() -> None: + css = ( + Path(__file__).parents[2] / "docs/assets/stylesheets/extra.css" + ).read_text(encoding="utf-8") + + for selector in ( + ".dg-topic-card", + ".dg-topic-overview", + ".dg-topic-list", + ".dg-topic-context", + ".dg-topic-nav", + ".dg-sample-grid", + ".dg-sample-card", + ): + assert selector in css + + mobile = css.split("@media (max-width: 760px)", 1)[1].split( + "@media (max-width: 480px)", 1 + )[0] + assert ".dg-topic-nav" in mobile + assert ".dg-sample-grid" in mobile + assert "grid-template-columns: minmax(0, 1fr)" in mobile + assert "a:focus-visible" in css + + reduced_motion = css.split("@media (prefers-reduced-motion: reduce)", 1)[1] + assert ".dg-sample-card" in reduced_motion + assert "transition: none" in reduced_motion def test_strict_build_rejects_missing_anchors( @@ -573,7 +603,7 @@ def make_search_repository(tmp_path: Path) -> Path: ), encoding="utf-8", ) - page = tmp_path / "docs" / "guides" / "aks" / "network-diagnosis" + page = tmp_path / "docs" / "services" / "aks" / "network-diagnosis" page.mkdir(parents=True) (page / "index.md").write_text(SEARCH_DOCUMENT, encoding="utf-8") (tmp_path / "site" / "search").mkdir(parents=True) @@ -656,17 +686,17 @@ def handle_data(self, text: str) -> None: (root / "site" / "index.html").read_text(encoding="utf-8") ) - assert single_document_navigation.links["guides/aks/network-diagnosis/"] == "AKS 네트워크 진단" + assert single_document_navigation.links["services/aks/network-diagnosis/"] == "AKS 네트워크 진단" assert single_document_navigation.links["services/aks/"] == "Azure Kubernetes Service" - page = docs / "guides" / "aks" / "new-topic" / "index.md" + page = docs / "services" / "aks" / "new-topic" / "index.md" page.parent.mkdir(parents=True) page.write_text( SEARCH_DOCUMENT.replace("AKS 네트워크 진단", "자동 게시 확인") + "\n추가된 문서의 검색 본문입니다.\n", encoding="utf-8", ) - third_page = docs / "guides" / "aks" / "z-last-topic" / "index.md" + third_page = docs / "services" / "aks" / "z-last-topic" / "index.md" third_page.parent.mkdir(parents=True) third_page.write_text( SEARCH_DOCUMENT.replace("AKS 네트워크 진단", "세 번째 문서"), @@ -680,33 +710,33 @@ def handle_data(self, text: str) -> None: ) assert [path.read_bytes() for path in unchanged_paths] == original_settings - assert navigation.links["guides/aks/network-diagnosis/"] == "AKS 네트워크 진단" - assert navigation.links["guides/aks/new-topic/"] == "자동 게시 확인" - assert navigation.links["guides/aks/z-last-topic/"] == "세 번째 문서" + assert navigation.links["services/aks/network-diagnosis/"] == "AKS 네트워크 진단" + assert navigation.links["services/aks/new-topic/"] == "자동 게시 확인" + assert navigation.links["services/aks/z-last-topic/"] == "세 번째 문서" assert navigation.links["services/aks/"] == "Azure Kubernetes Service" assert "guides/" not in navigation.links assert navigation.links["articles/"] == "Articles" assert "자동 게시 확인" in (root / "site" / "guides" / "index.html").read_text(encoding="utf-8") assert any( - entry["location"] == "guides/aks/new-topic/" + entry["location"] == "services/aks/new-topic/" and "추가된 문서" in entry["text"] for entry in search["docs"] ) article_navigation = PrimaryNavigation() article_navigation.feed( - (root / "site" / "guides" / "aks" / "network-diagnosis" / "index.html").read_text( + (root / "site" / "services" / "aks" / "network-diagnosis" / "index.html").read_text( encoding="utf-8" ) ) - article_url = "https://example.test/guides/aks/network-diagnosis/" + article_url = "https://example.test/services/aks/network-diagnosis/" resolved_links = { urljoin(article_url, target): title for target, title in article_navigation.links.items() } assert resolved_links[article_url] == "AKS 네트워크 진단" assert resolved_links["https://example.test/services/aks/"] == "Azure Kubernetes Service" - assert resolved_links["https://example.test/guides/aks/new-topic/"] == "자동 게시 확인" - assert resolved_links["https://example.test/guides/aks/z-last-topic/"] == "세 번째 문서" + assert resolved_links["https://example.test/services/aks/new-topic/"] == "자동 게시 확인" + assert resolved_links["https://example.test/services/aks/z-last-topic/"] == "세 번째 문서" def test_topic_packages_drive_sidebar_navigation_redirects_and_bounded_topic_links( @@ -771,7 +801,7 @@ def write_search_index(root: Path, documents: list[dict[str, str]]) -> None: def page_search_entry(text: str) -> dict[str, str]: return { - "location": "guides/aks/network-diagnosis/", + "location": "services/aks/network-diagnosis/", "title": "AKS 네트워크 진단", "text": text, } @@ -857,7 +887,7 @@ def test_search_gate_accepts_visible_rendered_markdown( tmp_path: Path, body: str ) -> None: root = make_search_repository(tmp_path) - path = root / "docs" / "guides" / "aks" / "network-diagnosis" / "index.md" + path = root / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" front_matter = SEARCH_DOCUMENT.split("\n# ", 1)[0] path.write_text(front_matter + "\n\n" + body, encoding="utf-8") document = load_document(path, docs_dir=root / "docs") @@ -870,7 +900,7 @@ def test_search_gate_accepts_visible_rendered_markdown( title=document.metadata["title"], content=renderer.convert(document.body), toc=[], - url="guides/aks/network-diagnosis/", + url="services/aks/network-diagnosis/", ) index = SearchIndex() index.add_entry_from_context(page) diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py index 0ce6e49..3e4dad6 100644 --- a/tests/docs/test_topics.py +++ b/tests/docs/test_topics.py @@ -158,7 +158,7 @@ def test_build_topic_catalog_discovers_canonical_topic_documents_and_samples( ] == ["event-lab"] -def test_build_topic_catalog_does_not_leak_canonical_sample_ownership_to_legacy_aliases( +def test_build_topic_catalog_discovers_only_canonical_documents( tmp_path: Path, taxonomy: dict ) -> None: docs_dir = tmp_path / "docs" @@ -194,7 +194,13 @@ def test_build_topic_catalog_does_not_leak_canonical_sample_ownership_to_legacy_ assert [sample.slug for sample in catalog.samples_by_document[PurePosixPath("services/azure-monitor/agent-topic/index.md")]] == [ "entry-lab" ] - assert catalog.samples_by_document[PurePosixPath("guides/azure-monitor/agent-topic/index.md")] == () + assert all( + document.relative_path.parts[0] == "services" + for document in catalog.documents + ) + assert PurePosixPath( + "guides/azure-monitor/agent-topic/index.md" + ) not in catalog.by_document @pytest.mark.parametrize( @@ -211,10 +217,6 @@ def test_build_topic_catalog_does_not_leak_canonical_sample_ownership_to_legacy_ ("empty used_by", "used_by must be a non-empty list"), ("unknown used_by", "unknown document slug"), ("duplicate redirect", "redirect_from path is already used"), - ( - "canonical redirect collision", - "redirect_from collides with a canonical document", - ), ], ) def test_build_topic_catalog_rejects_invalid_topic_and_sample_layouts( @@ -328,20 +330,6 @@ def test_build_topic_catalog_rejects_invalid_topic_and_sample_layouts( topic_order=3, redirect_from=["guides/azure-monitor/shared/index.md"], ) - elif case == "canonical redirect collision": - write_document( - docs_dir, - "guides/azure-monitor/shared/index.md", - "Shared", - ) - write_document( - docs_dir, - "services/azure-monitor/agent-topic/results/index.md", - "Results", - topic_order=2, - redirect_from=["guides/azure-monitor/shared/index.md"], - ) - with pytest.raises(DocumentFormatError, match=re.escape(expected)): build_topic_catalog(docs_dir, taxonomy) @@ -364,50 +352,25 @@ def test_validate_document_rejects_canonical_service_paths_absent_from_taxonomy( assert "unknown service: unknown-service" in errors -def test_build_topic_catalog_preserves_all_legacy_paths_sharing_one_topic_key( +def test_build_topic_catalog_ignores_legacy_collection_documents( tmp_path: Path, taxonomy: dict ) -> None: docs_dir = tmp_path / "docs" - taxonomy["collections"]["lab"] = { - "path": "labs", - "statuses": ["verified"], - "required_fields": [ - "last_verified", - "review_cycle_days", - "estimated_time", - "cost", - "cleanup_required", - ], - } - guide = write_document( + write_document( docs_dir, "guides/azure-monitor/agent-topic/index.md", "Guide legacy topic", ) - lab = write_document( + write_document( docs_dir, "labs/azure-monitor/agent-topic/index.md", "Lab legacy topic", ) - lab.write_text( - guide.read_text(encoding="utf-8").replace("document_type: guide", "document_type: lab"), - encoding="utf-8", - ) catalog = build_topic_catalog(docs_dir, taxonomy) - guide_path = PurePosixPath("guides/azure-monitor/agent-topic/index.md") - lab_path = PurePosixPath("labs/azure-monitor/agent-topic/index.md") - topic = catalog.topics[("azure-monitor", "agent-topic")] - - assert guide.relative_to(docs_dir).as_posix() in { - document.relative_path.as_posix() for document in catalog.documents - } - assert lab.relative_to(docs_dir).as_posix() in { - document.relative_path.as_posix() for document in catalog.documents - } - assert catalog.by_document[guide_path] == topic - assert catalog.by_document[lab_path] == topic + assert catalog.documents == () + assert catalog.topics == {} def test_repository_connected_topics_have_canonical_layout() -> None: diff --git a/tests/docs/test_validators.py b/tests/docs/test_validators.py index 227bd9f..ada2148 100644 --- a/tests/docs/test_validators.py +++ b/tests/docs/test_validators.py @@ -95,7 +95,7 @@ def make_repository(tmp_path: Path) -> Path: ), encoding="utf-8", ) - page = tmp_path / "docs" / "guides" / "aks" / "network-diagnosis" + page = tmp_path / "docs" / "services" / "aks" / "network-diagnosis" (page / "images").mkdir(parents=True) (page / "index.md").write_text(VALID_GUIDE, encoding="utf-8") (page / "images" / "network.png").write_bytes(b"png") @@ -115,26 +115,52 @@ def test_validation_gates_accept_a_publishable_repository(tmp_path: Path) -> Non assert all(result.errors == [] for result in results) -def test_metadata_gate_checks_markdown_below_each_collection(tmp_path: Path) -> None: +def test_metadata_gate_rejects_non_bundle_markdown_below_services(tmp_path: Path) -> None: root = make_repository(tmp_path) - stray = root / "docs" / "guides" / "aks" / "network-diagnosis" / "topic.md" + stray = root / "docs" / "services" / "aks" / "network-diagnosis" / "topic.md" stray.write_text(VALID_GUIDE, encoding="utf-8") result = validate_metadata.validate_repository(root, today=date(2026, 9, 12)) assert result.document_count == 2 assert any( - "public documents must use ///index.md" in error + "public documents must use services//[/]/index.md" + in error and "topic.md" in error for error in result.errors ) +def test_validation_gates_discover_only_canonical_documents_and_reject_legacy_sources( + tmp_path: Path, +) -> None: + root = make_repository(tmp_path) + legacy = root / "docs" / "guides" / "aks" / "legacy-topic" / "index.md" + legacy.parent.mkdir(parents=True) + legacy.write_text(VALID_GUIDE, encoding="utf-8") + + metadata = validate_metadata.validate_repository(root, today=date(2026, 9, 12)) + sources = validate_sources.validate_repository(root, today=date(2026, 9, 12)) + links = validate_links.validate_repository(root) + + assert metadata.document_count == 2 + assert any( + "docs/guides/aks/legacy-topic/index.md: " + "public documents must use services//[/]/index.md" + in error + for error in metadata.errors + ) + assert sources.document_count == 1 + assert sources.errors == [] + assert links.document_count == 1 + assert links.errors == [] + + def test_source_and_link_gates_reject_an_unpublishable_page( tmp_path: Path, ) -> None: root = make_repository(tmp_path) - page = root / "docs" / "guides" / "aks" / "network-diagnosis" / "index.md" + page = root / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" text = ( VALID_GUIDE.replace("2026-09-12", "2026-09-13", 1) .replace( @@ -173,7 +199,7 @@ def test_reference_links_and_images_are_validated( tmp_path: Path, snippet: str, expected: str ) -> None: root = make_repository(tmp_path) - page = root / "docs" / "guides" / "aks" / "network-diagnosis" / "index.md" + page = root / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" page.write_text(VALID_GUIDE + "\n" + snippet + "\n", encoding="utf-8") result = validate_links.validate_repository(root) @@ -184,7 +210,7 @@ def test_reference_links_and_images_are_validated( def test_reference_links_accept_existing_targets(tmp_path: Path) -> None: root = make_repository(tmp_path) - page = root / "docs" / "guides" / "aks" / "network-diagnosis" / "index.md" + page = root / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" page.write_text( VALID_GUIDE + '\n![diagram][ASSET]\n\n[asset]: "Diagram"\n' @@ -210,7 +236,7 @@ def test_link_examples_are_ignored_without_hiding_following_links( tmp_path: Path, snippet: str ) -> None: root = make_repository(tmp_path) - page = root / "docs" / "guides" / "aks" / "network-diagnosis" / "index.md" + page = root / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" body = VALID_GUIDE + "\n" + snippet + "\n" page.write_text(body, encoding="utf-8") @@ -225,7 +251,7 @@ def test_link_examples_are_ignored_without_hiding_following_links( def test_link_gate_reports_invalid_front_matter(tmp_path: Path) -> None: root = make_repository(tmp_path) - page = root / "docs" / "guides" / "aks" / "network-diagnosis" / "index.md" + page = root / "docs" / "services" / "aks" / "network-diagnosis" / "index.md" page.write_text("# Missing front matter\n", encoding="utf-8") result = validate_links.validate_repository(root) @@ -239,7 +265,6 @@ def test_link_gate_validates_mixed_layout_pages_without_topic_samples( ) -> None: root = make_repository(tmp_path) topic = root / "docs" / "services" / "aks" / "network-diagnosis" - topic.mkdir(parents=True) (topic / "index.md").write_text( canonical_guide("Overview"), encoding="utf-8", @@ -259,7 +284,7 @@ def test_link_gate_validates_mixed_layout_pages_without_topic_samples( result = validate_links.validate_repository(root) - assert result.document_count == 3 + assert result.document_count == 2 assert result.errors == [ "docs/services/aks/network-diagnosis/setup/index.md: " "target does not exist: missing-child.md" @@ -269,7 +294,6 @@ def test_link_gate_validates_mixed_layout_pages_without_topic_samples( def test_metadata_gate_reports_topic_catalog_errors_once_per_path(tmp_path: Path) -> None: root = make_repository(tmp_path) topic = root / "docs" / "services" / "aks" / "network-diagnosis" - (topic / "index.md").parent.mkdir(parents=True) (topic / "index.md").write_text( canonical_guide("Overview"), encoding="utf-8", @@ -295,12 +319,11 @@ def test_metadata_gate_keeps_topic_validation_when_another_document_has_invalid_ tmp_path: Path, ) -> None: root = make_repository(tmp_path) - bad = root / "docs" / "guides" / "aks" / "broken" / "index.md" + bad = root / "docs" / "services" / "aks" / "broken" / "index.md" bad.parent.mkdir(parents=True) bad.write_text("---\ntitle: [broken\n---\n", encoding="utf-8") - topic = root / "docs" / "services" / "aks" / "network-diagnosis" - topic.mkdir(parents=True) + topic = root / "docs" / "services" / "aks" / "network-diagnosis" (topic / "index.md").write_text(canonical_guide("Overview"), encoding="utf-8") (topic / "setup").mkdir() (topic / "setup" / "index.md").write_text( From 2d017c135c09fc5995440726b3f5ffa231695e08 Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 18:05:00 +0900 Subject: [PATCH 11/12] fix(docs): preserve legacy indexes and sample ownership Merge redirect-derived compatibility sections without losing canonical child links or topic grouping. Validate orphaned and misplaced sample roots independently and reserve index for topic-entry ownership. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- docs/contributing/index.md | 9 ++ scripts/docs/generate_indexes.py | 60 +++++++--- scripts/docs/topics.py | 49 +++++--- tests/docs/test_indexes.py | 74 +++++++++++- tests/docs/test_topics.py | 195 +++++++++++++++++++++++++++++++ 5 files changed, 358 insertions(+), 29 deletions(-) diff --git a/docs/contributing/index.md b/docs/contributing/index.md index a916ad6..da02c8e 100644 --- a/docs/contributing/index.md +++ b/docs/contributing/index.md @@ -60,6 +60,8 @@ docs/services/// 루트 `index.md`가 topic entry입니다. entry에는 `topic_order`를 쓰지 않습니다. 직접 자식 문서에는 `topic_order: 1`, `topic_order: 2`처럼 1부터 시작하는 중복 없는 연속 번호를 지정합니다. 손자 문서 구조는 허용하지 않습니다. +`index`는 topic entry를 가리키는 예약어이므로 자식 폴더 slug로 사용할 수 +없습니다. ### topic 소유 sample @@ -89,6 +91,10 @@ used_by: - `used_by`는 sample을 표시할 문서 slug의 중복 없는 목록입니다. - topic entry는 `index`, 자식 문서는 폴더 slug로 지정합니다. - 각 sample에는 사용·검증·정리 방법을 설명하는 `README.md`가 필요합니다. +- sample이 있는 topic에는 entry `index.md`가 반드시 있어야 합니다. + 자식 문서 아래에 `samples/`를 두거나 topic의 `samples/` 바로 아래에 + 파일을 두지 않습니다. sample package 내부의 하위 `samples/` 폴더는 + 해당 package의 payload로 취급합니다. - sample 파일은 공개 안전성 검사를 받지만 MkDocs 사이트와 검색 색인에는 복사되지 않습니다. 문서에서는 생성되는 sample card 또는 GitHub 소스 링크로 연결합니다. @@ -114,6 +120,9 @@ redirect 경로는 `cases`, `guides`, `labs`, `research` 중 하나로 시작하 기존 4단계 `index.md` 경로여야 합니다. 해당 경로에 원본 Markdown을 다시 만들지 않습니다. 빌드가 redirect page를 생성하며 검색과 서비스/topic 탐색에서는 제외합니다. +이전 collection/service 색인 주소도 유지하며, 현재 소속과 이전 소속이 +겹치면 canonical 문서를 중복 없이 합칩니다. 이 호환 색인에서는 topic +카드와 함께 해당 자식 문서로 바로 가는 링크도 제공합니다. `document_type`은 collection 호환 색인과 수명주기 요구사항을 선택하지만 물리 경로를 결정하지 않습니다. `services/`, `tags/`, `articles/`와 diff --git a/scripts/docs/generate_indexes.py b/scripts/docs/generate_indexes.py index 1bd4fdc..c37547e 100644 --- a/scripts/docs/generate_indexes.py +++ b/scripts/docs/generate_indexes.py @@ -18,6 +18,7 @@ from scripts.docs.content import Document, load_taxonomy from scripts.docs.topics import ( + LEGACY_COLLECTIONS, Topic, TopicCatalog, build_topic_catalog, @@ -57,6 +58,7 @@ class TopicMatch: topic: Topic matching_count: int + matching_documents: tuple[Document, ...] def _escape(value: Any) -> str: @@ -278,12 +280,22 @@ def _topic_card( classes = f"{classes} {extra_classes}" tag_html = build_tag_links(index_path, _topic_tags(topic)[:3], taxonomy) + member_links = "" + if len(index_path.parts) == 3 and index_path.parts[0] in LEGACY_COLLECTIONS: + member_links = "".join( + f"- [{_md_label(member.metadata.get('title', ''))}]({_relative_link(index_path, member)})\n" + for member in match.matching_documents + if member.relative_path != entry.relative_path + ) + if member_links: + member_links = f"\n{member_links}" return ( f'
    \n\n' f'
    \n{meta_spans}\n
    \n\n' f'### [{_md_label(title)}]({link})\n\n' f'

    {_escape(description)}

    \n' f"{tag_html}" + f"{member_links}" f"\n
    \n" ) @@ -318,7 +330,14 @@ def _collapse_documents( matched_paths.setdefault(key, set()).add(document.relative_path) topic_matches = [ - TopicMatch(topic=catalog.topics[key], matching_count=len(paths)) + TopicMatch( + topic=catalog.topics[key], + matching_count=len(paths), + matching_documents=tuple( + member for member in catalog.topics[key].members + if member.relative_path in paths + ), + ) for key, paths in matched_paths.items() ] collapsed: list[Document | TopicMatch] = [*standalone.values(), *topic_matches] @@ -582,10 +601,14 @@ def build_index_pages( """Return virtual Markdown pages keyed by their docs-relative path.""" docs = sorted( _visible_documents(list(documents), catalog), - key=lambda item: str(item.metadata.get("title", "")).casefold(), + key=lambda item: ( + str(item.metadata.get("title", "")).casefold(), + item.relative_path.as_posix(), + ), ) pages: dict[PurePosixPath, str] = {} collections = taxonomy.get("collections", {}) + compatibility_documents: dict[PurePosixPath, dict[PurePosixPath, Document]] = defaultdict(dict) for document_type, config in collections.items(): matching = [doc for doc in docs if doc.metadata.get("document_type") == document_type] @@ -593,21 +616,30 @@ def build_index_pages( document_type, config, matching, taxonomy, catalog=catalog ) pages[index_path] = body - by_primary_service: dict[str, list[Document]] = defaultdict(list) for document in matching: service = _primary_service(document, catalog) if service: - by_primary_service[service].append(document) - for slug, service_docs in by_primary_service.items(): - # A real section index prevents Material from promoting the first bundle. - service_path, service_body = _build_service_page( - slug, - service_docs, - taxonomy, - page_path=PurePosixPath(config["path"]) / slug / "index.md", - catalog=catalog, - ) - pages[service_path] = service_body + service_path = PurePosixPath(config["path"]) / service / "index.md" + compatibility_documents[service_path][document.relative_path] = document + + if catalog is not None: + by_path = {document.relative_path: document for document in docs} + for redirect_path, canonical_path in sorted(catalog.redirects.items()): + document = by_path.get(canonical_path) + if document is not None: + service_path = redirect_path.parent.parent / "index.md" + compatibility_documents[service_path][canonical_path] = document + + for service_path, members in sorted(compatibility_documents.items()): + # Merge current and former section membership without duplicating documents. + service_path, service_body = _build_service_page( + service_path.parts[1], + [members[path] for path in sorted(members)], + taxonomy, + page_path=service_path, + catalog=catalog, + ) + pages[service_path] = service_body by_service: dict[str, list[Document]] = defaultdict(list) for document in docs: diff --git a/scripts/docs/topics.py b/scripts/docs/topics.py index a55f61b..86a8998 100644 --- a/scripts/docs/topics.py +++ b/scripts/docs/topics.py @@ -75,18 +75,38 @@ def _topic_key(relative_path: PurePosixPath) -> tuple[str, str]: return (relative_path.parts[1], relative_path.parts[2]) -def _sample_directory_errors(topic_root: Path, docs_root: Path) -> list[str]: - samples_root = topic_root / "samples" - if not samples_root.is_dir(): +def _sample_directory_errors( + docs_root: Path, document_paths: set[PurePosixPath] +) -> list[str]: + services_root = docs_root / "services" + if not services_root.is_dir(): return [] errors: list[str] = [] - for sample_dir in sorted(path for path in samples_root.iterdir() if path.is_dir()): - relative = PurePosixPath(sample_dir.relative_to(docs_root).as_posix()) - if not (sample_dir / "sample.yml").is_file(): - errors.append(f"{relative.as_posix()}: sample.yml is required") - if not (sample_dir / "README.md").is_file(): - errors.append(f"{relative.as_posix()}: README.md is required") + for samples_root in sorted(services_root.rglob("samples")): + if not samples_root.is_dir(): + continue + relative = PurePosixPath(samples_root.relative_to(docs_root).as_posix()) + # Only the first samples boundary defines ownership; later ones are payload. + if "samples" in relative.parts[:-1]: + continue + if len(relative.parts) != 4: + errors.append(f"{relative.as_posix()}: samples must be directly below the topic") + continue + entry_path = relative.parent / "index.md" + if entry_path not in document_paths: + errors.append(f"{entry_path.as_posix()}: topic entry document is missing") + for sample_dir in sorted(samples_root.iterdir()): + sample_path = PurePosixPath(sample_dir.relative_to(docs_root).as_posix()) + if not sample_dir.is_dir(): + errors.append( + f"{sample_path.as_posix()}: sample files must belong to a sample package" + ) + continue + if not (sample_dir / "sample.yml").is_file(): + errors.append(f"{sample_path.as_posix()}: sample.yml is required") + if not (sample_dir / "README.md").is_file(): + errors.append(f"{sample_path.as_posix()}: README.md is required") return errors @@ -206,7 +226,8 @@ def build_topic_catalog( key=lambda document: document.relative_path.as_posix(), ) ) - errors: list[str] = [] + canonical_paths = {document.relative_path for document in ordered_documents} + errors = _sample_directory_errors(root, canonical_paths) services_root = root / "services" if services_root.is_dir(): @@ -243,6 +264,11 @@ def build_topic_catalog( for member in members: if member.relative_path == entry_path: continue + if member.relative_path.parts[3] == "index": + errors.append( + f"{member.relative_path.as_posix()}: child slug 'index' is reserved for the topic entry" + ) + continue order = member.metadata.get("topic_order") if isinstance(order, bool) or not isinstance(order, int) or order <= 0: errors.append( @@ -270,8 +296,6 @@ def build_topic_catalog( ) topic_root = root / "services" / service / slug - errors.extend(_sample_directory_errors(topic_root, root)) - member_paths = [entry.relative_path, *[child.relative_path for child in ordered_children]] slug_to_document = { "index": entry.relative_path, @@ -309,7 +333,6 @@ def build_topic_catalog( sample for sample in ordered_samples if member.relative_path in sample.used_by ) - canonical_paths = {document.relative_path for document in ordered_documents} redirects: dict[PurePosixPath, PurePosixPath] = {} for document in ordered_documents: redirect_paths, redirect_errors = _normalize_redirects(document) diff --git a/tests/docs/test_indexes.py b/tests/docs/test_indexes.py index 0606123..c98faaf 100644 --- a/tests/docs/test_indexes.py +++ b/tests/docs/test_indexes.py @@ -16,7 +16,7 @@ import pytest import yaml -from scripts.docs.content import Document +from scripts.docs.content import Document, load_taxonomy from scripts.docs.generate_indexes import ( build_home_page, build_index_pages, @@ -46,11 +46,12 @@ def write_topic_document( topic_order: int | None = None, featured: bool = False, redirect_from: list[str] | None = None, + document_type: str = "guide", ) -> None: metadata: dict[str, object] = { "title": title, "description": f"{title} description", - "document_type": "guide", + "document_type": document_type, "services": ["azure-monitor"], "technologies": ["kubernetes"], "tags": tags, @@ -269,6 +270,75 @@ def test_collection_service_landing_contains_only_its_own_documents(taxonomy: di assert "First case" in pages[PurePosixPath("services/azure-monitor/index.md")] +def test_legacy_service_indexes_include_redirected_documents_deterministically( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + write_topic_document( + docs_dir, + "services/azure-monitor/current-topic/index.md", + "Current topic", + tags=[], + ) + write_topic_document( + docs_dir, + "services/azure-monitor/moved-topic/index.md", + "Moved topic", + tags=[], + redirect_from=[ + "research/azure-hdinsight/old-topic/index.md", + "research/azure-hdinsight/another-old-topic/index.md", + ], + ) + write_topic_document( + docs_dir, + "services/azure-monitor/moved-topic/benchmark/index.md", + "Benchmark", + tags=[], + topic_order=1, + document_type="research", + redirect_from=[ + "guides/azure-monitor/old-benchmark/index.md", + "research/azure-hdinsight/old-benchmark/index.md", + ], + ) + catalog = build_topic_catalog(docs_dir, taxonomy) + + pages = build_index_pages(catalog.documents, taxonomy, catalog=catalog) + + legacy = pages[PurePosixPath("research/azure-hdinsight/index.md")] + assert legacy.count("[Moved topic](../../services/azure-monitor/moved-topic/index.md)") == 1 + assert legacy.count("[Benchmark](../../services/azure-monitor/moved-topic/benchmark/index.md)") == 1 + assert "SERVICES / 2 DOCUMENTS" in legacy + assert "Current topic" not in legacy + current = pages[PurePosixPath("guides/azure-monitor/index.md")] + assert current.count("[Current topic](../../services/azure-monitor/current-topic/index.md)") == 1 + assert current.count("[Benchmark](../../services/azure-monitor/moved-topic/benchmark/index.md)") == 1 + assert "SERVICES / 3 DOCUMENTS" in current + assert current.count('class="dg-doc-card dg-topic-card') == 1 + assert legacy.count('class="dg-doc-card dg-topic-card') == 1 + assert "old-benchmark" not in current + assert pages == build_index_pages(reversed(catalog.documents), taxonomy, catalog=catalog) + assert pages[PurePosixPath("guides/index.md")].count('class="dg-doc-card dg-topic-card') == 1 + assert pages[PurePosixPath("services/azure-monitor/index.md")].count('class="dg-doc-card dg-topic-card') == 1 + + +def test_repository_legacy_hdinsight_index_links_to_canonical_benchmark() -> None: + taxonomy = load_taxonomy(ROOT / "docs-taxonomy.yml") + catalog = build_topic_catalog(ROOT / "docs", taxonomy) + + pages = build_index_pages(catalog.documents, taxonomy, catalog=catalog) + + assert PurePosixPath("research/azure-hdinsight/index.md") in pages + legacy = pages[PurePosixPath("research/azure-hdinsight/index.md")] + assert "../../services/azure-monitor/hdinsight-kafka-monitoring/catch-up-benchmark/index.md" in legacy + assert "kafka-catchup-sku-fetch-benchmark/index.md" not in legacy + for redirect, canonical in catalog.redirects.items(): + service_index = redirect.parent.parent / "index.md" + assert service_index in pages + assert f"../../{canonical.as_posix()}" in pages[service_index] + + def test_collection_page_reflects_real_counts_and_wrapper_classes(taxonomy: dict) -> None: documents = [ doc( diff --git a/tests/docs/test_topics.py b/tests/docs/test_topics.py index 3e4dad6..82a5bde 100644 --- a/tests/docs/test_topics.py +++ b/tests/docs/test_topics.py @@ -203,6 +203,201 @@ def test_build_topic_catalog_discovers_only_canonical_documents( ) not in catalog.by_document +@pytest.mark.parametrize("unrelated_topic", [False, True]) +def test_build_topic_catalog_rejects_samples_without_topic_entry( + tmp_path: Path, taxonomy: dict, unrelated_topic: bool +) -> None: + docs_dir = tmp_path / "docs" + if unrelated_topic: + write_document( + docs_dir, + "services/azure-monitor/other-topic/index.md", + "Other topic", + ) + write_sample( + docs_dir, + "services/azure-monitor/orphan-topic/samples/event-lab", + { + "title": "Event lab", + "description": "No topic owns this sample.", + "kind": "runnable", + "used_by": ["index"], + }, + ) + + with pytest.raises( + DocumentFormatError, + match=re.escape("services/azure-monitor/orphan-topic/index.md: topic entry document is missing"), + ): + build_topic_catalog(docs_dir, taxonomy) + + +@pytest.mark.parametrize("child_document", [False, True]) +def test_build_topic_catalog_rejects_samples_beneath_child( + tmp_path: Path, taxonomy: dict, child_document: bool +) -> None: + docs_dir = tmp_path / "docs" + write_document(docs_dir, "services/azure-monitor/agent-topic/index.md", "Agent topic") + if child_document: + write_document( + docs_dir, + "services/azure-monitor/agent-topic/setup/index.md", + "Setup", + topic_order=1, + ) + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/setup/samples/event-lab", + { + "title": "Event lab", + "description": "Misplaced sample.", + "kind": "runnable", + "used_by": ["index"], + }, + ) + + with pytest.raises( + DocumentFormatError, + match=re.escape("services/azure-monitor/agent-topic/setup/samples: samples must be directly below the topic"), + ): + build_topic_catalog(docs_dir, taxonomy) + + +def test_build_topic_catalog_rejects_loose_files_in_topic_samples( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + write_document(docs_dir, "services/azure-monitor/agent-topic/index.md", "Agent topic") + samples_root = docs_dir / "services/azure-monitor/agent-topic/samples" + samples_root.mkdir() + (samples_root / "loose.py").write_text("print('unowned')\n", encoding="utf-8") + + with pytest.raises( + DocumentFormatError, + match=re.escape("services/azure-monitor/agent-topic/samples/loose.py: sample files must belong to a sample package"), + ): + build_topic_catalog(docs_dir, taxonomy) + + +@pytest.mark.parametrize("sample_slug", ["event-lab", "samples"]) +def test_build_topic_catalog_allows_samples_directories_inside_sample_payload( + tmp_path: Path, taxonomy: dict, sample_slug: str +) -> None: + docs_dir = tmp_path / "docs" + entry_path = "services/azure-monitor/agent-topic/index.md" + write_document(docs_dir, entry_path, "Agent topic") + sample_dir = write_sample( + docs_dir, + f"services/azure-monitor/agent-topic/samples/{sample_slug}", + { + "title": "Event lab", + "description": "Contains nested example payloads.", + "kind": "runnable", + "used_by": ["index"], + }, + ) + for relative in ("samples/demo", "src/samples/demo", "samples/demo/samples/inner"): + payload = sample_dir / relative + payload.mkdir(parents=True, exist_ok=True) + (payload / "index.md").write_text("# Payload, not a public document\n", encoding="utf-8") + (payload / "sample.yml").write_text("not a sample manifest\n", encoding="utf-8") + (sample_dir / "samples/loose.py").write_text("print('owned payload')\n", encoding="utf-8") + + catalog = build_topic_catalog(docs_dir, taxonomy) + + assert len(catalog.documents) == 1 + assert [sample.slug for sample in catalog.samples_by_document[PurePosixPath(entry_path)]] == [ + sample_slug + ] + + +@pytest.mark.parametrize( + ("invalid_field", "invalid_value", "expected"), + [ + ("sample.yml", None, "sample.yml is required"), + ("README.md", None, "README.md is required"), + ("kind", "unsupported", "kind must be runnable or artifact"), + ("used_by", ["missing"], "unknown document slug: missing"), + ("used_by", [], "used_by must be a non-empty list"), + ("used_by", ["index", "index"], "used_by values must be unique"), + ], +) +def test_build_topic_catalog_validates_every_immediate_sample_package( + tmp_path: Path, taxonomy: dict, invalid_field: str, invalid_value: object, expected: str +) -> None: + docs_dir = tmp_path / "docs" + write_document(docs_dir, "services/azure-monitor/agent-topic/index.md", "Agent topic") + manifest = { + "title": "Event lab", + "description": "Owned by the topic.", + "kind": "artifact", + "used_by": ["index"], + } + write_sample(docs_dir, "services/azure-monitor/agent-topic/samples/a-valid", manifest) + invalid_sample = write_sample( + docs_dir, "services/azure-monitor/agent-topic/samples/z-invalid", manifest + ) + if invalid_field in {"sample.yml", "README.md"}: + (invalid_sample / invalid_field).unlink() + else: + (invalid_sample / "sample.yml").write_text( + yaml.safe_dump({**manifest, invalid_field: invalid_value}), encoding="utf-8" + ) + + with pytest.raises(DocumentFormatError, match=re.escape(f"samples/z-invalid: {expected}")): + build_topic_catalog(docs_dir, taxonomy) + + +def test_build_topic_catalog_rejects_reserved_index_child_slug( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + write_document(docs_dir, "services/azure-monitor/agent-topic/index.md", "Agent topic") + write_document( + docs_dir, + "services/azure-monitor/agent-topic/index/index.md", + "Reserved child", + topic_order=1, + ) + + with pytest.raises( + DocumentFormatError, + match=re.escape("services/azure-monitor/agent-topic/index/index.md: child slug 'index' is reserved for the topic entry"), + ): + build_topic_catalog(docs_dir, taxonomy) + + +def test_reserved_child_cannot_redirect_entry_sample_ownership( + tmp_path: Path, taxonomy: dict +) -> None: + docs_dir = tmp_path / "docs" + entry_path = PurePosixPath("services/azure-monitor/agent-topic/index.md") + write_document(docs_dir, entry_path.as_posix(), "Agent topic") + write_sample( + docs_dir, + "services/azure-monitor/agent-topic/samples/entry-lab", + { + "title": "Entry lab", + "description": "Owned only by the topic entry.", + "kind": "runnable", + "used_by": ["index"], + }, + ) + catalog = build_topic_catalog(docs_dir, taxonomy) + assert catalog.samples_by_document[entry_path][0].used_by == (entry_path,) + write_document( + docs_dir, + "services/azure-monitor/agent-topic/index/index.md", + "Cannot take entry ownership", + topic_order=1, + ) + + with pytest.raises( + DocumentFormatError, match="child slug 'index' is reserved for the topic entry" + ): + build_topic_catalog(docs_dir, taxonomy) + + @pytest.mark.parametrize( ("case", "expected"), [ From 5a529e18840940292c099eb5af4f8a5287423b0f Mon Sep 17 00:00:00 2001 From: hellices Date: Sun, 13 Sep 2026 18:14:20 +0900 Subject: [PATCH 12/12] fix(docs): keep topic child links above card overlays Reuse tag-link stacking so compatibility child links remain independent pointer and keyboard targets without disabling stretched entry links. Couple generated anchors to the CSS stacking contract in a regression test. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- docs/assets/stylesheets/extra.css | 3 +- scripts/docs/generate_indexes.py | 2 +- tests/docs/test_indexes.py | 56 +++++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 2 deletions(-) diff --git a/docs/assets/stylesheets/extra.css b/docs/assets/stylesheets/extra.css index b776951..9217680 100644 --- a/docs/assets/stylesheets/extra.css +++ b/docs/assets/stylesheets/extra.css @@ -583,7 +583,8 @@ body { background: var(--dg-accent-soft); } -.dg-doc-card .dg-tag { +.dg-doc-card .dg-tag, +.dg-doc-card .dg-topic-child-link { position: relative; z-index: 1; } diff --git a/scripts/docs/generate_indexes.py b/scripts/docs/generate_indexes.py index c37547e..36268de 100644 --- a/scripts/docs/generate_indexes.py +++ b/scripts/docs/generate_indexes.py @@ -283,7 +283,7 @@ def _topic_card( member_links = "" if len(index_path.parts) == 3 and index_path.parts[0] in LEGACY_COLLECTIONS: member_links = "".join( - f"- [{_md_label(member.metadata.get('title', ''))}]({_relative_link(index_path, member)})\n" + f"- [{_md_label(member.metadata.get('title', ''))}]({_relative_link(index_path, member)}){{ .dg-topic-child-link }}\n" for member in match.matching_documents if member.relative_path != entry.relative_path ) diff --git a/tests/docs/test_indexes.py b/tests/docs/test_indexes.py index c98faaf..e0c2f63 100644 --- a/tests/docs/test_indexes.py +++ b/tests/docs/test_indexes.py @@ -9,7 +9,9 @@ from datetime import date from html import escape +from html.parser import HTMLParser from pathlib import Path, PurePosixPath +import re from markdown import Markdown from mkdocs.config import load_config @@ -678,6 +680,60 @@ def test_topic_cards_collapse_multi_document_topics_across_generated_indexes( assert "[Topic title](services/azure-monitor/new-topic/index.md)" in home +def test_compatibility_child_links_are_stacked_above_the_card_overlay( + tmp_path: Path, taxonomy: dict, markdown_renderer: Markdown +) -> None: + class Anchors(HTMLParser): + def __init__(self) -> None: + super().__init__() + self.links: list[dict[str, str | None]] = [] + + def handle_starttag(self, tag: str, attrs: list[tuple[str, str | None]]) -> None: + if tag == "a": + self.links.append(dict(attrs)) + + documents, catalog = build_topic_fixture(tmp_path, taxonomy) + pages = build_index_pages(documents, taxonomy, catalog=catalog) + parser = Anchors() + parser.feed(render_body(markdown_renderer, pages[PurePosixPath("guides/azure-monitor/index.md")])) + children = [ + link for link in parser.links + if link.get("href") in { + "../../services/azure-monitor/new-topic/setup/index.md", + "../../services/azure-monitor/new-topic/results/index.md", + } + ] + assert len(children) == 2 + child_class = "dg-topic-child-link" + for child in children: + assert child_class in (child.get("class") or "").split() + assert child.get("tabindex", "0") == "0" + + css = (ROOT / "docs/assets/stylesheets/extra.css").read_text(encoding="utf-8") + rules = re.findall(r"([^{}]+)\{([^{}]+)\}", css) + stacking = next( + ( + body for selectors, body in rules + if f".dg-doc-card .{child_class}" in { + selector.strip() for selector in selectors.split(",") + } + ), + "", + ) + assert re.search(r"position:\s*relative\s*;", stacking) + assert re.search(r"z-index:\s*1\s*;", stacking) + overlay = next(body for selectors, body in rules if "a::after" in selectors) + assert re.search(r"position:\s*absolute\s*;", overlay) + assert re.search(r"inset:\s*0\s*;", overlay) + overlay_level = re.search(r"z-index:\s*([^;]+);", overlay) + assert ( + overlay_level is None + or overlay_level.group(1).strip() == "auto" + or int(overlay_level.group(1)) < 1 + ) + assert ".md-typeset a:focus-visible" in css + + def test_redirect_pages_point_to_canonical_topic_entries_and_stay_out_of_indexes( tmp_path: Path, taxonomy: dict ) -> None:

    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 NDrzc}KYaG;e*n1(K>+{& diff --git a/samples/azure-load-testing/source-material/images/08-compare-result.png b/samples/azure-load-testing/source-material/images/08-compare-result.png deleted file mode 100644 index a7bb92daf100d3ea640538fb977f9323b51b245f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 342578 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 ap)^ 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

    n@dI2e;5^>4cXQBNRG|Lm08%v#I{y&L?RD`B4Z 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%0Ao&*b5%@C0S8L{WGBujE1w$H-c7zNAY+ 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 diff --git a/samples/azure-load-testing/source-material/images/05-server-side-metrics.png b/samples/azure-load-testing/source-material/images/05-server-side-metrics.png deleted file mode 100644 index 062b03c49c85f6a48c0795f45d3947c0cfe6bcc6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 206213 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 =Ouk^OZ1HCZS%rrMMw_~v4%8IFC6Y9Y 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 diff --git a/samples/azure-load-testing/source-material/images/06-engine-health.png b/samples/azure-load-testing/source-material/images/06-engine-health.png deleted file mode 100644 index 5fbfa35c286aa6ed259b36b47eb877bef8d61bed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 397153 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 z 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