Commit graph

2149 commits

Author SHA1 Message Date
lerian-studio-midaz-push-bot[bot]
0728e9de9c
Merge pull request #314 from LerianStudio/release/update-changelog-20260327150514
chore(release): Update CHANGELOGs [skip ci]
2026-03-27 15:05:20 +00:00
lerian-studio
67c505dd16
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-27 15:05:14 +00:00
Jefferson Rodrigues
ed4d387601
docs: add canonical Config struct fields to prevent agent from inventing names
X-Lerian-Ref: 0x1
2026-03-27 12:03:55 -03:00
Jefferson Rodrigues
47daeac607
Merge pull request #313 from LerianStudio/fix/mt-compliance-checks
docs: add tenant ID compliance check and deprecated function detection
2026-03-27 11:28:08 -03:00
Jefferson Rodrigues
03e8bfbf9a
docs: add tenant ID context compliance check and fix A-numbering
New A2 check: ContextWithTenantID/GetTenantIDContext must exist, old SetTenantIDInContext/GetTenantIDFromContext are NON-COMPLIANT. Fixed duplicate A9, renumbered to A1-A11.

X-Lerian-Ref: 0x1
2026-03-27 11:22:11 -03:00
Jefferson Rodrigues
200a88b421
docs: add NON-COMPLIANT detection for deprecated multi-tenant functions
Skills now explicitly check for old function names (WithMongoManager, GetMongoFromContext, GetKeyFromContext, etc.) and mark as NON-COMPLIANT. Both dev-multi-tenant and production-readiness-audit updated.

X-Lerian-Ref: 0x1
2026-03-27 10:45:59 -03:00
Jefferson Rodrigues
d2bb94a8b0
Merge pull request #312 from LerianStudio/feat/update-multi-tenant-standards
docs: update multi-tenant standards for event-driven architecture (lib-commons v4.5.0)
2026-03-27 03:03:04 -03:00
Jefferson Rodrigues
dfaed1352a
docs: remove all deprecated env/function references and fix canonical count to 13
Remove Removed ENV vars section. Add MULTI_TENANT_TIMEOUT to examples and Config struct. Fix 12→13 canonical count in dev-multi-tenant. Replace cfg.MultiTenantEnvironment with cfg.EnvName.

X-Lerian-Ref: 0x1
2026-03-27 03:02:35 -03:00
Jefferson Rodrigues
dc48c2323c
docs: rename to MULTI_TENANT_CONNECTIONS_CHECK_INTERVAL_SEC and WithConnectionsCheckInterval
X-Lerian-Ref: 0x1
2026-03-27 02:47:30 -03:00
Jefferson Rodrigues
755702571a
docs: rename MULTI_TENANT_SETTINGS_CHECK_INTERVAL_SEC to MULTI_TENANT_CONNECTIONS_INTERVAL_SEC
X-Lerian-Ref: 0x1
2026-03-27 02:39:33 -03:00
Jefferson Rodrigues
609625058f
docs: fix env count to 13, remove MULTI_TENANT_ENVIRONMENT from active references
X-Lerian-Ref: 0x1
2026-03-27 02:34:52 -03:00
Jefferson Rodrigues
c533fd5c9a
docs: add MULTI_TENANT_TIMEOUT env var to standards
X-Lerian-Ref: 0x1
2026-03-27 02:30:14 -03:00
Jefferson Rodrigues
3a1fc170f9
docs: clean all old multi-tenant references and update to lib-commons v4.5.0
Remove SettingsWatcher section, DualPoolMiddleware examples, tmwatcher references. Update lib-commons version to v4.5.0 (final). pgManager handles settings revalidation internally via WithSettingsCheckInterval.

