From e154e128aafc062302b849446b44eccf1612ad16 Mon Sep 17 00:00:00 2001 From: Sin-Kang Date: Sat, 23 May 2026 23:17:41 +0900 Subject: [PATCH] docs(profile): fix api-log badge artifact ID + add versioning policy note MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Maven Central badge target \`kr.devslab/api-log\` doesn't exist as a published artifact — api-log ships as four coordinates (\`api-log-core\`, \`-jpa\`, \`-r2dbc\`, \`-mybatis\`) since the 0.6.0 multi-module split. The badge has been rendering as "maven-central: not found" since the badges PR (#6). Repoint to \`kr.devslab/api-log-core\` — the core module every backend artifact depends on — so the badge actually displays the active version. All 4 api-log artifacts ship at the same version line, so api-log-core's badge is representative of the whole family. Now correctly displays "maven-central: v3.0.0" after the recent renumber. Also adds the same versioning-policy sentence already on ssrf-guard and easy-paging, for consistency. --- profile/README.ko.md | 2 +- profile/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/profile/README.ko.md b/profile/README.ko.md index cc9d4f9..a403aaa 100644 --- a/profile/README.ko.md +++ b/profile/README.ko.md @@ -52,7 +52,7 @@ ai Anthropic · OpenAI · LangChain · pgvector - 🛡️ **[ssrf-guard](https://github.com/devslab-kr/ssrf-guard)**  [![Maven Central](https://img.shields.io/maven-central/v/kr.devslab/ssrf-guard)](https://central.sonatype.com/artifact/kr.devslab/ssrf-guard) — JVM용 SSRF 방어. 화이트리스트 + IP 우회 차단 (10진수·16진수·8진수·IPv6 난독화) + 리다이렉트 재검증을 9개 HTTP 클라이언트 모듈 (RestClient · RestTemplate · WebClient · Feign · OkHttp · JDK HttpClient · Apache HttpClient 5)에 동시 적용. **`-springai` / `-langchain4j` 모듈은 LLM 에이전트의 툴 URL 검증** — Spring AI `ToolCallback`, LangChain4j `ToolExecutor` 기반 에이전트의 `fetch_url` 류 새 SSRF 표면 대응. GraalVM native-image 힌트와 WebClient용 reactor-netty DNS-time 가드도 포함. - 🪶 **[easy-paging-spring-boot-starter](https://github.com/devslab-kr/easy-paging-spring-boot-starter)**  [![Spring Boot 4](https://img.shields.io/maven-central/v/kr.devslab/easy-paging-spring-boot-starter?label=Spring%20Boot%204&versionPrefix=4)](https://central.sonatype.com/artifact/kr.devslab/easy-paging-spring-boot-starter) · [![SB3 maintenance](https://img.shields.io/maven-central/v/kr.devslab/easy-paging-spring-boot-starter?label=SB3%20maintenance&versionPrefix=3)](https://central.sonatype.com/artifact/kr.devslab/easy-paging-spring-boot-starter) — Spring Boot + MyBatis용 어노테이션 기반 페이지네이션. Offset (`@AutoPaginate`)과 cursor/keyset (`@KeysetPaginate`)을 하나의 스타터로. WebFlux + R2DBC용 자매 아티팩트 (`-reactive`)는 wire에서 동일한 JSON 봉투. 라이브러리 메이저가 Spring Boot 메이저와 일치 ([버전 정책](https://github.com/devslab-kr/.github/blob/main/.github/VERSIONING.md#한국어) 참조): `4.x` 라인은 **Spring Boot 4 / Spring Framework 7 / Jackson 3** 대상이며, `3.x` [maintenance 브랜치](https://github.com/devslab-kr/easy-paging-spring-boot-starter/tree/3.x)가 SB 3.3–3.5에 대한 보안 패치를 계속 제공합니다. -- 📜 **[api-log](https://github.com/devslab-kr/api-log)**  [![Maven Central](https://img.shields.io/maven-central/v/kr.devslab/api-log)](https://central.sonatype.com/artifact/kr.devslab/api-log) — Spring Boot용 이벤트 드리븐 API 로깅, PostgreSQL JSONB 저장. 멀티모듈 구성: `api-log-core` + 영속성 드라이버 (`-jpa`, `-r2dbc`, `-mybatis`). +- 📜 **[api-log](https://github.com/devslab-kr/api-log)**  [![Maven Central](https://img.shields.io/maven-central/v/kr.devslab/api-log-core)](https://central.sonatype.com/artifact/kr.devslab/api-log-core) — Spring Boot용 이벤트 드리븐 API 로깅, PostgreSQL JSONB 저장. 멀티모듈 구성: `api-log-core` + 영속성 드라이버 (`-jpa`, `-r2dbc`, `-mybatis`) — 모두 같은 버전 라인. 라이브러리 메이저가 타겟 Spring Boot 메이저와 일치 ([버전 정책](https://github.com/devslab-kr/.github/blob/main/.github/VERSIONING.md#한국어) 참조). - 🧪 **[devslab-examples](https://github.com/devslab-kr/devslab-examples)** — 위 라이브러리 모든 모듈의 실행 가능한 Spring Boot 데모 14개 (easy-paging SB4 4개 + easy-paging SB3 maintenance 4개 + ssrf-guard 6개 — HTTP 클라이언트와 LLM 프레임워크 전반), 이중언어 README. Clone, `./gradlew bootRun`, curl. 스모크 테스트 포함. ``` diff --git a/profile/README.md b/profile/README.md index 756131a..89a7f87 100644 --- a/profile/README.md +++ b/profile/README.md @@ -53,7 +53,7 @@ Battle-tested in our own SaaS first, then shared on Maven Central under `kr.devs - 🛡️ **[ssrf-guard](https://github.com/devslab-kr/ssrf-guard)**  [![Maven Central](https://img.shields.io/maven-central/v/kr.devslab/ssrf-guard)](https://central.sonatype.com/artifact/kr.devslab/ssrf-guard) — SSRF defense for the JVM. Whitelist + IP-bypass hardening (decimal/hex/octal/IPv6 obfuscation) + redirect re-validation across 9 HTTP-client modules (RestClient · RestTemplate · WebClient · Feign · OkHttp · JDK HttpClient · Apache HttpClient 5). Includes **`-springai` and `-langchain4j` for LLM-agent tool URL validation** — the new SSRF surface for `fetch_url`-style tools in Spring AI `ToolCallback` and LangChain4j `ToolExecutor` agents. Plus GraalVM native-image hints and reactor-netty DNS-time guards for WebClient. - 🪶 **[easy-paging-spring-boot-starter](https://github.com/devslab-kr/easy-paging-spring-boot-starter)**  [![Spring Boot 4](https://img.shields.io/maven-central/v/kr.devslab/easy-paging-spring-boot-starter?label=Spring%20Boot%204&versionPrefix=4)](https://central.sonatype.com/artifact/kr.devslab/easy-paging-spring-boot-starter) · [![SB3 maintenance](https://img.shields.io/maven-central/v/kr.devslab/easy-paging-spring-boot-starter?label=SB3%20maintenance&versionPrefix=3)](https://central.sonatype.com/artifact/kr.devslab/easy-paging-spring-boot-starter) — Annotation-driven pagination for Spring Boot + MyBatis. Offset (`@AutoPaginate`) and cursor/keyset (`@KeysetPaginate`) in one starter. Reactive companion artifact (`-reactive`) for WebFlux + R2DBC, identical JSON envelope on the wire. Library major matches Spring Boot major (see [versioning policy](https://github.com/devslab-kr/.github/blob/main/.github/VERSIONING.md)): `4.x` targets **Spring Boot 4 / Spring Framework 7 / Jackson 3**; the `3.x` [maintenance branch](https://github.com/devslab-kr/easy-paging-spring-boot-starter/tree/3.x) keeps SB 3.3–3.5 supported with security patches. -- 📜 **[api-log](https://github.com/devslab-kr/api-log)**  [![Maven Central](https://img.shields.io/maven-central/v/kr.devslab/api-log)](https://central.sonatype.com/artifact/kr.devslab/api-log) — Event-driven API logging for Spring Boot, PostgreSQL JSONB storage. Multi-module: `api-log-core` plus persistence drivers (`-jpa`, `-r2dbc`, `-mybatis`). +- 📜 **[api-log](https://github.com/devslab-kr/api-log)**  [![Maven Central](https://img.shields.io/maven-central/v/kr.devslab/api-log-core)](https://central.sonatype.com/artifact/kr.devslab/api-log-core) — Event-driven API logging for Spring Boot, PostgreSQL JSONB storage. Multi-module: `api-log-core` plus persistence drivers (`-jpa`, `-r2dbc`, `-mybatis`) — all on the same version line. Library major matches the Spring Boot major it targets (see [versioning policy](https://github.com/devslab-kr/.github/blob/main/.github/VERSIONING.md)). - 🧪 **[devslab-examples](https://github.com/devslab-kr/devslab-examples)** — Runnable Spring Boot demos for every library above (14 demos: 4 easy-paging SB4 + 4 easy-paging SB3 maintenance + 6 ssrf-guard across HTTP clients and LLM frameworks; bilingual READMEs). Clone, `./gradlew bootRun`, curl. Smoke tests included. ```