Commit Graph

  • a2799fa224 fix(handler): re-fetch records to capture DB-generated values main v1.1.11 Hein 2026-06-12 16:28:51 +02:00
  • 1419542650 fix(handler): re-fetch records to capture DB-generated changes Hein 2026-06-12 13:37:07 +02:00
  • c120b49529 fix(router): prevent HTML escaping in JSON responses fix(sql_helpers): avoid prefix extraction in subqueries Hein 2026-06-08 15:13:58 +02:00
  • 66348dac97 test(handler): add tests for valid nested request verbs v1.1.10 Hein 2026-06-08 09:06:29 +02:00
  • a87cd18b1b fix(handler): validate nested request structure for relations * added checks for valid _request values in single and multiple relations * introduced isValidNestedRequest function to encapsulate validation logic fix(crud): expand operation handling for nested CUD * added "add" to insert operations and "modify" to update operations * included "remove" in delete operations Hein 2026-06-08 09:02:29 +02:00
  • 29449c93d5 fix(test): add tests for asymmetric join column handling Hein 2026-06-07 19:13:59 +02:00
  • 3b6e5c75be fix(handler): update foreign key field resolution logic * Adjust foreign key field name selection for has-many/has-one relationships * Improve logging to clarify foreign key and child field usage v1.1.9 Hein 2026-06-07 14:20:55 +02:00
  • 549ccb8468 fix(handler): fetch updated records after transaction commits * Update selection queries to use model columns * Ensure updated records are fetched and returned in responses v1.1.8 Hein 2026-06-05 11:12:04 +02:00
  • 1af9c76337 fix(handler): fetch updated record after transaction commits v1.1.7 v1.1.6 Hein 2026-06-04 18:23:18 +02:00
  • 938a2ef3d9 fix(staticweb): add fallback for extensionless file paths v1.1.5 Hein 2026-05-27 18:41:43 +02:00
  • 69cc3e2839 fix(db): update Returning method to accept multiple columns v1.1.4 Hein 2026-05-27 14:11:20 +02:00
  • 4018af0636 fix(validation): enhance filter logic for column validation * adjust handling of "all" filter to consider filtered columns fix(function_api): improve variable substitution in SQL queries * add safeSubstituteVar for context-aware value sanitization v1.1.3 Hein 2026-05-27 12:17:31 +02:00
  • c4e79d6950 fix(validation): use strings.EqualFold for case-insensitive comparison Hein 2026-05-27 12:07:08 +02:00
  • 982a0e62ac fix(validation): add Columns method to retrieve valid column names Hein 2026-05-27 12:06:46 +02:00
  • 5d459c95a7 fix(headers): reorder import statements for clarity Hein 2026-05-27 11:28:39 +02:00
  • e9f7726e43 fix(headers): sort combined parameters before processing Hein 2026-05-27 11:28:22 +02:00
  • 3d2251317a fix(headers): remove unused utf8 validation in DecodeParam v1.1.2 Hein 2026-05-26 10:31:34 +02:00
  • 1ce0ab1ab4 fix(validation): improve preload column validation logic v1.1.1 Hein 2026-05-21 20:18:01 +02:00
  • 1f9b230f7f fix(validation): improve preload column validation logic * Use related model's validator for filtering preload columns * Ensure valid columns are checked against the correct validator Hein 2026-05-21 20:16:53 +02:00
  • c42c6b28e3 fix(errortracking): update error context handling in Sentry * Replace event.Extra with event.Contexts["extra"] for error and message captures. * Consolidate extra context handling in CapturePanic method. v1.1.0 v1.0.114 v1.0.113 Hein 2026-05-21 14:03:01 +02:00
  • 57e7503389 feat(staticweb): enhance fallback logic for extensionless paths * Added support for serving index.html for extensionless paths * Updated isStaticAsset to exclude paths without extensions from static asset checks Hein 2026-05-21 13:30:39 +02:00
  • 0308644075 feat(auth): add authenticate callback for fallback logic * Implement SetAuthenticateCallback in authenticators * Update Authenticate methods to use callback on failure v1.0.112 Hein 2026-05-21 11:27:51 +02:00
  • e5984f5205 feat(security): add cookie support for login and logout methods * Implement LoginWithCookie and LogoutWithCookie in stubAuthenticator, mockAuth, mockSecurityProvider, and MockAuthenticator * Update tests to use cookie-based authentication v1.0.111 Hein 2026-05-21 09:51:30 +02:00
  • 76909ae869 feat(security): add cookie support for login and logout methods * Implement LoginWithCookie and LogoutWithCookie in CompositeSecurityProvider * Update Authenticator interface to include cookie methods * Add cookie support in HeaderAuthenticator and JWTAuthenticator v1.0.110 Hein 2026-05-21 09:48:46 +02:00
  • c90c2984ac feat(security): add cookie session support to DatabaseAuthenticator * Introduce enableCookieSession option for session management * Implement LoginWithCookie and LogoutWithCookie methods * Update Authenticate method to support session token from cookie v1.0.109 Hein 2026-05-21 09:14:50 +02:00
  • 1ab4ae33e7 feat(security): implement ChainAuthenticator for sequential authentication v1.0.108 Hein 2026-05-21 08:35:39 +02:00
  • 905457964c fix(restheadspec): remove redundant column selection in query Hein 2026-05-21 08:34:09 +02:00
  • c42d09238f fix: better error detail for failed sql v1.0.107 Hein 2026-05-20 13:06:26 +02:00
  • 0647a88aba fix(restheadspec): qualify primary key and sort columns with table alias Hein 2026-05-20 12:41:16 +02:00
  • 3d2e11eeed fix(restheadspec): always respond 200 OK regardless of result count in sendFormattedResponse v1.0.106 Hein 2026-05-19 09:46:25 +02:00
  • 4493bfa40f feat(reflection): add IsEmptyValue helper; guard CUD ops against missing PK v1.0.105 Hein 2026-05-19 09:14:19 +02:00
  • b157379ff8 fix(restheadspec): return 200 OK with empty body instead of 204 on zero results v1.0.104 Hein 2026-05-19 08:56:11 +02:00
  • 52752d9c8b fix(bun): adjust field alignment in BunSelectQuery struct v1.0.103 Hein 2026-05-18 17:12:32 +02:00
  • baca5ad29e fix(bun): add relation alias handling for separate-query preloads * implement preloadRelationAlias to rewrite WHERE conditions * update Where method to handle relation alias in queries Hein 2026-05-18 17:12:21 +02:00
  • 53ab22ce02 fix(nestedCUD): handle error in processChildRelations gracefully v1.0.102 Hein 2026-05-18 16:14:24 +02:00
  • 09a3dc92b9 fix(restheadspec): normalize empty results to objects instead of arrays v1.0.101 Hein 2026-05-18 14:37:46 +02:00
  • 6590cd789a fix(nestedCUD): re-select rows after insert/update for accurate state * Ensure result.Data reflects DB-generated defaults after insert. * Update result.Data with current DB state after update. v1.0.100 Hein 2026-05-18 13:10:13 +02:00
  • 4244e838b1 fix(reflection): enhance GetForeignKeyColumn logic for self-referential models * Add support for self-referential models in GetForeignKeyColumn * Update comments for clarity on foreign key resolution strategies * Introduce selfRefItem struct for testing self-referential behavior v1.0.99 Hein 2026-05-18 13:03:07 +02:00
  • c42fa11c1a fix(reflection): update GetForeignKeyColumn to return multiple columns * Change return type to []string for composite keys * Adjust related logic in injectForeignKeys method * Update tests to validate new behavior for composite foreign keys v1.0.98 Hein 2026-05-18 12:39:06 +02:00
  • 85bb0f7874 fix(funcspec): update meta variable replacement in SQL query v1.0.97 Hein 2026-05-18 12:13:06 +02:00
  • cd65946191 fix(database): add Scan method to insert query interfaces * Implement Scan method for BunInsertQuery, GormInsertQuery, and PgSQLInsertQuery * Update mock implementations to support Scan method * Introduce GetForeignKeyColumn utility for foreign key resolution * Add tests for GetForeignKeyColumn functionality Hein 2026-05-18 12:04:50 +02:00
  • cb416d49c4 fix(headers): handle decoding errors in header values * return original value if decoding fails * decode base64 strings when appropriate v1.0.96 Hein 2026-05-15 16:59:06 +02:00
  • cb921f2c5e fix(websocketspec): add transaction access to HookContext v1.0.95 Hein 2026-05-15 14:59:34 +02:00
  • 1ebe0d7ac3 fix(funcspec): refine filter application logic for SQL queries * update filter checks to only consider SELECT list * add test for function parameters not matching filters v1.0.94 Hein 2026-05-15 14:28:12 +02:00
  • ae9e06c98b fix(sql_helpers): strip empty RHS conditions from SQL strings * Add regex patterns to identify and remove empty comparisons * Implement tests for stripping empty RHS conditions fix(handler): prevent duplicate JOIN aliases from preload * Skip custom SQL JOINs if alias already provided by preload * Split multiple JOIN clauses for individual alias handling v1.0.93 Hein 2026-05-15 13:35:24 +02:00
  • 2ae4d07544 fix(funcspec): remove AllowQueryParamFilters and related logic * Simplify SqlQueryOptions by removing AllowQueryParamFilters * Update mergeQueryParams to avoid applying filters for JSON arguments * Add tests for sqlStripStringLiterals and query param handling v1.0.92 Hein 2026-05-15 09:25:55 +02:00
  • 49639b6c19 fix(funcspec): add support for query param filters * Introduced AllowQueryParamFilters option in SqlQueryOptions * Implemented applyQueryParamFilters method to handle field filters v1.0.91 Hein 2026-05-15 09:07:21 +02:00
  • 8733176cba fix(funcspec): enhance quote detection for parameters v1.0.90 Hein 2026-05-15 08:26:59 +02:00
  • bce27f7ed2 fix: 🐛 Fixed array to slice array resolution on reflection GetRelationType v1.0.89 Hein 2026-05-11 14:24:25 +02:00
  • 987a2a7faf fix(db): convert slices to PostgreSQL array literals in queries v1.0.88 Hein 2026-05-07 14:33:35 +02:00
  • 157788b73b fix(todo): document issue with GormResult.LastInsertId() not returning correct ID warkanum 2026-05-05 09:52:31 +02:00
  • fb051b5577 fix(spectypes): correct quoting logic in formatPostgresStringArray v1.0.87 Hein 2026-04-30 15:38:21 +02:00
  • cc9c4337fd feat(spectypes): add PostgreSQL array types and parsing functions Hein 2026-04-30 15:37:33 +02:00
  • 0aaeff63a2 fix(db): guard against non-existent relations in preload Hein 2026-04-20 17:15:33 +02:00
  • 325769be4e feat(reflection): add support for nested struct mapping v1.0.86 Hein 2026-04-16 13:45:46 +02:00
  • f79a400772 feat(security): add self-service password reset functionality * Implement password reset request and completion procedures * Update database schema for password reset tokens * Add new request and response types for password reset v1.0.85 warkanum 2026-04-15 21:46:33 +02:00
  • aef1f96c10 fix(db): cast columns to text for LIKE/ILIKE queries v1.0.84 Hein 2026-04-13 14:05:17 +02:00
  • 354ed2a8dc feat(db): add fallback metric entity handling for unknown targets * implement fallbackMetricEntityFromQuery for query sanitization * add tests for fallback metric entity and sanitization logic v1.0.83 Hein 2026-04-10 16:00:22 +02:00
  • dfb63c3328 refactor(db): remove metrics enabling methods from adapters v1.0.82 Hein 2026-04-10 14:13:15 +02:00
  • e8d0ab28c3 feat(db): add query metrics tracking for database operations Hein 2026-04-10 13:51:46 +02:00
  • 4fc25c60ae fix(db): correct connection pool assignment in GORM adapter v1.0.81 Hein 2026-04-10 11:20:44 +02:00
  • 16a960d973 feat(db): add reconnect logic for database adapters * Implement reconnect functionality in GormAdapter and other database adapters. * Introduce a DBFactory to handle reconnections. * Update health check logic to skip reconnects for transient failures. * Add tests for reconnect behavior in DatabaseAuthenticator. Hein 2026-04-10 11:18:39 +02:00
  • 2afee9d238 fix(db): handle database reconnection in transactions v1.0.80 v1.0.79 Hein 2026-04-10 08:42:41 +02:00
  • 1e89124c97 Merge pull request #18 from bitechdev/feature-auth-mcp v1.0.78 Hein Puth (Warkanum) 2026-04-09 16:18:18 +02:00
  • ca0545e144 fix(security): address validation review comments - mutex safety and issuer normalization copilot-swe-agent[bot] 2026-04-09 14:07:45 +00:00
  • 850ad2b2ab fix(security): address all OAuth2 PR review issues copilot-swe-agent[bot] 2026-04-09 14:04:53 +00:00
  • 2a2e33da0c Merge branch 'main' of https://github.com/bitechdev/ResolveSpec into feature-auth-mcp Hein 2026-04-09 15:52:26 +02:00
  • 17808a8121 Merge pull request #19 from bitechdev/feature-keystore Hein Puth (Warkanum) 2026-04-09 15:50:36 +02:00
  • 134ff85c59 Merge branch 'main' of https://github.com/bitechdev/ResolveSpec into feature-keystore Hein 2026-04-09 15:47:54 +02:00
  • bacddc58a6 style(recursive_crud): remove unnecessary blank line Hein 2026-04-09 15:37:13 +02:00
  • f1ad83d966 feat(reflection): add JSON to DB column name mapping functions * Implement BuildJSONToDBColumnMap for translating JSON keys to DB column names * Enhance GetColumnName to extract column names with priority * Update filterValidFields to utilize new mapping for improved data handling * Fix TestToSnakeCase expected values for consistency Hein 2026-04-09 15:36:52 +02:00
  • 79a3912f93 fix(db): improve database connection handling and reconnection logic Hein 2026-04-09 09:19:28 +02:00
  • 6502b55797 feat(security): implement OAuth2 authorization server with database support warkanum 2026-04-07 22:56:05 +02:00
  • aa095d6bfd fix(tests): replace panic with log.Fatal for better error handling v1.0.77 warkanum 2026-04-07 20:38:22 +02:00
  • ea5bb38ee4 feat(handler): update to use static base path for SSE server v1.0.76 warkanum 2026-04-07 20:03:43 +02:00
  • c2e2c9b873 feat(transport): add streamable HTTP transport for MCP v1.0.75 warkanum 2026-04-07 19:52:38 +02:00
  • 4adf94fe37 feat(go.mod): add mcp-go dependency for enhanced functionality v1.0.74 warkanum 2026-04-07 19:09:51 +02:00
  • a9bf08f58b feat(security): implement keystore for user authentication keys * Add ConfigKeyStore for in-memory key management * Introduce DatabaseKeyStore for PostgreSQL-backed key storage * Create KeyStoreAuthenticator for API key validation * Define SQL procedures for key management in PostgreSQL * Document keystore functionality and usage in KEYSTORE.md Hein 2026-04-07 17:09:17 +02:00
  • 405a04a192 feat(security): integrate security hooks for access control * Add security hooks for per-entity operation rules and row/column-level security. * Implement annotation tool for storing and retrieving freeform annotations. * Enhance handler to support model registration with access rules. Hein 2026-04-07 15:53:12 +02:00
  • c1b16d363a feat(db): add DB method to sqlConnection and mongoConnection Hein 2026-04-01 15:34:09 +02:00
  • 568df8c6d6 feat(security): add configurable SQL procedure names v1.0.73 Hein 2026-03-31 14:25:59 +02:00
  • aa362c77da fix(cursor): trim parentheses from sort column names v1.0.72 v1.0.71 Hein 2026-03-27 15:07:10 +02:00
  • 1641eaf278 feat(resolvemcp): enhance handler with configuration support * Introduce Config struct for BaseURL and BasePath settings * Update handler creation functions to accept configuration * Modify SSEServer to use dynamic base URL detection * Adjust route setup functions to utilize BasePath from config v1.0.70 Hein 2026-03-27 13:56:03 +02:00
  • 200a03c225 feat(resolvemcp): add SSE server and bunrouter setup functions * Introduce SSEServer method for creating an SSE server bound to the handler. * Add SetupBunRouterRoutes function to mount MCP HTTP/SSE endpoints on bunrouter. * Update README with usage examples for new features. v1.0.69 Hein 2026-03-27 13:28:03 +02:00
  • 7ef9cf39d3 style(tools): simplify string formatting in descriptions v1.0.68 Hein 2026-03-27 13:10:50 +02:00
  • 7f6410f665 feat(resolvemcp): add support for join-column sorting in cursor pagination * Enhance getCursorFilter to accept join clauses for sorting * Update resolveColumn to handle joined columns * Modify tests to validate new join functionality Hein 2026-03-27 13:10:42 +02:00
  • 835bbb0727 style(hooks): reorder fields in HookContext for consistency Hein 2026-03-27 12:57:30 +02:00
  • 047a1cc187 feat(resolvemcp): add hook system for model operations * Implement hooks for CRUD operations: before/after handle, read, create, update, delete. * Introduce HookContext and HookRegistry for managing hooks. * Allow registration and execution of multiple hooks per operation. Hein 2026-03-27 12:57:08 +02:00
  • 7a498edab7 fix(headers): enhance relation name resolution logic * Allow resolution for both regular headers and X-Files. * Introduce join-key-aware resolution for disambiguation. * Add new function to handle multiple fields pointing to the same type. v1.0.67 Hein 2026-03-25 12:09:03 +02:00
  • f10bb0827e fix(sql_helpers): ensure case-insensitive matching for allowed prefixes v1.0.66 v1.0.65 Hein 2026-03-25 10:57:42 +02:00
  • 22a4ab345a feat(security): add session cookie management functions * Introduce SessionCookieOptions for configurable session cookies * Implement SetSessionCookie, GetSessionCookie, and ClearSessionCookie functions * Enhance cookie handling in DatabaseAuthenticator v1.0.64 Hein 2026-03-24 17:11:53 +02:00
  • e289c2ed8f fix(handler): restore JoinAliases for proper WHERE sanitization v1.0.63 Hein 2026-03-24 12:00:02 +02:00
  • 0d50bcfee6 fix(provider): enhance file opening logic with alternate path. Handling broken cases to be compatible with Bitech clients * Implemented alternate path handling for file retrieval * Improved error messaging for file not found scenarios v1.0.62 Hein 2026-03-24 09:02:17 +02:00
  • 4df626ea71 chore(license): update project notice and clarify licensing terms warkanum 2026-03-23 20:32:09 +02:00
  • 7dd630dec2 fix(handler): set default sort to primary key if none provided v1.0.61 Hein 2026-03-11 14:37:04 +02:00
  • 613bf22cbd fix(cursor): use full schema-qualified table name in filters v1.0.60 Hein 2026-03-11 14:25:44 +02:00
  • d1ae4fe64e refactor(handler): unify filter operator handling for consistency v1.0.59 warkanum 2026-03-01 13:21:38 +02:00
  • 254102bfac refactor(auth): simplify handler type assertions for middleware v1.0.58 warkanum 2026-03-01 12:08:36 +02:00
  • 6c27419dbc refactor(auth): enhance request handling with middleware-enriched context warkanum 2026-03-01 12:06:43 +02:00
  • 377336caf4 feat(sql): implement IN condition handling with parameterized queries v1.0.57 warkanum 2026-03-01 09:52:32 +02:00