X-Lerian-Ref: 0x1
2026-03-27 02:18:45 -03:00
Jefferson Rodrigues
997d48d28b
Merge pull request #311 from LerianStudio/feat/update-multi-tenant-standards
docs(multi-tenant): update standards for event-driven architecture
2026-03-27 02:06:43 -03:00
Jefferson Rodrigues
28c64d522f
docs: adopt final merged context API (ContextWithPG/GetPGContext variadic)
Replace all remaining old function names. Final API: ContextWithPG, GetPGContext, ContextWithMB, GetMBContext, GetKeyContext. All variadic with optional module.

X-Lerian-Ref: 0x1
2026-03-27 01:42:19 -03:00
Jefferson Rodrigues
1c45a840ac
docs: rename context getters to standardized Get{X}Context pattern
Align all references with lib-commons v4.5.0-beta.16 naming: GetPG→GetPGContext, GetMB→GetMBContext, GetPGConnectionFromContext→GetPGConnectionContext, GetMongoFromContext→GetMongoContext, GetTenantID→GetTenantIDContext.

X-Lerian-Ref: 0x1
2026-03-27 01:12:50 -03:00
Jefferson Rodrigues
2a37afb64e
docs(multi-tenant): fix tmcore.GetPG error handling and align import alias
Replace invalid if-err-nil checks after tmcore.GetPG (which returns *gorm.DB, not (db, error)) with proper nil-guard pattern. Update import alias from core to tmcore in dev-implementation and dev-multi-tenant to match the canonical standard in multi-tenant.md. Add getDB repository helper pattern in dev-multi-tenant representative diff. Add nil-check guard in using-lib-commons consumer example.

X-Lerian-Ref: 0x1
2026-03-27 00:32:14 -03:00
Jefferson Rodrigues
3b1c3e52ad
docs(multi-tenant): add cache invalidation, StopConsumer, and consumer lifecycle patterns
Update OnTenantAdded/OnTenantRemoved with mandatory ordering. Add SetOnTenantLoaded wiring. Add StopConsumer API reference. Add cache invalidation section. Update common pitfalls.

X-Lerian-Ref: 0x1
2026-03-27 00:20:05 -03:00
lerian-studio-midaz-push-bot[bot]
cbb973e3c6
Merge pull request #310 from LerianStudio/release/update-changelog-20260325033155
chore(release): Update CHANGELOGs [skip ci]
2026-03-25 03:32:01 +00:00
lerian-studio
e9d6d1ee16
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-25 03:31:55 +00:00
Jefferson Rodrigues
6fb5d2955a
Merge pull request #309 from LerianStudio/fix/watcher-postgres-only-clarification
docs(standards): clarify SettingsWatcher is PostgreSQL only
2026-03-25 00:30:49 -03:00
Jefferson Rodrigues
bf75cfeeb8
docs(standards): clarify SettingsWatcher is PostgreSQL only throughout
Update TOC, section heading, canonical model, responsibility split
table, and checklist to explicitly state PostgreSQL only. MongoDB
excluded because Go driver cannot resize pools after creation.

X-Lerian-Ref: 0x1
2026-03-24 23:55:16 -03:00
lerian-studio-midaz-push-bot[bot]
775617c0d3
Merge pull request #308 from LerianStudio/release/update-changelog-20260325023927
chore(release): Update CHANGELOGs [skip ci]
2026-03-25 02:39:34 +00:00
lerian-studio
7722613645
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-25 02:39:27 +00:00
lerian-studio
0c212bcf2b
chore: bump versions [skip-version-bump]
Automated version bumps:

  - ring-dev-team: 1.43.0 → 1.43.1 (patch)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-03-25 02:38:22 +00:00
Jefferson Rodrigues
3ba82910e7
Merge pull request #307 from LerianStudio/docs/settings-watcher-standard
docs(standards): make SettingsWatcher mandatory for multi-tenant services
2026-03-24 23:38:06 -03:00
Jefferson Rodrigues
470f28ea2d
docs(standards): use @latest for lib-commons version reference
X-Lerian-Ref: 0x1
2026-03-24 23:37:57 -03:00
Jefferson Rodrigues
c2cc02d596
fix: address review findings — scope watcher to PostgreSQL, fix v3→v4 ref, add CACHE_TTL to gates
- SettingsWatcher requirement now conditional on PostgreSQL (MongoDB exempt)
- Fix lib-commons version reference v3→v4 in SKILL.md
- Add MULTI_TENANT_CACHE_TTL_SEC to verification grep and .env.example gate

