apiVersion: capsule.dev/v0.1 kind: Capsule name: ext-http-request-logger-dev version: 0.1.0 type: template purpose: summary: 'Provides the development and testing environment for the `ext-http-request-logger` capsule, including linting configurations, test suites, and test fixtures. This capsule serves as a starting point for setting up a local development workflow. ' owns: - Test files for verifying the logger's functionality. - ESLint configurations for code quality. - Test fixtures (e.g., SSL certificates for HTTPS tests). - Git ignore rules for common development artifacts. does_not_own: - The core `morgan` library logic. - Continuous integration pipeline definitions. interfaces: requires: - kind: library name: morgan from_capsule: ext-http-request-logger description: The core HTTP request logger library being tested. - kind: library name: mocha description: Test framework. - kind: library name: supertest description: HTTP assertions for Node.js. - kind: library name: split description: Split a stream into lines. - kind: library name: eslint description: JavaScript linter. - kind: library name: nyc description: Istanbul code coverage tool. dependencies: capsules: - name: ext-http-request-logger version: '>=0.1.0' agent: summary_for_ai: 'This capsule provides the testing and linting setup for `ext-http-request-logger`. An AI agent working here should focus on writing new tests for new features, improving test coverage, updating linting rules, or maintaining test fixtures. Ensure tests are robust and cover edge cases, and that linting rules enforce good code practices without being overly restrictive. The `NO_DEPRECATION` environment variable is set for tests. ' avoid: - Modifying the core `morgan` logic in `index.js`. - Adding production-specific code or dependencies. verification: invariants: - All tests must pass for the `ext-http-request-logger` capsule. - Linting rules must be consistently applied across the codebase. x-reuse: notes: 'The ESLint configurations (`.eslintrc.yml`, `test/.eslintrc.yml`, `.eslintignore`) are tailored to the original project''s coding style and dependencies. Consumers should review and adapt these to their own linting standards. The `test/fixtures` contain specific SSL certificates used for testing HTTPS, which are unlikely to be directly reusable and serve as examples. The `package.json` (which is in `ext-http-request-logger`) lists `devDependencies` and `scripts` that are part of this development setup and would need to be integrated or modified. ' x-reconstruct: install: install.json