X-Lerian-Ref: 0x1
2026-03-24 23:35:14 -03:00
Jefferson Rodrigues
914c1a6e0b
fix: resolve merge conflicts with main
Keep SettingsWatcher changes: 10 canonical env vars (was 8),
CacheTTL and SettingsCheckInterval as required, updated defaults
(CacheTTL=120, SettingsCheckInterval=30).

X-Lerian-Ref: 0x1
2026-03-24 23:33:33 -03:00
Jefferson Rodrigues
05eecf7c9c
docs(standards): remove MongoDB from SettingsWatcher (PostgreSQL only)
MongoDB driver does not support pool resize after mongo.Connect(),
so SettingsWatcher only applies to PostgreSQL. Add exclusion notes
in standards and skill definition.

X-Lerian-Ref: 0x1
2026-03-24 23:26:22 -03:00
Jefferson Rodrigues
a7aa12bb65
docs(standards): make SettingsWatcher mandatory for multi-tenant services
- Add SettingsWatcher (MANDATORY) section to multi-tenant.md
- Mark MULTI_TENANT_CACHE_TTL_SEC and SETTINGS_CHECK_INTERVAL_SEC as required
- Add audit check A10 for SettingsWatcher compliance in dev-multi-tenant skill
- Update coverage table and agent section counts
- Include anti-rationalization table and bootstrap code pattern

X-Lerian-Ref: 0x1
2026-03-24 23:22:18 -03:00
lerian-studio-midaz-push-bot[bot]
ad9b63c84c
Merge pull request #306 from LerianStudio/release/update-changelog-20260324221550
chore(release): Update CHANGELOGs [skip ci]
2026-03-24 22:15:57 +00:00
lerian-studio
5aba7b5e8b
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-24 22:15:50 +00:00
Fred Amaral
0e8d9973e6
docs(migration): add strict standards to systemplane skill guide
This commit enhances the systemplane migration guide with stricter
standards, compliance checks, and mandatory policies to enforce
consistency and robustness across products.

The key changes include:
- Add a new file structure compliance audit (S9) to prevent monolithic
 `systemplane.go` files and enforce a modular structure.
- Mandate test validation of configuration keys against a canonical
 catalog to ensure consistent naming and tiering across services.
- Introduce a mandatory authorizer enforcement policy to prohibit no-op
 authorizers and require real permission checking.
- Add appendices for canonical key naming, environment variable
 conventions, and standard unit suffixes (`_ms`, `_bytes`) to serve as a
 central reference.
- Add a decision tree for `KindSetting` vs. `KindConfig` to guide
 developers on correct key classification.
2026-03-24 19:14:47 -03:00
lerian-studio-midaz-push-bot[bot]
8eb2c2bc38
Merge pull request #305 from LerianStudio/release/update-changelog-20260324052048
chore(release): Update CHANGELOGs [skip ci]
2026-03-24 05:20:54 +00:00
lerian-studio
222fa6b512
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-24 05:20:48 +00:00
Jefferson Rodrigues
940d05e00d
Merge pull request #304 from LerianStudio/feat/bidirectional-m2m-credentials
docs(m2m): update standards and skill for bidirectional M2M
2026-03-24 02:19:45 -03:00
Jefferson Rodrigues
85ee62099d
docs(m2m): update standards and skill for bidirectional M2M support
Replace all plugin-only M2M semantics with targetServices-based logic
across multi-tenant.md and dev-multi-tenant SKILL.md.

- multi-tenant.md: update title, "When This Applies" table, narrative,
  and env var descriptions
- SKILL.md: replace Gate 0 auto-detection with explicit user question
  (has_m2m + target_services), update Gate 5.5 skip condition and label,
  generalize description and all gate references

Ref: LerianStudio/tenant-manager#116
X-Lerian-Ref: 0x1
2026-03-24 02:19:25 -03:00
lerian-studio
3c81bc8783
chore: bump versions [skip-version-bump]
Automated version bumps:

  - ring-dev-team: 1.42.3 → 1.43.0 (minor)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-03-24 03:46:13 +00:00
Jefferson Rodrigues
20595cfe3a
Merge pull request #303 from LerianStudio/feat/279-m2m-distributed-cache
feat(standards): add distributed M2M credential cache architecture
2026-03-24 00:45:59 -03:00
Jefferson Rodrigues
a3536185b5
fix(standards): remove M2M_CREDENTIAL_CACHE_TTL_SEC — leave cache TTL to each service
X-Lerian-Ref: 0x1
2026-03-24 00:44:07 -03:00
Jefferson Rodrigues
867cf26f08
docs(standards): add MULTI_TENANT_SETTINGS_CHECK_INTERVAL_SEC and MULTI_TENANT_CACHE_TTL_SEC env vars
X-Lerian-Ref: 0x1
2026-03-24 00:41:11 -03:00
Jefferson Rodrigues
f0ec526c74
refactor(standards): use lib-commons redis.Connection for M2M credential cache
Replace custom RedisCredentialCache interface with lib-commons redis.Connection and valkey.GetKeyFromContext for Redis operations, matching the existing codebase patterns for Redis access and tenant key prefixing.

X-Lerian-Ref: 0x1
2026-03-24 00:41:11 -03:00
Jefferson Rodrigues
95afdb7cc6
fix(standards): simplify M2M cache config — keep only M2M_CREDENTIAL_CACHE_TTL_SEC
Remove M2M_CREDENTIAL_L1_CACHE_TTL_SEC and M2M_CREDENTIAL_CACHE_MODE env vars. L1 TTL is a fixed 30s constant, cache mode is auto-detected from Redis availability.

X-Lerian-Ref: 0x1
2026-03-24 00:41:10 -03:00
Jefferson Rodrigues
0c5e411954
fix(standards): address PR review — extract key helper, clarify docs, log errors
Extract duplicate Redis key construction into m2mRedisKey helper, fix L3 comment to say authoritative source, add logging notes at swallowed Redis errors, clarify key prefixing docs, remove incorrect token caching reference, and document RedisCredentialCache interface requirement.

X-Lerian-Ref: 0x1
2026-03-24 00:41:10 -03:00
Jefferson Rodrigues
1a550a65b6
feat(standards): add distributed M2M credential cache architecture (#279)
Add two-level cache (L1 in-memory + L2 Redis/Valkey) to M2M credential provider with cache-bust on 401 for cross-pod consistency. Make M2M metrics mandatory (6 counters/histograms) and update dev-multi-tenant skill Gate 5.5 and Gate 7 accordingly.

X-Lerian-Ref: 0x1
2026-03-24 00:41:10 -03:00
lerian-studio-midaz-push-bot[bot]
871a046b5b
Merge pull request #302 from LerianStudio/release/update-changelog-20260323165150
chore(release): Update CHANGELOGs [skip ci]
2026-03-23 16:51:58 +00:00
lerian-studio
f9a28f4ca4
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-23 16:51:50 +00:00
lerian-studio
1a807f74ea
chore: bump versions [skip-version-bump]
Automated version bumps:

  - ring-default: 1.20.0 → 1.20.1 (patch)
  - ring-dev-team: 1.42.2 → 1.42.3 (patch)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-03-23 16:50:46 +00:00
Jefferson Rodrigues
c2613f767b
Merge pull request #300 from LerianStudio/fix/278-json-camelcase
fix(standards): use camelCase for JSON field naming in code examples
2026-03-23 13:50:31 -03:00